diff --git a/src/main/java/org/onap/clamp/clds/config/ClampProperties.java b/src/main/java/org/onap/clamp/clds/config/ClampProperties.java
index 8eae906..0b5c951 100644
--- a/src/main/java/org/onap/clamp/clds/config/ClampProperties.java
+++ b/src/main/java/org/onap/clamp/clds/config/ClampProperties.java
@@ -23,14 +23,10 @@
 
 package org.onap.clamp.clds.config;
 
-import com.google.gson.JsonElement;
-
 import java.io.IOException;
 import java.net.URL;
 import java.nio.charset.StandardCharsets;
-
 import org.apache.commons.io.IOUtils;
-import org.onap.clamp.clds.util.JsonUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.ApplicationContext;
 import org.springframework.core.env.Environment;
@@ -75,38 +71,6 @@
     }
 
     /**
-     * Return json as objects that can be updated. The value obtained from the
-     * clds-reference file will be used as a filename.
-     *
-     * @param key The key that will be used to access the clds-reference file
-     * @return A jsonNode
-     * @throws IOException In case of issues with the JSON parser
-     */
-    public JsonElement getJsonTemplate(String key) throws IOException {
-        String fileReference = getStringValue(key);
-        return (fileReference != null)
-                ? JsonUtils.GSON.fromJson(getFileContentFromPath(fileReference), JsonElement.class)
-                : null;
-    }
-
-    /**
-     * Return json as objects that can be updated. First try with combo key (key1 +
-     * "." + key2), otherwise default to just key1. The value obtained from the
-     * clds-reference file will be used as a filename.
-     *
-     * @param key1 The first key
-     * @param key2 The second key after a dot
-     * @return A JsonNode
-     * @throws IOException In case of issues with the JSON parser
-     */
-    public JsonElement getJsonTemplate(String key1, String key2) throws IOException {
-        String fileReference = getStringValue(key1, key2);
-        return (fileReference != null)
-                ? JsonUtils.GSON.fromJson(getFileContentFromPath(fileReference), JsonElement.class)
-                : null;
-    }
-
-    /**
      * Return the file content. The value obtained from the clds-reference file will
      * be used as a filename.
      *
diff --git a/src/main/java/org/onap/clamp/clds/config/LegacyOperationalPolicy.java b/src/main/java/org/onap/clamp/clds/config/LegacyOperationalPolicy.java
new file mode 100644
index 0000000..7d4b5f8
--- /dev/null
+++ b/src/main/java/org/onap/clamp/clds/config/LegacyOperationalPolicy.java
@@ -0,0 +1,48 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP CLAMP
+ * ================================================================================
+ * Copyright (C) 2020 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.clds.config;
+
+import javax.annotation.PostConstruct;
+import org.onap.clamp.loop.template.PolicyModel;
+import org.onap.clamp.loop.template.PolicyModelsService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Profile;
+
+@Configuration
+@Profile("legacy-operational-policy")
+public class LegacyOperationalPolicy {
+
+    @Autowired
+    PolicyModelsService policyModelService;
+
+    public static final String OPERATIONAL_POLICY_LEGACY = "onap.policies.operational.legacy";
+
+    @PostConstruct
+    public void init() {
+        policyModelService.saveOrUpdatePolicyModel(new PolicyModel(OPERATIONAL_POLICY_LEGACY, "", "1.0.0",
+                "OperationalPolicyLegacy"));
+    }
+}
+
diff --git a/src/main/java/org/onap/clamp/loop/Loop.java b/src/main/java/org/onap/clamp/loop/Loop.java
index 122b4c7..f185460 100644
--- a/src/main/java/org/onap/clamp/loop/Loop.java
+++ b/src/main/java/org/onap/clamp/loop/Loop.java
@@ -48,6 +48,7 @@
 import javax.persistence.OneToMany;
 import javax.persistence.Table;
 import javax.persistence.Transient;
+import org.apache.commons.lang3.RandomStringUtils;
 import org.hibernate.annotations.SortNatural;
 import org.hibernate.annotations.Type;
 import org.hibernate.annotations.TypeDef;
@@ -62,6 +63,7 @@
 import org.onap.clamp.loop.service.Service;
 import org.onap.clamp.loop.template.LoopElementModel;
 import org.onap.clamp.loop.template.LoopTemplate;
+import org.onap.clamp.policy.Policy;
 import org.onap.clamp.policy.microservice.MicroServicePolicy;
 import org.onap.clamp.policy.operational.OperationalPolicy;
 
@@ -168,12 +170,18 @@
         this.setModelService(loopTemplate.getModelService());
         loopTemplate.getLoopElementModelsUsed().forEach(element -> {
             if (LoopElementModel.MICRO_SERVICE_TYPE.equals(element.getLoopElementModel().getLoopElementType())) {
-                this.addMicroServicePolicy(new MicroServicePolicy(name,
+                this.addMicroServicePolicy(new MicroServicePolicy(Policy.generatePolicyName("MICROSERVICE_",
+                        loopTemplate.getModelService().getName(),loopTemplate.getModelService().getVersion(),
+                        RandomStringUtils.randomAlphanumeric(3),RandomStringUtils.randomAlphanumeric(3)),
                         element.getLoopElementModel().getPolicyModels().first(), false, element.getLoopElementModel()));
             } else if (LoopElementModel.OPERATIONAL_POLICY_TYPE
                     .equals(element.getLoopElementModel().getLoopElementType())) {
-                this.addOperationalPolicy(new OperationalPolicy(name, null, new JsonObject(),
-                        element.getLoopElementModel().getPolicyModels().first(), element.getLoopElementModel(), null, null));
+                this.addOperationalPolicy(new OperationalPolicy(Policy.generatePolicyName("OPERATIONAL_",
+                        loopTemplate.getModelService().getName(),loopTemplate.getModelService().getVersion(),
+                        RandomStringUtils.randomAlphanumeric(3),RandomStringUtils.randomAlphanumeric(3)), null,
+                        new JsonObject(),
+                        element.getLoopElementModel().getPolicyModels().first(), element.getLoopElementModel(),
+                        null,null));
             }
         });
     }
diff --git a/src/main/java/org/onap/clamp/loop/LoopController.java b/src/main/java/org/onap/clamp/loop/LoopController.java
index 59b97e1..1a67455 100644
--- a/src/main/java/org/onap/clamp/loop/LoopController.java
+++ b/src/main/java/org/onap/clamp/loop/LoopController.java
@@ -38,11 +38,9 @@
 public class LoopController {
 
     private final LoopService loopService;
-    private static final Type OPERATIONAL_POLICY_TYPE = new TypeToken<List<OperationalPolicy>>() {
-    }.getType();
+    private static final Type OPERATIONAL_POLICY_TYPE = new TypeToken<List<OperationalPolicy>>() {}.getType();
 
-    private static final Type MICROSERVICE_POLICY_TYPE = new TypeToken<List<MicroServicePolicy>>() {
-    }.getType();
+    private static final Type MICROSERVICE_POLICY_TYPE = new TypeToken<List<MicroServicePolicy>>() {}.getType();
 
     @Autowired
     public LoopController(LoopService loopService) {
diff --git a/src/main/java/org/onap/clamp/policy/Policy.java b/src/main/java/org/onap/clamp/policy/Policy.java
index 47dee1a..ebeb84f 100644
--- a/src/main/java/org/onap/clamp/policy/Policy.java
+++ b/src/main/java/org/onap/clamp/policy/Policy.java
@@ -23,28 +23,40 @@
 
 package org.onap.clamp.policy;
 
+import com.att.eelf.configuration.EELFLogger;
+import com.att.eelf.configuration.EELFManager;
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonArray;
 import com.google.gson.JsonObject;
 import com.google.gson.annotations.Expose;
 
 import java.io.UnsupportedEncodingException;
-
+import java.util.Map;
 import javax.persistence.Column;
 import javax.persistence.FetchType;
 import javax.persistence.JoinColumn;
+import javax.persistence.JoinColumns;
 import javax.persistence.ManyToOne;
 import javax.persistence.MappedSuperclass;
-
+import javax.persistence.Transient;
 import org.hibernate.annotations.Type;
 import org.hibernate.annotations.TypeDef;
 import org.hibernate.annotations.TypeDefs;
+import org.json.JSONObject;
 import org.onap.clamp.dao.model.jsontype.StringJsonUserType;
 import org.onap.clamp.loop.common.AuditEntity;
 import org.onap.clamp.loop.template.LoopElementModel;
+import org.onap.clamp.loop.template.PolicyModel;
+import org.yaml.snakeyaml.Yaml;
 
 @MappedSuperclass
 @TypeDefs({@TypeDef(name = "json", typeClass = StringJsonUserType.class)})
 public abstract class Policy extends AuditEntity {
 
+    @Transient
+    private static final EELFLogger logger = EELFManager.getInstance().getLogger(Policy.class);
+
     @Expose
     @Type(type = "json")
     @Column(columnDefinition = "json", name = "json_representation", nullable = false)
@@ -72,7 +84,67 @@
     @Column(name = "pdp_sub_group")
     private String pdpSubgroup;
 
-    public abstract String createPolicyPayload() throws UnsupportedEncodingException;
+    @Expose
+    @ManyToOne(fetch = FetchType.EAGER)
+    @JoinColumns({@JoinColumn(name = "policy_model_type", referencedColumnName = "policy_model_type"),
+            @JoinColumn(name = "policy_model_version", referencedColumnName = "version")})
+    private PolicyModel policyModel;
+
+    private JsonObject createJsonFromPolicyTosca() {
+        Map<String, Object> map =
+                new Yaml().load(this.getPolicyModel() != null ? this.getPolicyModel().getPolicyModelTosca() : "");
+        JSONObject jsonObject = new JSONObject(map);
+        return new Gson().fromJson(jsonObject.toString(), JsonObject.class);
+    }
+
+    private String getModelPropertyNameFromTosca(JsonObject object, String policyModelType) {
+        return object.getAsJsonObject("policy_types").getAsJsonObject(policyModelType)
+                .getAsJsonObject(
+                        "properties")
+                .keySet().toArray(new String[1])[0];
+    }
+
+    /**
+     * This method create the policy payload that must be sent to PEF.
+     *
+     * @return A String containing the payload
+     * @throws UnsupportedEncodingException In case of failure
+     */
+    public String createPolicyPayload() throws UnsupportedEncodingException {
+        JsonObject toscaJson = createJsonFromPolicyTosca();
+
+        JsonObject policyPayloadResult = new JsonObject();
+
+        policyPayloadResult.add("tosca_definitions_version", toscaJson.get("tosca_definitions_version"));
+
+        JsonObject topologyTemplateNode = new JsonObject();
+        policyPayloadResult.add("topology_template", topologyTemplateNode);
+
+        JsonArray policiesArray = new JsonArray();
+        topologyTemplateNode.add("policies", policiesArray);
+
+        JsonObject thisPolicy = new JsonObject();
+        policiesArray.add(thisPolicy);
+
+        JsonObject policyDetails = new JsonObject();
+        thisPolicy.add(this.getName(), policyDetails);
+        policyDetails.addProperty("type", this.getPolicyModel().getPolicyModelType());
+        policyDetails.addProperty("version", this.getPolicyModel().getVersion());
+
+        JsonObject policyMetadata = new JsonObject();
+        policyDetails.add("metadata", policyMetadata);
+        policyMetadata.addProperty("policy-id", this.getName());
+
+        JsonObject policyProperties = new JsonObject();
+        policyDetails.add("properties", policyProperties);
+        policyProperties
+                .add(this.getModelPropertyNameFromTosca(toscaJson, this.getPolicyModel().getPolicyModelType()),
+                        this.getConfigurationsJson());
+        String policyPayload = new GsonBuilder().setPrettyPrinting().create().toJson(policyPayloadResult);
+        logger.info("Policy payload: " + policyPayload);
+        return policyPayload;
+    }
+
 
     /**
      * Name getter.
@@ -105,6 +177,24 @@
     }
 
     /**
+     * policyModel getter.
+     *
+     * @return the policyModel
+     */
+    public PolicyModel getPolicyModel() {
+        return policyModel;
+    }
+
+    /**
+     * policyModel setter.
+     *
+     * @param policyModel The new policyModel
+     */
+    public void setPolicyModel(PolicyModel policyModel) {
+        this.policyModel = policyModel;
+    }
+
+    /**
      * configurationsJson getter.
      *
      * @return The configurationsJson
@@ -160,7 +250,7 @@
 
     /**
      * pdpSubgroup getter.
-     * 
+     *
      * @return the pdpSubgroup
      */
     public String getPdpSubgroup() {
@@ -169,7 +259,7 @@
 
     /**
      * pdpSubgroup setter.
-     * 
+     *
      * @param pdpSubgroup the pdpSubgroup to set
      */
     public void setPdpSubgroup(String pdpSubgroup) {
diff --git a/src/main/java/org/onap/clamp/policy/microservice/MicroServicePolicy.java b/src/main/java/org/onap/clamp/policy/microservice/MicroServicePolicy.java
index 7fd752c..c4037ff 100644
--- a/src/main/java/org/onap/clamp/policy/microservice/MicroServicePolicy.java
+++ b/src/main/java/org/onap/clamp/policy/microservice/MicroServicePolicy.java
@@ -25,28 +25,20 @@
 
 import com.att.eelf.configuration.EELFLogger;
 import com.att.eelf.configuration.EELFManager;
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-import com.google.gson.JsonArray;
 import com.google.gson.JsonObject;
 import com.google.gson.annotations.Expose;
 import java.io.Serializable;
 import java.util.HashSet;
-import java.util.Map;
 import java.util.Set;
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.JoinColumns;
 import javax.persistence.ManyToMany;
-import javax.persistence.ManyToOne;
 import javax.persistence.Table;
 import javax.persistence.Transient;
 import org.hibernate.annotations.TypeDef;
 import org.hibernate.annotations.TypeDefs;
-import org.json.JSONObject;
 import org.onap.clamp.clds.tosca.ToscaYamlToJsonConvertor;
 import org.onap.clamp.clds.util.JsonUtils;
 import org.onap.clamp.dao.model.jsontype.StringJsonUserType;
@@ -54,7 +46,6 @@
 import org.onap.clamp.loop.template.LoopElementModel;
 import org.onap.clamp.loop.template.PolicyModel;
 import org.onap.clamp.policy.Policy;
-import org.yaml.snakeyaml.Yaml;
 
 @Entity
 @Table(name = "micro_service_policies")
@@ -100,12 +91,6 @@
     @Column(name = "dcae_blueprint_id")
     private String dcaeBlueprintId;
 
-    @Expose
-    @ManyToOne(fetch = FetchType.EAGER)
-    @JoinColumns({@JoinColumn(name = "policy_model_type", referencedColumnName = "policy_model_type"),
-            @JoinColumn(name = "policy_model_version", referencedColumnName = "version")})
-    private PolicyModel policyModel;
-
     public MicroServicePolicy() {
         // serialization
     }
@@ -119,20 +104,15 @@
      * @param shared      The flag indicate whether the MicroService is shared
      */
     public MicroServicePolicy(String name, PolicyModel policyModel, Boolean shared, LoopElementModel loopElementModel) {
-        this(name,policyModel,shared,JsonUtils.GSON_JPA_MODEL
+        this(name, policyModel, shared, JsonUtils.GSON_JPA_MODEL
                 .fromJson(new ToscaYamlToJsonConvertor().parseToscaYaml(policyModel.getPolicyModelTosca(),
-                        policyModel.getPolicyModelType()), JsonObject.class),loopElementModel, null, null);
-    }
-
-    private JsonObject createJsonFromPolicyTosca() {
-        Map<String, Object> map = new Yaml().load(this.getPolicyModel().getPolicyModelTosca());
-        JSONObject jsonObject = new JSONObject(map);
-        return new Gson().fromJson(jsonObject.toString(), JsonObject.class);
+                        policyModel.getPolicyModelType()), JsonObject.class), loopElementModel,null,null);
     }
 
     /**
      * The constructor that does not make use of ToscaYamlToJsonConvertor but take
      * the jsonRepresentation instead.
+     *
      * @param name               The name of the MicroService
      * @param policyModel        The policy model type of the MicroService
      * @param shared             The flag indicate whether the MicroService is
@@ -145,7 +125,7 @@
     public MicroServicePolicy(String name, PolicyModel policyModel, Boolean shared,
                               JsonObject jsonRepresentation, LoopElementModel loopElementModel, String pdpGroup, String pdpSubgroup) {
         this.name = name;
-        this.policyModel = policyModel;
+        this.setPolicyModel(policyModel);
         this.shared = shared;
         this.setJsonRepresentation(jsonRepresentation);
         this.setLoopElementModel(loopElementModel);
@@ -200,14 +180,6 @@
         this.deviceTypeScope = deviceTypeScope;
     }
 
-    public PolicyModel getPolicyModel() {
-        return policyModel;
-    }
-
-    public void setPolicyModel(PolicyModel policyModel) {
-        this.policyModel = policyModel;
-    }
-
     /**
      * dcaeDeploymentId getter.
      *
@@ -288,48 +260,7 @@
             }
         } else if (!name.equals(other.name)) {
             return false;
-        }        return true;
+        }
+        return true;
     }
-
-    private String getMicroServicePropertyNameFromTosca(JsonObject object) {
-        return object.getAsJsonObject("policy_types").getAsJsonObject(this.getPolicyModel().getPolicyModelType())
-                .getAsJsonObject(
-                        "properties")
-                .keySet().toArray(new String[1])[0];
-    }
-
-    @Override
-    public String createPolicyPayload() {
-        JsonObject toscaJson = createJsonFromPolicyTosca();
-
-        JsonObject policyPayloadResult = new JsonObject();
-
-        policyPayloadResult.add("tosca_definitions_version", toscaJson.get("tosca_definitions_version"));
-
-        JsonObject topologyTemplateNode = new JsonObject();
-        policyPayloadResult.add("topology_template", topologyTemplateNode);
-
-        JsonArray policiesArray = new JsonArray();
-        topologyTemplateNode.add("policies", policiesArray);
-
-        JsonObject thisPolicy = new JsonObject();
-        policiesArray.add(thisPolicy);
-
-        JsonObject policyDetails = new JsonObject();
-        thisPolicy.add(this.getName(), policyDetails);
-        policyDetails.addProperty("type", this.getPolicyModel().getPolicyModelType());
-        policyDetails.addProperty("version", this.getPolicyModel().getVersion());
-
-        JsonObject policyMetadata = new JsonObject();
-        policyDetails.add("metadata", policyMetadata);
-        policyMetadata.addProperty("policy-id", this.getName());
-
-        JsonObject policyProperties = new JsonObject();
-        policyDetails.add("properties", policyProperties);
-        policyProperties.add(this.getMicroServicePropertyNameFromTosca(toscaJson), this.getConfigurationsJson());
-        String policyPayload = new GsonBuilder().setPrettyPrinting().create().toJson(policyPayloadResult);
-        logger.info("Micro service policy payload: " + policyPayload);
-        return policyPayload;
-    }
-
 }
diff --git a/src/main/java/org/onap/clamp/policy/operational/OperationalPolicy.java b/src/main/java/org/onap/clamp/policy/operational/OperationalPolicy.java
index aab30bf..82cfcf4 100644
--- a/src/main/java/org/onap/clamp/policy/operational/OperationalPolicy.java
+++ b/src/main/java/org/onap/clamp/policy/operational/OperationalPolicy.java
@@ -50,6 +50,8 @@
 import javax.persistence.Transient;
 import org.hibernate.annotations.TypeDef;
 import org.hibernate.annotations.TypeDefs;
+import org.onap.clamp.clds.tosca.ToscaYamlToJsonConvertor;
+import org.onap.clamp.clds.util.JsonUtils;
 import org.onap.clamp.dao.model.jsontype.StringJsonUserType;
 import org.onap.clamp.loop.Loop;
 import org.onap.clamp.loop.template.LoopElementModel;
@@ -79,12 +81,6 @@
     @JoinColumn(name = "loop_id", nullable = false)
     private Loop loop;
 
-    @Expose
-    @ManyToOne(fetch = FetchType.EAGER)
-    @JoinColumns({@JoinColumn(name = "policy_model_type", referencedColumnName = "policy_model_type"),
-            @JoinColumn(name = "policy_model_version", referencedColumnName = "version")})
-    private PolicyModel policyModel;
-
     public OperationalPolicy() {
         // Serialization
     }
@@ -110,16 +106,32 @@
         this.setPdpGroup(pdpGroup);
         this.setPdpSubgroup(pdpSubgroup);
         this.setLoopElementModel(loopElementModel);
-        if (policyModel != null && policyModel.getPolicyModelType().contains("legacy")) {
-            LegacyOperationalPolicy.preloadConfiguration(configurationsJson, loop);
+        this.setJsonRepresentation(this.generateJsonRepresentation(policyModel));
+
+    }
+
+    private JsonObject generateJsonRepresentation(PolicyModel policyModel) {
+        JsonObject jsonReturned = new JsonObject();
+        if (policyModel == null) {
+            return new JsonObject();
         }
         try {
-            this.setJsonRepresentation(
-                OperationalPolicyRepresentationBuilder.generateOperationalPolicySchema(loop.getModelService()));
+            if (isLegacy()) {
+                // Op policy Legacy case
+                LegacyOperationalPolicy.preloadConfiguration(jsonReturned, loop);
+                this.setJsonRepresentation(
+                        OperationalPolicyRepresentationBuilder.generateOperationalPolicySchema(loop.getModelService()));
+            } else {
+                // Generic Case
+                this.setJsonRepresentation(JsonUtils.GSON
+                        .fromJson(new ToscaYamlToJsonConvertor().parseToscaYaml(policyModel.getPolicyModelTosca(),
+                                policyModel.getPolicyModelType()), JsonObject.class));
+            }
         } catch (JsonSyntaxException | IOException | NullPointerException e) {
             logger.error("Unable to generate the operational policy Schema ... ", e);
             this.setJsonRepresentation(new JsonObject());
         }
+        return jsonReturned;
     }
 
     public void setLoop(Loop loopName) {
@@ -145,24 +157,6 @@
         this.name = name;
     }
 
-    /**
-     * policyModel getter.
-     *
-     * @return the policyModel
-     */
-    public PolicyModel getPolicyModel() {
-        return policyModel;
-    }
-
-    /**
-     * policyModel setter.
-     *
-     * @param policyModel the policyModel to set
-     */
-    public void setPolicyModel(PolicyModel policyModel) {
-        this.policyModel = policyModel;
-    }
-
     @Override
     public int hashCode() {
         final int prime = 31;
@@ -193,6 +187,10 @@
         return true;
     }
 
+    public Boolean isLegacy() {
+        return (this.getPolicyModel() != null) && this.getPolicyModel().getPolicyModelType().contains("legacy");
+    }
+
     /**
      * Create policy Yaml from json defined here.
      *
@@ -235,17 +233,22 @@
 
     @Override
     public String createPolicyPayload() throws UnsupportedEncodingException {
-        // Now using the legacy payload fo Dublin
-        JsonObject payload = new JsonObject();
-        payload.addProperty("policy-id", this.getName());
-        payload.addProperty("content",
-                URLEncoder.encode(
-                        LegacyOperationalPolicy
-                                .createPolicyPayloadYamlLegacy(this.getConfigurationsJson().get("operational_policy")),
-                        StandardCharsets.UTF_8.toString()));
-        String opPayload = new GsonBuilder().setPrettyPrinting().create().toJson(payload);
-        logger.info("Operational policy payload: " + opPayload);
-        return opPayload;
+        if (isLegacy()) {
+            // Now using the legacy payload fo Dublin
+            JsonObject payload = new JsonObject();
+            payload.addProperty("policy-id", this.getName());
+            payload.addProperty("content",
+                    URLEncoder.encode(
+                            LegacyOperationalPolicy
+                                    .createPolicyPayloadYamlLegacy(
+                                            this.getConfigurationsJson().get("operational_policy")),
+                            StandardCharsets.UTF_8.toString()));
+            String opPayload = new GsonBuilder().setPrettyPrinting().create().toJson(payload);
+            logger.info("Operational policy payload: " + opPayload);
+            return opPayload;
+        } else {
+            return super.createPolicyPayload();
+        }
     }
 
     /**
diff --git a/src/main/resources/META-INF/resources/swagger.html b/src/main/resources/META-INF/resources/swagger.html
index 23844cb..9c4c9ff 100644
--- a/src/main/resources/META-INF/resources/swagger.html
+++ b/src/main/resources/META-INF/resources/swagger.html
@@ -444,25 +444,25 @@
 </li>
 <li><a href="#_paths">2. Paths</a>
 <ul class="sectlevel2">
-<li><a href="#_route30">2.1. GET /v1/healthcheck</a>
+<li><a href="#_route61">2.1. GET /v1/healthcheck</a>
 <ul class="sectlevel3">
 <li><a href="#_responses">2.1.1. Responses</a></li>
 <li><a href="#_produces">2.1.2. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route31">2.2. GET /v1/user/getUser</a>
+<li><a href="#_route62">2.2. GET /v1/user/getUser</a>
 <ul class="sectlevel3">
 <li><a href="#_responses_2">2.2.1. Responses</a></li>
 <li><a href="#_produces_2">2.2.2. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route18">2.3. GET /v2/dictionary</a>
+<li><a href="#_route49">2.3. GET /v2/dictionary</a>
 <ul class="sectlevel3">
 <li><a href="#_responses_3">2.3.1. Responses</a></li>
 <li><a href="#_produces_3">2.3.2. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route20">2.4. PUT /v2/dictionary</a>
+<li><a href="#_route51">2.4. PUT /v2/dictionary</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters">2.4.1. Parameters</a></li>
 <li><a href="#_responses_4">2.4.2. Responses</a></li>
@@ -491,7 +491,7 @@
 <li><a href="#_produces_7">2.7.4. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route22">2.8. DELETE /v2/dictionary/{name}</a>
+<li><a href="#_route53">2.8. DELETE /v2/dictionary/{name}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_4">2.8.1. Parameters</a></li>
 <li><a href="#_responses_8">2.8.2. Responses</a></li>
@@ -505,75 +505,75 @@
 <li><a href="#_produces_9">2.9.3. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route14">2.10. PUT /v2/loop/delete/{loopName}</a>
+<li><a href="#_route45">2.10. PUT /v2/loop/delete/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_6">2.10.1. Parameters</a></li>
 <li><a href="#_responses_10">2.10.2. Responses</a></li>
 </ul>
 </li>
-<li><a href="#_route8">2.11. PUT /v2/loop/deploy/{loopName}</a>
+<li><a href="#_route39">2.11. PUT /v2/loop/deploy/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_7">2.11.1. Parameters</a></li>
 <li><a href="#_responses_11">2.11.2. Responses</a></li>
 <li><a href="#_produces_10">2.11.3. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route2">2.12. GET /v2/loop/getAllNames</a>
+<li><a href="#_route33">2.12. GET /v2/loop/getAllNames</a>
 <ul class="sectlevel3">
 <li><a href="#_responses_12">2.12.1. Responses</a></li>
 <li><a href="#_produces_11">2.12.2. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route15">2.13. GET /v2/loop/getstatus/{loopName}</a>
+<li><a href="#_route46">2.13. GET /v2/loop/getstatus/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_8">2.13.1. Parameters</a></li>
 <li><a href="#_responses_13">2.13.2. Responses</a></li>
 <li><a href="#_produces_12">2.13.3. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route9">2.14. PUT /v2/loop/refreshOpPolicyJsonSchema/{loopName}</a>
+<li><a href="#_route40">2.14. PUT /v2/loop/refreshOpPolicyJsonSchema/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_9">2.14.1. Parameters</a></li>
 <li><a href="#_responses_14">2.14.2. Responses</a></li>
 <li><a href="#_produces_13">2.14.3. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route12">2.15. PUT /v2/loop/restart/{loopName}</a>
+<li><a href="#_route43">2.15. PUT /v2/loop/restart/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_10">2.15.1. Parameters</a></li>
 <li><a href="#_responses_15">2.15.2. Responses</a></li>
 <li><a href="#_produces_14">2.15.3. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route11">2.16. PUT /v2/loop/stop/{loopName}</a>
+<li><a href="#_route42">2.16. PUT /v2/loop/stop/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_11">2.16.1. Parameters</a></li>
 <li><a href="#_responses_16">2.16.2. Responses</a></li>
 <li><a href="#_produces_15">2.16.3. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route13">2.17. PUT /v2/loop/submit/{loopName}</a>
+<li><a href="#_route44">2.17. PUT /v2/loop/submit/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_12">2.17.1. Parameters</a></li>
 <li><a href="#_responses_17">2.17.2. Responses</a></li>
 <li><a href="#_produces_16">2.17.3. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route4">2.18. GET /v2/loop/svgRepresentation/{loopName}</a>
+<li><a href="#_route35">2.18. GET /v2/loop/svgRepresentation/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_13">2.18.1. Parameters</a></li>
 <li><a href="#_responses_18">2.18.2. Responses</a></li>
 <li><a href="#_produces_17">2.18.3. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route10">2.19. PUT /v2/loop/undeploy/{loopName}</a>
+<li><a href="#_route41">2.19. PUT /v2/loop/undeploy/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_14">2.19.1. Parameters</a></li>
 <li><a href="#_responses_19">2.19.2. Responses</a></li>
 <li><a href="#_produces_18">2.19.3. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route5">2.20. POST /v2/loop/updateGlobalProperties/{loopName}</a>
+<li><a href="#_route36">2.20. POST /v2/loop/updateGlobalProperties/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_15">2.20.1. Parameters</a></li>
 <li><a href="#_responses_20">2.20.2. Responses</a></li>
@@ -581,7 +581,7 @@
 <li><a href="#_produces_19">2.20.4. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route7">2.21. POST /v2/loop/updateMicroservicePolicy/{loopName}</a>
+<li><a href="#_route38">2.21. POST /v2/loop/updateMicroservicePolicy/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_16">2.21.1. Parameters</a></li>
 <li><a href="#_responses_21">2.21.2. Responses</a></li>
@@ -589,7 +589,7 @@
 <li><a href="#_produces_20">2.21.4. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route6">2.22. POST /v2/loop/updateOperationalPolicies/{loopName}</a>
+<li><a href="#_route37">2.22. POST /v2/loop/updateOperationalPolicies/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_17">2.22.1. Parameters</a></li>
 <li><a href="#_responses_22">2.22.2. Responses</a></li>
@@ -597,14 +597,14 @@
 <li><a href="#_produces_21">2.22.4. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route3">2.23. GET /v2/loop/{loopName}</a>
+<li><a href="#_route34">2.23. GET /v2/loop/{loopName}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_18">2.23.1. Parameters</a></li>
 <li><a href="#_responses_23">2.23.2. Responses</a></li>
 <li><a href="#_produces_22">2.23.3. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route25">2.24. GET /v2/policyToscaModels</a>
+<li><a href="#_route56">2.24. GET /v2/policyToscaModels</a>
 <ul class="sectlevel3">
 <li><a href="#_responses_24">2.24.1. Responses</a></li>
 <li><a href="#_produces_23">2.24.2. Produces</a></li>
@@ -624,7 +624,7 @@
 <li><a href="#_produces_25">2.26.3. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route26">2.27. PUT /v2/policyToscaModels/{policyModelType}</a>
+<li><a href="#_route57">2.27. PUT /v2/policyToscaModels/{policyModelType}</a>
 <ul class="sectlevel3">
 <li><a href="#_parameters_21">2.27.1. Parameters</a></li>
 <li><a href="#_responses_27">2.27.2. Responses</a></li>
@@ -632,7 +632,7 @@
 <li><a href="#_produces_26">2.27.4. Produces</a></li>
 </ul>
 </li>
-<li><a href="#_route29">2.28. GET /v2/templates</a>
+<li><a href="#_route60">2.28. GET /v2/templates</a>
 <ul class="sectlevel3">
 <li><a href="#_responses_28">2.28.1. Responses</a></li>
 <li><a href="#_produces_27">2.28.2. Produces</a></li>
@@ -692,7 +692,7 @@
 <div class="sect2">
 <h3 id="_uri_scheme"><a class="anchor" href="#_uri_scheme"></a><a class="link" href="#_uri_scheme">1.2. URI scheme</a></h3>
 <div class="paragraph">
-<p><em>Host</em> : localhost:37295<br>
+<p><em>Host</em> : localhost:39099<br>
 <em>BasePath</em> : /restservices/clds/<br>
 <em>Schemes</em> : HTTP</p>
 </div>
@@ -703,7 +703,7 @@
 <h2 id="_paths"><a class="anchor" href="#_paths"></a><a class="link" href="#_paths">2. Paths</a></h2>
 <div class="sectionbody">
 <div class="sect2">
-<h3 id="_route30"><a class="anchor" href="#_route30"></a><a class="link" href="#_route30">2.1. GET /v1/healthcheck</a></h3>
+<h3 id="_route61"><a class="anchor" href="#_route61"></a><a class="link" href="#_route61">2.1. GET /v1/healthcheck</a></h3>
 <div class="sect3">
 <h4 id="_responses"><a class="anchor" href="#_responses"></a><a class="link" href="#_responses">2.1.1. Responses</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -740,7 +740,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route31"><a class="anchor" href="#_route31"></a><a class="link" href="#_route31">2.2. GET /v1/user/getUser</a></h3>
+<h3 id="_route62"><a class="anchor" href="#_route62"></a><a class="link" href="#_route62">2.2. GET /v1/user/getUser</a></h3>
 <div class="sect3">
 <h4 id="_responses_2"><a class="anchor" href="#_responses_2"></a><a class="link" href="#_responses_2">2.2.1. Responses</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -774,7 +774,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route18"><a class="anchor" href="#_route18"></a><a class="link" href="#_route18">2.3. GET /v2/dictionary</a></h3>
+<h3 id="_route49"><a class="anchor" href="#_route49"></a><a class="link" href="#_route49">2.3. GET /v2/dictionary</a></h3>
 <div class="sect3">
 <h4 id="_responses_3"><a class="anchor" href="#_responses_3"></a><a class="link" href="#_responses_3">2.3.1. Responses</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -811,7 +811,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route20"><a class="anchor" href="#_route20"></a><a class="link" href="#_route20">2.4. PUT /v2/dictionary</a></h3>
+<h3 id="_route51"><a class="anchor" href="#_route51"></a><a class="link" href="#_route51">2.4. PUT /v2/dictionary</a></h3>
 <div class="sect3">
 <h4 id="_parameters"><a class="anchor" href="#_parameters"></a><a class="link" href="#_parameters">2.4.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1060,7 +1060,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route22"><a class="anchor" href="#_route22"></a><a class="link" href="#_route22">2.8. DELETE /v2/dictionary/{name}</a></h3>
+<h3 id="_route53"><a class="anchor" href="#_route53"></a><a class="link" href="#_route53">2.8. DELETE /v2/dictionary/{name}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_4"><a class="anchor" href="#_parameters_4"></a><a class="link" href="#_parameters_4">2.8.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1184,7 +1184,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route14"><a class="anchor" href="#_route14"></a><a class="link" href="#_route14">2.10. PUT /v2/loop/delete/{loopName}</a></h3>
+<h3 id="_route45"><a class="anchor" href="#_route45"></a><a class="link" href="#_route45">2.10. PUT /v2/loop/delete/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_6"><a class="anchor" href="#_parameters_6"></a><a class="link" href="#_parameters_6">2.10.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1233,7 +1233,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route8"><a class="anchor" href="#_route8"></a><a class="link" href="#_route8">2.11. PUT /v2/loop/deploy/{loopName}</a></h3>
+<h3 id="_route39"><a class="anchor" href="#_route39"></a><a class="link" href="#_route39">2.11. PUT /v2/loop/deploy/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_7"><a class="anchor" href="#_parameters_7"></a><a class="link" href="#_parameters_7">2.11.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1295,7 +1295,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route2"><a class="anchor" href="#_route2"></a><a class="link" href="#_route2">2.12. GET /v2/loop/getAllNames</a></h3>
+<h3 id="_route33"><a class="anchor" href="#_route33"></a><a class="link" href="#_route33">2.12. GET /v2/loop/getAllNames</a></h3>
 <div class="sect3">
 <h4 id="_responses_12"><a class="anchor" href="#_responses_12"></a><a class="link" href="#_responses_12">2.12.1. Responses</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1332,7 +1332,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route15"><a class="anchor" href="#_route15"></a><a class="link" href="#_route15">2.13. GET /v2/loop/getstatus/{loopName}</a></h3>
+<h3 id="_route46"><a class="anchor" href="#_route46"></a><a class="link" href="#_route46">2.13. GET /v2/loop/getstatus/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_8"><a class="anchor" href="#_parameters_8"></a><a class="link" href="#_parameters_8">2.13.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1394,7 +1394,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route9"><a class="anchor" href="#_route9"></a><a class="link" href="#_route9">2.14. PUT /v2/loop/refreshOpPolicyJsonSchema/{loopName}</a></h3>
+<h3 id="_route40"><a class="anchor" href="#_route40"></a><a class="link" href="#_route40">2.14. PUT /v2/loop/refreshOpPolicyJsonSchema/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_9"><a class="anchor" href="#_parameters_9"></a><a class="link" href="#_parameters_9">2.14.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1456,7 +1456,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route12"><a class="anchor" href="#_route12"></a><a class="link" href="#_route12">2.15. PUT /v2/loop/restart/{loopName}</a></h3>
+<h3 id="_route43"><a class="anchor" href="#_route43"></a><a class="link" href="#_route43">2.15. PUT /v2/loop/restart/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_10"><a class="anchor" href="#_parameters_10"></a><a class="link" href="#_parameters_10">2.15.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1518,7 +1518,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route11"><a class="anchor" href="#_route11"></a><a class="link" href="#_route11">2.16. PUT /v2/loop/stop/{loopName}</a></h3>
+<h3 id="_route42"><a class="anchor" href="#_route42"></a><a class="link" href="#_route42">2.16. PUT /v2/loop/stop/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_11"><a class="anchor" href="#_parameters_11"></a><a class="link" href="#_parameters_11">2.16.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1580,7 +1580,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route13"><a class="anchor" href="#_route13"></a><a class="link" href="#_route13">2.17. PUT /v2/loop/submit/{loopName}</a></h3>
+<h3 id="_route44"><a class="anchor" href="#_route44"></a><a class="link" href="#_route44">2.17. PUT /v2/loop/submit/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_12"><a class="anchor" href="#_parameters_12"></a><a class="link" href="#_parameters_12">2.17.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1642,7 +1642,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route4"><a class="anchor" href="#_route4"></a><a class="link" href="#_route4">2.18. GET /v2/loop/svgRepresentation/{loopName}</a></h3>
+<h3 id="_route35"><a class="anchor" href="#_route35"></a><a class="link" href="#_route35">2.18. GET /v2/loop/svgRepresentation/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_13"><a class="anchor" href="#_parameters_13"></a><a class="link" href="#_parameters_13">2.18.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1704,7 +1704,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route10"><a class="anchor" href="#_route10"></a><a class="link" href="#_route10">2.19. PUT /v2/loop/undeploy/{loopName}</a></h3>
+<h3 id="_route41"><a class="anchor" href="#_route41"></a><a class="link" href="#_route41">2.19. PUT /v2/loop/undeploy/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_14"><a class="anchor" href="#_parameters_14"></a><a class="link" href="#_parameters_14">2.19.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1766,7 +1766,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route5"><a class="anchor" href="#_route5"></a><a class="link" href="#_route5">2.20. POST /v2/loop/updateGlobalProperties/{loopName}</a></h3>
+<h3 id="_route36"><a class="anchor" href="#_route36"></a><a class="link" href="#_route36">2.20. POST /v2/loop/updateGlobalProperties/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_15"><a class="anchor" href="#_parameters_15"></a><a class="link" href="#_parameters_15">2.20.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1844,7 +1844,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route7"><a class="anchor" href="#_route7"></a><a class="link" href="#_route7">2.21. POST /v2/loop/updateMicroservicePolicy/{loopName}</a></h3>
+<h3 id="_route38"><a class="anchor" href="#_route38"></a><a class="link" href="#_route38">2.21. POST /v2/loop/updateMicroservicePolicy/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_16"><a class="anchor" href="#_parameters_16"></a><a class="link" href="#_parameters_16">2.21.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -1922,7 +1922,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route6"><a class="anchor" href="#_route6"></a><a class="link" href="#_route6">2.22. POST /v2/loop/updateOperationalPolicies/{loopName}</a></h3>
+<h3 id="_route37"><a class="anchor" href="#_route37"></a><a class="link" href="#_route37">2.22. POST /v2/loop/updateOperationalPolicies/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_17"><a class="anchor" href="#_parameters_17"></a><a class="link" href="#_parameters_17">2.22.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -2000,7 +2000,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route3"><a class="anchor" href="#_route3"></a><a class="link" href="#_route3">2.23. GET /v2/loop/{loopName}</a></h3>
+<h3 id="_route34"><a class="anchor" href="#_route34"></a><a class="link" href="#_route34">2.23. GET /v2/loop/{loopName}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_18"><a class="anchor" href="#_parameters_18"></a><a class="link" href="#_parameters_18">2.23.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -2062,7 +2062,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route25"><a class="anchor" href="#_route25"></a><a class="link" href="#_route25">2.24. GET /v2/policyToscaModels</a></h3>
+<h3 id="_route56"><a class="anchor" href="#_route56"></a><a class="link" href="#_route56">2.24. GET /v2/policyToscaModels</a></h3>
 <div class="sect3">
 <h4 id="_responses_24"><a class="anchor" href="#_responses_24"></a><a class="link" href="#_responses_24">2.24.1. Responses</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -2223,7 +2223,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route26"><a class="anchor" href="#_route26"></a><a class="link" href="#_route26">2.27. PUT /v2/policyToscaModels/{policyModelType}</a></h3>
+<h3 id="_route57"><a class="anchor" href="#_route57"></a><a class="link" href="#_route57">2.27. PUT /v2/policyToscaModels/{policyModelType}</a></h3>
 <div class="sect3">
 <h4 id="_parameters_21"><a class="anchor" href="#_parameters_21"></a><a class="link" href="#_parameters_21">2.27.1. Parameters</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -2301,7 +2301,7 @@
 </div>
 </div>
 <div class="sect2">
-<h3 id="_route29"><a class="anchor" href="#_route29"></a><a class="link" href="#_route29">2.28. GET /v2/templates</a></h3>
+<h3 id="_route60"><a class="anchor" href="#_route60"></a><a class="link" href="#_route60">2.28. GET /v2/templates</a></h3>
 <div class="sect3">
 <h4 id="_responses_28"><a class="anchor" href="#_responses_28"></a><a class="link" href="#_responses_28">2.28.1. Responses</a></h4>
 <table class="tableblock frame-all grid-all stretch">
@@ -3617,6 +3617,11 @@
 <td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="#_jsonobject">JsonObject</a></p></td>
 </tr>
 <tr>
+<td class="tableblock halign-left valign-middle"><p class="tableblock"><strong>legacy</strong><br>
+<em>optional</em></p></td>
+<td class="tableblock halign-left valign-middle"><p class="tableblock">boolean</p></td>
+</tr>
+<tr>
 <td class="tableblock halign-left valign-middle"><p class="tableblock"><strong>loop</strong><br>
 <em>optional</em></p></td>
 <td class="tableblock halign-left valign-middle"><p class="tableblock"><a href="#_loop">Loop</a></p></td>
diff --git a/src/main/resources/application-noaaf.properties b/src/main/resources/application-noaaf.properties
index 69d1687..320e0c2 100644
--- a/src/main/resources/application-noaaf.properties
+++ b/src/main/resources/application-noaaf.properties
@@ -21,11 +21,6 @@
 #
 ###
 
-info.build.artifact=@project.artifactId@
-info.build.name=@project.name@
-info.build.description=@project.description@
-info.build.version=@project.version@
-
 ### Set the port for HTTP or HTTPS protocol (Controlled by Spring framework, only one at a time).
 ### (See below for the parameter 'server.http.port' if you want to have both enabled)
 ### To have only HTTP, keep the lines server.ssl.* commented
@@ -73,7 +68,7 @@
 
 server.servlet.context-path=/
 #Modified engine-rest applicationpath
-spring.profiles.active=clamp-default,clamp-default-user,clamp-sdc-controller,clamp-ssl-config,clamp-policy-controller
+spring.profiles.active=clamp-default,clamp-default-user,clamp-sdc-controller,clamp-ssl-config,clamp-policy-controller,legacy-operational-policy
 spring.http.converters.preferred-json-mapper=gson
 
 #The max number of active threads in this pool
@@ -145,12 +140,7 @@
 clamp.config.files.globalProperties=classpath:/clds/templates/globalProperties.json
 clamp.config.files.sdcController=classpath:/clds/sdc-controllers-config.json
 
-# Properties for Clamp
-# DCAE request build properties
-#
-clamp.config.dcae.template=classpath:/clds/templates/dcae-template.json
-clamp.config.dcae.deployment.template=classpath:/clds/templates/dcae-deployment-template.json
-#
+
 #
 # Configuration Settings for Policy Engine Components
 clamp.config.policy.api.url=http4://localhost:8085
@@ -160,36 +150,9 @@
 clamp.config.policy.pap.userName=healthcheck
 clamp.config.policy.pap.password=zb!XztG34
 
-# TCA MicroService Policy request build properties
-#
-clamp.config.tca.policyid.prefix=DCAE.Config_
-clamp.config.tca.policy.template=classpath:/clds/templates/tca-policy-template.json
-clamp.config.tca.template=classpath:/clds/templates/tca-template.json
-clamp.config.tca.thresholds.template=classpath:/clds/templates/tca-thresholds-template.json
-
-#
-#
-# Operational Policy request build properties
-#
-clamp.config.op.policyDescription=from CLAMP
-# default
-clamp.config.op.templateName=ClosedLoopControlName
-clamp.config.op.operationTopic=APPC-CL
-clamp.config.op.notificationTopic=POLICY-CL-MGT
-clamp.config.op.controller=amsterdam
-clamp.config.op.policy.appc=APPC
 #
 # Sdc service properties
 clamp.config.sdc.csarFolder = /tmp/sdc-controllers
-clamp.config.sdc.blueprint.parser.mapping = classpath:/clds/blueprint-parser-mapping.json
-#
-clamp.config.ui.location.default=classpath:/clds/templates/ui-location-default.json
-#
-# if action.test.override is true, then any action will be marked as test=true (even if incoming action request had test=false); otherwise, test flag will be unchanged on the action request
-clamp.config.action.test.override=false
-# if action.insert.test.event is true, then insert event even if the action is set to test
-clamp.config.action.insert.test.event=false
-clamp.config.clds.service.cache.invalidate.after.seconds=120
 
 #DCAE Inventory Url Properties
 clamp.config.dcae.inventory.url=http4://localhost:8085
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index 695319d..e856743 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -73,7 +73,7 @@
 
 server.servlet.context-path=/
 #Modified engine-rest applicationpath
-spring.profiles.active=clamp-default,clamp-aaf-authentication,clamp-sdc-controller,clamp-ssl-config,clamp-policy-controller
+spring.profiles.active=clamp-default,clamp-aaf-authentication,clamp-sdc-controller,clamp-ssl-config,clamp-policy-controller,legacy-operational-policy
 spring.http.converters.preferred-json-mapper=gson
 
 #The max number of active threads in this pool
@@ -143,12 +143,6 @@
 clamp.config.files.globalProperties=classpath:/clds/templates/globalProperties.json
 clamp.config.files.sdcController=classpath:/clds/sdc-controllers-config.json
 
-# Properties for Clamp
-# DCAE request build properties
-#
-clamp.config.dcae.template=classpath:/clds/templates/dcae-template.json
-clamp.config.dcae.deployment.template=classpath:/clds/templates/dcae-deployment-template.json
-#
 #
 # Configuration Settings for Policy Engine Components
 clamp.config.policy.api.url=http4://policy.api.simpledemo.onap.org:6969
@@ -158,36 +152,9 @@
 clamp.config.policy.pap.userName=healthcheck
 clamp.config.policy.pap.password=zb!XztG34
 
-# TCA MicroService Policy request build properties
-#
-clamp.config.tca.policyid.prefix=DCAE.Config_
-clamp.config.tca.policy.template=classpath:/clds/templates/tca-policy-template.json
-clamp.config.tca.template=classpath:/clds/templates/tca-template.json
-clamp.config.tca.thresholds.template=classpath:/clds/templates/tca-thresholds-template.json
-
-#
-#
-# Operational Policy request build properties
-#
-clamp.config.op.policyDescription=from CLAMP
-# default
-clamp.config.op.templateName=ClosedLoopControlName
-clamp.config.op.operationTopic=APPC-CL
-clamp.config.op.notificationTopic=POLICY-CL-MGT
-clamp.config.op.controller=amsterdam
-clamp.config.op.policy.appc=APPC
 #
 # Sdc service properties
 clamp.config.sdc.csarFolder = /tmp/sdc-controllers
-clamp.config.sdc.blueprint.parser.mapping = classpath:/clds/blueprint-parser-mapping.json
-#
-clamp.config.ui.location.default=classpath:/clds/templates/ui-location-default.json
-#
-# if action.test.override is true, then any action will be marked as test=true (even if incoming action request had test=false); otherwise, test flag will be unchanged on the action request
-clamp.config.action.test.override=false
-# if action.insert.test.event is true, then insert event even if the action is set to test
-clamp.config.action.insert.test.event=false
-clamp.config.clds.service.cache.invalidate.after.seconds=120
 
 #DCAE Inventory Url Properties
 clamp.config.dcae.inventory.url=http4://dcae.api.simpledemo.onap.org:8080
diff --git a/src/main/resources/clds/camel/rest/clamp-api-v2.xml b/src/main/resources/clds/camel/rest/clamp-api-v2.xml
index 3ed272e..fbf9071 100644
--- a/src/main/resources/clds/camel/rest/clamp-api-v2.xml
+++ b/src/main/resources/clds/camel/rest/clamp-api-v2.xml
@@ -377,51 +377,56 @@
 					<split>
 						<simple>${exchangeProperty[loopObject].getMicroServicePolicies()}
 						</simple>
-						<setProperty propertyName="microServicePolicy">
+						<setProperty propertyName="policy">
 							<simple>${body}</simple>
 						</setProperty>
 						<log loggingLevel="INFO"
-							message="Processing Micro Service Policy: ${exchangeProperty[microServicePolicy].getName()}" />
+							message="Processing Micro Service Policy: ${exchangeProperty[policy].getName()}" />
 						<setProperty propertyName="raiseHttpExceptionFlag">
 							<simple resultType="java.lang.Boolean">false</simple>
 						</setProperty>
-						<to uri="direct:delete-micro-service-policy" />
-						<to uri="direct:create-micro-service-policy" />
+						<to uri="direct:delete-policy" />
+						<to uri="direct:create-policy" />
 					</split>
 					<log loggingLevel="INFO"
 						message="Processing all OPERATIONAL policies defined in loop ${exchangeProperty[loopObject].getName()}" />
 					<split>
 						<simple>${exchangeProperty[loopObject].getOperationalPolicies()}
 						</simple>
-						<setProperty propertyName="operationalPolicy">
+						<setProperty propertyName="policy">
 							<simple>${body}</simple>
 						</setProperty>
 						<log loggingLevel="INFO"
-							message="Processing Operational Policy: ${exchangeProperty[operationalPolicy].getName()}" />
+							message="Processing Operational Policy: ${exchangeProperty[policy].getName()}" />
 						<setProperty propertyName="raiseHttpExceptionFlag">
 							<simple resultType="java.lang.Boolean">false</simple>
 						</setProperty>
 
-						<to uri="direct:delete-operational-policy" />
-						<to uri="direct:create-operational-policy" />
+						<to uri="direct:delete-policy" />
+						<to uri="direct:create-policy" />
+						<choice>
+							<when>
+								<simple>${exchangeProperty['policy'].isLegacy()} == true
+								</simple>
+								<log loggingLevel="INFO"
+									message="Processing all GUARD policies (LEGACY) defined in loop ${exchangeProperty[loopObject].getName()}" />
+								<split>
+									<simple>${exchangeProperty[operationalPolicy].createGuardPolicyPayloads().entrySet()}
+									</simple>
+									<setProperty propertyName="guardPolicy">
+										<simple>${body}</simple>
+									</setProperty>
+									<log loggingLevel="INFO"
+										message="Processing Guard Policy: ${exchangeProperty[guardPolicy].getKey()}" />
 
-						<log loggingLevel="INFO"
-							message="Processing all GUARD policies defined in loop ${exchangeProperty[loopObject].getName()}" />
-						<split>
-							<simple>${exchangeProperty[operationalPolicy].createGuardPolicyPayloads().entrySet()}
-							</simple>
-							<setProperty propertyName="guardPolicy">
-								<simple>${body}</simple>
-							</setProperty>
-							<log loggingLevel="INFO"
-								message="Processing Guard Policy: ${exchangeProperty[guardPolicy].getKey()}" />
-
-							<setProperty propertyName="raiseHttpExceptionFlag">
-								<simple resultType="java.lang.Boolean">false</simple>
-							</setProperty>
-							<to uri="direct:delete-guard-policy" />
-							<to uri="direct:create-guard-policy" />
-						</split>
+									<setProperty propertyName="raiseHttpExceptionFlag">
+										<simple resultType="java.lang.Boolean">false</simple>
+									</setProperty>
+									<to uri="direct:delete-guard-policy" />
+									<to uri="direct:create-guard-policy" />
+								</split>
+							</when>
+						</choice>
 					</split>
 
 					<delay>
diff --git a/src/main/resources/clds/camel/routes/policy-flows.xml b/src/main/resources/clds/camel/routes/policy-flows.xml
index afc5f95..48e518d 100644
--- a/src/main/resources/clds/camel/routes/policy-flows.xml
+++ b/src/main/resources/clds/camel/routes/policy-flows.xml
@@ -183,6 +183,102 @@
 						</doFinally>
 				</doTry>
 		</route>
+		<route id="create-policy">
+			<from uri="direct:create-policy"/>
+			<doTry>
+				<log loggingLevel="INFO"
+					 message="Creating Policy: ${exchangeProperty[policy].getName()}"/>
+				<to
+						uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Policy')"/>
+				<setBody>
+					<simple>${exchangeProperty[policy].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 policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policy].getPolicyModel().getPolicyModelType()}/versions/${exchangeProperty[policy].getPolicyModel().getVersion()}/policies"></log>
+				<toD
+						uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policy].getPolicyModel().getPolicyModelType()}/versions/${exchangeProperty[policy].getPolicyModel().getVersion()}/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[policy].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-policy">
+			<from uri="direct:delete-policy"/>
+			<doTry>
+				<log loggingLevel="INFO"
+					 message="Deleting Policy: ${exchangeProperty[policy].getName()}"/>
+				<to
+						uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete 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[policy].getPolicyModel().getPolicyModelType()}/versions/${exchangeProperty[policy].getPolicyModel().getVersion()}/policies/${exchangeProperty[policy].getName()}/versions/1.0.0"></log>
+				<toD
+						uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policy].getPolicyModel().getPolicyModelType()}/versions/${exchangeProperty[policy].getPolicyModel().getVersion()}/policies/${exchangeProperty[policy].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[policy].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-micro-service-policy">
 				<from uri="direct:create-micro-service-policy"/>
 				<doTry>
diff --git a/src/test/java/org/onap/clamp/clds/it/config/CldsReferencePropertiesItCase.java b/src/test/java/org/onap/clamp/clds/it/config/CldsReferencePropertiesItCase.java
index c25415e..4bf2de0 100644
--- a/src/test/java/org/onap/clamp/clds/it/config/CldsReferencePropertiesItCase.java
+++ b/src/test/java/org/onap/clamp/clds/it/config/CldsReferencePropertiesItCase.java
@@ -24,17 +24,11 @@
 package org.onap.clamp.clds.it.config;
 
 import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
-import com.google.gson.JsonElement;
-
 import java.io.IOException;
-
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.onap.clamp.clds.config.ClampProperties;
+import org.onap.clamp.clds.util.ResourceFileUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
@@ -57,37 +51,6 @@
         assertEquals("healthcheck", refProp.getStringValue("policy.api.userName"));
     }
 
-    @Test
-    public void shouldReturnJsonFromTemplate() throws IOException {
-        // when
-        JsonElement root = refProp.getJsonTemplate("ui.location.default");
-
-        // then
-        assertNotNull(root);
-        assertTrue(root.isJsonObject());
-        assertEquals("Data Center 1", root.getAsJsonObject().get("DC1").getAsString());
-    }
-
-    @Test
-    public void shouldReturnJsonFromTemplate_2() throws IOException {
-        // when
-        JsonElement root = refProp.getJsonTemplate("ui.location", "default");
-
-        // then
-        assertNotNull(root);
-        assertTrue(root.isJsonObject());
-        assertEquals("Data Center 1", root.getAsJsonObject().get("DC1").getAsString());
-    }
-
-    @Test
-    public void shouldReturnNullIfPropertyNotFound() throws IOException {
-        // when
-        JsonElement root = refProp.getJsonTemplate("ui.location", "");
-
-        // then
-        assertNull(root);
-    }
-
     /**
      * Test getting prop value as a JSON Node / template.
      *
@@ -95,12 +58,9 @@
      */
     @Test
     public void testGetFileContent() throws IOException {
-        String location = "{\n\t\"DC1\": \"Data Center 1\","
-                + "\n\t\"DC2\": \"Data Center 2\",\n\t\"DC3\": \"Data Center 3\"\n}\n";
-        String content = refProp.getFileContent("ui.location.default");
-        assertEquals(location, content);
+        String users = ResourceFileUtil.getResourceAsString("clds/clds-users.json");
+        assertEquals(users, refProp.getFileContent("files.cldsUsers"));
         // Test composite key
-        content = refProp.getFileContent("ui.location", "default");
-        assertEquals(location, content);
+        assertEquals(users, refProp.getFileContent("files", "cldsUsers"));
     }
 }
diff --git a/src/test/java/org/onap/clamp/loop/CsarInstallerItCase.java b/src/test/java/org/onap/clamp/loop/CsarInstallerItCase.java
index a1499f7..fd215dd 100644
--- a/src/test/java/org/onap/clamp/loop/CsarInstallerItCase.java
+++ b/src/test/java/org/onap/clamp/loop/CsarInstallerItCase.java
@@ -34,9 +34,7 @@
 import java.util.List;
 import java.util.Map;
 import java.util.Optional;
-
 import javax.transaction.Transactional;
-
 import org.apache.commons.lang3.RandomStringUtils;
 import org.json.JSONException;
 import org.junit.Assert;
@@ -44,6 +42,7 @@
 import org.junit.runner.RunWith;
 import org.mockito.Mockito;
 import org.onap.clamp.clds.Application;
+import org.onap.clamp.clds.config.LegacyOperationalPolicy;
 import org.onap.clamp.clds.exception.sdc.controller.BlueprintParserException;
 import org.onap.clamp.clds.exception.sdc.controller.CsarHandlerException;
 import org.onap.clamp.clds.exception.sdc.controller.SdcArtifactInstallerException;
@@ -74,7 +73,7 @@
 
 @RunWith(SpringRunner.class)
 @SpringBootTest(classes = Application.class)
-@ActiveProfiles(profiles = "clamp-default,clamp-default-user,clamp-sdc-controller")
+@ActiveProfiles(profiles = "clamp-default,clamp-default-user,clamp-sdc-controller,legacy-operational-policy")
 public class CsarInstallerItCase {
 
     private static final String CSAR_ARTIFACT_NAME = "example/sdc/service_Vloadbalancerms_csar.csar";
@@ -162,6 +161,13 @@
 
     @Test
     @Transactional
+    public void testPolicyModelAddedAtStartup() {
+        assertThat(policyModelsRepository.findByPolicyModelType(
+                LegacyOperationalPolicy.OPERATIONAL_POLICY_LEGACY).get(0)).isNotNull();
+    }
+
+    @Test
+    @Transactional
     public void testGetPolicyModelYaml() throws IOException, SdcToscaParserException, CsarHandlerException {
         INotificationData notificationData = Mockito.mock(INotificationData.class);
         IArtifactInfo serviceArtifacts = Mockito.mock(IArtifactInfo.class);
diff --git a/src/test/java/org/onap/clamp/loop/LoopRepositoriesItCase.java b/src/test/java/org/onap/clamp/loop/LoopRepositoriesItCase.java
index 47b4b65..164625f 100644
--- a/src/test/java/org/onap/clamp/loop/LoopRepositoriesItCase.java
+++ b/src/test/java/org/onap/clamp/loop/LoopRepositoriesItCase.java
@@ -90,7 +90,8 @@
     }
 
     private OperationalPolicy getOperationalPolicy(String configJson, String name, PolicyModel policyModel) {
-        return new OperationalPolicy(name, null, new Gson().fromJson(configJson, JsonObject.class), policyModel, null, null, null);
+        return new OperationalPolicy(name, null, new Gson().fromJson(configJson, JsonObject.class), policyModel,
+                null, null, null);
     }
 
     private LoopElementModel getLoopElementModel(String yaml, String name, String policyType, String createdBy,
@@ -105,11 +106,13 @@
         return new PolicyModel(policyType, policyModelTosca, version, policyAcronym);
     }
 
-    private LoopTemplate getLoopTemplate(String name, String blueprint, String svgRepresentation, String createdBy,
-                                         Integer maxInstancesAllowed) {
+    private LoopTemplate getLoopTemplates(String name, String blueprint, String svgRepresentation, String createdBy,
+                                          Integer maxInstancesAllowed) {
         LoopTemplate template = new LoopTemplate(name, blueprint, svgRepresentation, maxInstancesAllowed, null);
         template.addLoopElementModel(getLoopElementModel("yaml", "microService1", "org.onap.policy.drools", createdBy,
                 getPolicyModel("org.onap.policy.drools", "yaml", "1.0.0", "Drools")));
+        template.addLoopElementModel(getLoopElementModel("yaml", "oppolicy1", "org.onap.policy.drools.legacy",
+                createdBy, getPolicyModel("org.onap.policy.drools.legacy", "yaml", "1.0.0", "DroolsLegacy")));
         loopTemplateRepository.save(template);
         return template;
     }
@@ -123,7 +126,7 @@
         loop.setLastComputedState(LoopState.DESIGN);
         loop.setDcaeDeploymentId(dcaeId);
         loop.setDcaeDeploymentStatusUrl(dcaeUrl);
-        loop.setLoopTemplate(getLoopTemplate("templateName", "yaml", "svg", "toto", 1));
+        loop.setLoopTemplate(getLoopTemplates("templateName", "yaml", "svg", "toto", 1));
         return loop;
     }
 
@@ -149,7 +152,7 @@
         Loop loopTest = getLoop("ControlLoopTest", "<xml></xml>", "yamlcontent", "{\"testname\":\"testvalue\"}",
                 "123456789", "https://dcaetest.org", "UUID-blueprint");
         OperationalPolicy opPolicy = this.getOperationalPolicy("{\"type\":\"GUARD\"}", "GuardOpPolicyTest",
-                getPolicyModel("org.onap.policy.drools", "yaml", "1.0.0", "Drools"));
+                getPolicyModel("org.onap.policy.drools.legacy", "yaml", "1.0.0", "DroolsLegacy"));
         loopTest.addOperationalPolicy(opPolicy);
         MicroServicePolicy microServicePolicy = getMicroServicePolicy("configPolicyTest", "{\"configtype\":\"json\"}",
                 "{\"param1\":\"value1\"}", true, getPolicyModel("org.onap.policy.drools", "yaml", "1.0.0", "Drools"));
diff --git a/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java b/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java
index de2ef14..6c7836e 100644
--- a/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java
+++ b/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java
@@ -37,6 +37,7 @@
 import org.junit.Test;
 import org.onap.clamp.clds.util.JsonUtils;
 import org.onap.clamp.clds.util.ResourceFileUtil;
+import org.onap.clamp.loop.components.external.PolicyComponent;
 import org.onap.clamp.loop.log.LogType;
 import org.onap.clamp.loop.log.LoopLog;
 import org.onap.clamp.loop.service.Service;
@@ -45,6 +46,7 @@
 import org.onap.clamp.loop.template.PolicyModel;
 import org.onap.clamp.policy.microservice.MicroServicePolicy;
 import org.onap.clamp.policy.operational.OperationalPolicy;
+import org.skyscreamer.jsonassert.JSONAssert;
 
 public class LoopToJsonTest {
 
@@ -52,7 +54,7 @@
 
     private OperationalPolicy getOperationalPolicy(String configJson, String name) {
         return new OperationalPolicy(name, null, gson.fromJson(configJson, JsonObject.class),
-                getPolicyModel("org.onap.policy.drools", "yaml", "1.0.0", "Drools", "type1"), null, null, null);
+                getPolicyModel("org.onap.policy.drools.legacy", "yaml", "1.0.0", "Drools", "type1"), null,null,null);
     }
 
     private Loop getLoop(String name, String svgRepresentation, String blueprint, String globalPropertiesJson,
diff --git a/src/test/java/org/onap/clamp/loop/PolicyComponentTest.java b/src/test/java/org/onap/clamp/loop/PolicyComponentTest.java
index 370c319..89d3e61 100644
--- a/src/test/java/org/onap/clamp/loop/PolicyComponentTest.java
+++ b/src/test/java/org/onap/clamp/loop/PolicyComponentTest.java
@@ -24,9 +24,9 @@
 package org.onap.clamp.loop;
 
 import static org.assertj.core.api.Assertions.assertThat;
+
 import com.google.gson.Gson;
 import com.google.gson.JsonObject;
-
 import java.io.IOException;
 import java.util.HashSet;
 import org.apache.camel.Exchange;
@@ -44,13 +44,13 @@
 public class PolicyComponentTest {
 
     /**
-    * Test the computeState method. 
-    * oldState           newState        expectedFinalState
-    * NOT_SENT      SENT_AND_DEPLOYED          NOT_SENT
-    * NOT_SENT             SENT                NOT_SENT
-    * NOT_SENT           NOT_SENT              NOT_SENT
-    * NOT_SENT           IN_ERROR              IN_ERROR
-    */
+     * Test the computeState method.
+     * oldState           newState        expectedFinalState
+     * NOT_SENT      SENT_AND_DEPLOYED          NOT_SENT
+     * NOT_SENT             SENT                NOT_SENT
+     * NOT_SENT           NOT_SENT              NOT_SENT
+     * NOT_SENT           IN_ERROR              IN_ERROR
+     */
     @Test
     public void computeStateTestOriginalStateUnknown() {
         Exchange exchange = Mockito.mock(Exchange.class);
@@ -81,14 +81,15 @@
         ExternalComponentState state3 = policy.computeState(exchange);
         assertThat(state3.getStateName()).isEqualTo("IN_ERROR");
     }
+
     /**
-    * Test the computeState method. 
-    * oldState           newState        expectedFinalState
-    * NOT_SENT      SENT_AND_DEPLOYED          NOT_SENT
-    * NOT_SENT             SENT                NOT_SENT
-    * NOT_SENT           NOT_SENT              NOT_SENT
-    * NOT_SENT           IN_ERROR              IN_ERROR
-    */
+     * Test the computeState method.
+     * oldState           newState        expectedFinalState
+     * NOT_SENT      SENT_AND_DEPLOYED          NOT_SENT
+     * NOT_SENT             SENT                NOT_SENT
+     * NOT_SENT           NOT_SENT              NOT_SENT
+     * NOT_SENT           IN_ERROR              IN_ERROR
+     */
     @Test
     public void computeStateTestOriginalStateNotSent() {
         Exchange exchange = Mockito.mock(Exchange.class);
@@ -124,13 +125,13 @@
 
 
     /**
-    * Test the computeState method. 
-    * oldState           newState        expectedFinalState
-    * SENT                 SENT                SENT
-    * SENT          SENT_AND_DEPLOYED          SENT
-    * SENT              IN_ERROR              IN_ERROR
-    * SENT              NOT_SENT              NOT_SENT
-    */
+     * Test the computeState method.
+     * oldState           newState        expectedFinalState
+     * SENT                 SENT                SENT
+     * SENT          SENT_AND_DEPLOYED          SENT
+     * SENT              IN_ERROR              IN_ERROR
+     * SENT              NOT_SENT              NOT_SENT
+     */
     @Test
     public void computeStateTestOriginalStateSent() throws IOException {
         Exchange exchange = Mockito.mock(Exchange.class);
@@ -166,13 +167,13 @@
     }
 
     /**
-    * Test the computeState method. 
-    * oldState                   newState        expectedFinalState
-    * SENT_AND_DEPLOYED     SENT_AND_DEPLOYED    SENT_AND_DEPLOYED
-    * SENT_AND_DEPLOYED            SENT                SENT
-    * SENT_AND_DEPLOYED          IN_ERROR            IN_ERROR
-    * SENT_AND_DEPLOYED          NOT_SENT            NOT_SENT
-    */
+     * Test the computeState method.
+     * oldState                   newState        expectedFinalState
+     * SENT_AND_DEPLOYED     SENT_AND_DEPLOYED    SENT_AND_DEPLOYED
+     * SENT_AND_DEPLOYED            SENT                SENT
+     * SENT_AND_DEPLOYED          IN_ERROR            IN_ERROR
+     * SENT_AND_DEPLOYED          NOT_SENT            NOT_SENT
+     */
     @Test
     public void computeStateTestOriginalStateSentAndDeployed() throws IOException {
         Exchange exchange = Mockito.mock(Exchange.class);
@@ -209,13 +210,13 @@
 
 
     /**
-    * Test the computeState method. 
-    * oldState           newState        expectedFinalState
-    * IN_ERROR     SENT_AND_DEPLOYED         IN_ERROR
-    * IN_ERROR            SENT               IN_ERROR
-    * IN_ERROR          IN_ERROR             IN_ERROR
-    * IN_ERROR          NOT_SENT             IN_ERROR
-    */
+     * Test the computeState method.
+     * oldState           newState        expectedFinalState
+     * IN_ERROR     SENT_AND_DEPLOYED         IN_ERROR
+     * IN_ERROR            SENT               IN_ERROR
+     * IN_ERROR          IN_ERROR             IN_ERROR
+     * IN_ERROR          NOT_SENT             IN_ERROR
+     */
     @Test
     public void computeStateTestOriginalStateInError() throws IOException {
         Exchange exchange = Mockito.mock(Exchange.class);
@@ -265,7 +266,8 @@
 
         PolicyModel policyModel2 = new PolicyModel("onap.policies.controlloop.Operational", null, "1.0.0");
         OperationalPolicy opPolicy = new OperationalPolicy("opPolicy", loopTest,
-                new Gson().fromJson("{\"configtype\":\"json\"}", JsonObject.class), policyModel2, null, "pdpGroup2", "pdpSubgroup2");
+                new Gson().fromJson("{\"configtype\":\"json\"}", JsonObject.class), policyModel2, null, "pdpGroup2",
+                "pdpSubgroup2");
         loopTest.addOperationalPolicy(opPolicy);
 
         LoopTemplate loopTemplate = new LoopTemplate("test", "yaml", "svg", 1, null);
diff --git a/src/test/java/org/onap/clamp/loop/PolicyModelServiceItCase.java b/src/test/java/org/onap/clamp/loop/PolicyModelServiceItCase.java
index d918a8e..b16aa55 100644
--- a/src/test/java/org/onap/clamp/loop/PolicyModelServiceItCase.java
+++ b/src/test/java/org/onap/clamp/loop/PolicyModelServiceItCase.java
@@ -119,7 +119,7 @@
     /**
      * This tests a create Policy Model from Tosca.
      *
-     * @throws IOException
+     * @throws IOException In case of failure
      */
     @Test
     @Transactional
@@ -137,7 +137,7 @@
     /**
      * This tests a update Policy Model.
      *
-     * @throws IOException
+     * @throws IOException In case of failure
      */
     @Test
     @Transactional
diff --git a/src/test/java/org/onap/clamp/policy/downloader/PolicyEngineControllerTestItCase.java b/src/test/java/org/onap/clamp/policy/downloader/PolicyEngineControllerTestItCase.java
index 3f502ff..2cd3018 100644
--- a/src/test/java/org/onap/clamp/policy/downloader/PolicyEngineControllerTestItCase.java
+++ b/src/test/java/org/onap/clamp/policy/downloader/PolicyEngineControllerTestItCase.java
@@ -68,9 +68,12 @@
         Instant firstExecution = policyController.getLastInstantExecuted();
         assertThat(firstExecution).isNotNull();
         List<PolicyModel> policyModelsList = policyModelsRepository.findAll();
-        assertThat(policyModelsList.size()).isGreaterThanOrEqualTo(8);
-        assertThat(policyModelsList).contains(new PolicyModel("onap.policies.Monitoring", null, "1.0.0"));
-        assertThat(policyModelsList).contains(new PolicyModel("onap.policies.controlloop.Operational", null, "1.0.0"));
+        assertThat(policyModelsList.size()).isGreaterThanOrEqualTo(5);
+        assertThat(policyModelsList).contains(new PolicyModel("onap.policies.controlloop.operational.Drools", null, "1.0.0"));
+        assertThat(policyModelsList).contains(new PolicyModel("onap.policies.controlloop.operational.Apex", null, "1.0.0"));
+        assertThat(policyModelsList).contains(new PolicyModel("onap.policies.controlloop.guard.FrequencyLimiter", null, "1.0.0"));
+        assertThat(policyModelsList).contains(new PolicyModel("onap.policies.controlloop.guard.Blacklist", null, "1.0.0"));
+        assertThat(policyModelsList).contains(new PolicyModel("onap.policies.controlloop.guard.MinMax", null, "2.0.0"));
 
         // Re-do it to check that there is no issue with duplicate key
         policyController.synchronizeAllPolicies();
diff --git a/src/test/java/org/onap/clamp/policy/microservice/OperationalPolicyPayloadTest.java b/src/test/java/org/onap/clamp/policy/microservice/OperationalPolicyPayloadTest.java
index 5686bc1..4b8eee9 100644
--- a/src/test/java/org/onap/clamp/policy/microservice/OperationalPolicyPayloadTest.java
+++ b/src/test/java/org/onap/clamp/policy/microservice/OperationalPolicyPayloadTest.java
@@ -31,6 +31,7 @@
 import java.util.Map;
 import org.junit.Test;
 import org.onap.clamp.clds.util.ResourceFileUtil;
+import org.onap.clamp.loop.template.PolicyModel;
 import org.onap.clamp.policy.operational.LegacyOperationalPolicy;
 import org.onap.clamp.policy.operational.OperationalPolicy;
 import org.skyscreamer.jsonassert.JSONAssert;
@@ -38,10 +39,11 @@
 public class OperationalPolicyPayloadTest {
 
     @Test
-    public void testOperationalPolicyPayloadConstruction() throws IOException {
+    public void testOperationalPolicyLegacyPayloadConstruction() throws IOException {
         JsonObject jsonConfig = new GsonBuilder().create().fromJson(
                 ResourceFileUtil.getResourceAsString("tosca/operational-policy-properties.json"), JsonObject.class);
-        OperationalPolicy policy = new OperationalPolicy("testPolicy", null, jsonConfig, null, null, null, null);
+        OperationalPolicy policy = new OperationalPolicy("testPolicy.legacy", null, jsonConfig,
+                new PolicyModel("onap.policies.controlloop.Operational.legacy","","1.0.0","test"), null,null,null);
 
         assertThat(policy.createPolicyPayloadYaml())
                 .isEqualTo(ResourceFileUtil.getResourceAsString("tosca/operational-policy-payload.yaml"));
diff --git a/src/test/resources/application.properties b/src/test/resources/application.properties
index 5b921e9..e842abd 100644
--- a/src/test/resources/application.properties
+++ b/src/test/resources/application.properties
@@ -128,12 +128,6 @@
 clamp.config.files.globalProperties=classpath:/clds/templates/globalProperties.json
 clamp.config.files.sdcController=classpath:/clds/sdc-controllers-config.json
 
-# Properties for Clamp
-# DCAE request build properties
-#
-clamp.config.dcae.template=classpath:/clds/templates/dcae-template.json
-clamp.config.dcae.deployment.template=classpath:/clds/templates/dcae-deployment-template.json
-#
 #
 # Configuration Settings for Policy Engine Components
 clamp.config.policy.api.url=http4://localhost:${docker.http-cache.port.host}
@@ -143,37 +137,9 @@
 clamp.config.policy.pap.userName=healthcheck
 clamp.config.policy.pap.password=zb!XztG34
 
-# TCA MicroService Policy request build properties
-#
-clamp.config.tca.policyid.prefix=DCAE.Config_
-clamp.config.tca.policy.template=classpath:/clds/templates/tca-policy-template.json
-clamp.config.tca.template=classpath:/clds/templates/tca-template.json
-clamp.config.tca.thresholds.template=classpath:/clds/templates/tca-thresholds-template.json
-
-#
-#
-# Operational Policy request build properties
-#
-clamp.config.op.policyDescription=from clds
-# default
-clamp.config.op.templateName=ClosedLoopControlName
-clamp.config.op.operationTopic=APPC-CL
-clamp.config.op.notificationTopic=POLICY-CL-MGT
-clamp.config.op.controller=amsterdam
-clamp.config.op.policy.appc=APPC
-#
 # Sdc service properties
 #
 clamp.config.sdc.csarFolder = ${project.build.directory}/sdc-tests
-clamp.config.sdc.blueprint.parser.mapping = classpath:/clds/blueprint-parser-mapping.json
-#
-clamp.config.ui.location.default=classpath:/clds/templates/ui-location-default.json
-#
-# if action.test.override is true, then any action will be marked as test=true (even if incoming action request had test=false); otherwise, test flag will be unchanged on the action request
-clamp.config.action.test.override=false
-# if action.insert.test.event is true, then insert event even if the action is set to test
-clamp.config.action.insert.test.event=false
-clamp.config.clds.service.cache.invalidate.after.seconds=120
 
 #DCAE Inventory Url Properties
 clamp.config.dcae.inventory.url=http4://localhost:${docker.http-cache.port.host}
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes&\04363;connectionTimeToLive=5000/.file" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes&\04363;connectionTimeToLive=5000/.file"
index ab3b40e..4b27438 100644
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes&\04363;connectionTimeToLive=5000/.file"
+++ "b/src/test/resources/http-cache/example/policy/api/v1/policytypes&\04363;connectionTimeToLive=5000/.file"
@@ -1,40 +1,19 @@
 tosca_definitions_version: tosca_simple_yaml_1_0_0
 policy_types:
-  - onap.policies.Monitoring:
-      version: 1.0.0
-      description: A base policy type for all policies that govern monitoring provision
-      derived_from: tosca.policies.Root
-      properties:
-        # Omitted for brevity, see Section 1
-
-  - onap.policies.controlloop.Operational:
-      version: 1.0.0
-      description: Operational Policy for Control Loops
-      derived_from: tosca.policies.Root
-      properties:
-        # Omitted for brevity, see Section 1
-
-  - onap.policies.controloop.operational.Drools:
+  - onap.policies.controlloop.operational.Drools:
       version: 1.0.0
       description: Operational Policy for Control Loops using the Drools PDP
-      derived_from: onap.policies.controlloop.Operational
+      derived_from: onapy.policies.controlloop.Operational
       properties:
         # Omitted for brevity, see Section 1
 
-  - onap.policies.controloop.operational.Apex:
+  - onap.policies.controlloop.operational.Apex:
       version: 1.0.0
       description: Operational Policy for Control Loops using the APEX PDP
       derived_from: onap.policies.controlloop.Operational
       properties:
         # Omitted for brevity, see Section 1
 
-  - onap.policies.controlloop.Guard:
-      version: 1.0.0
-      description: Operational Policy for Control Loops
-      derived_from: tosca.policies.Root
-      properties:
-        # Omitted for brevity, see Section 1
-
   - onap.policies.controlloop.guard.FrequencyLimiter:
       version: 1.0.0
       description: Supports limiting the frequency of actions being taken by a Actor.
@@ -50,7 +29,7 @@
         # Omitted for brevity, see Section 1
 
   - onap.policies.controlloop.guard.MinMax:
-      version: 1.0.0
+      version: 2.0.0
       description: Supports Min/Max number of VF Modules
       derived_from: onap.policies.controlloop.Guard
       properties:
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0&\04363;connectionTimeToLive=5000/.file" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
deleted file mode 100644
index b0119f8..0000000
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
+++ /dev/null
@@ -1,158 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-policy_types:
-    onap.policies.Monitoring:
-        derived_from: tosca.policies.Root
-        description: a base policy type for all policies that governs monitoring provisioning
-    onap.policies.monitoring.cdap.tca.hi.lo.app:
-        derived_from: onap.policies.Monitoring
-        version: 1.0.0
-        properties:
-            tca_policy:
-                type: map
-                description: TCA Policy JSON
-                entry_schema:
-                    type: onap.datatypes.monitoring.tca_policy
-data_types:
-    onap.datatypes.monitoring.metricsPerEventName:
-        derived_from: tosca.datatypes.Root
-        properties:
-            controlLoopSchemaType:
-                type: string
-                required: true
-                description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM
-                constraints:
-                  - valid_values:
-                      - VM
-                      - VNF
-            eventName:
-                type: string
-                required: true
-                description: Event name to which thresholds need to be applied
-            policyName:
-                type: string
-                required: true
-                description: TCA Policy Scope Name
-            policyScope:
-                type: string
-                required: true
-                description: TCA Policy Scope
-            policyVersion:
-                type: string
-                required: true
-                description: TCA Policy Scope Version
-            thresholds:
-                type: list
-                required: true
-                description: Thresholds associated with eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.thresholds
-    onap.datatypes.monitoring.tca_policy:
-        derived_from: tosca.datatypes.Root
-        properties:
-            domain:
-                type: string
-                required: true
-                description: Domain name to which TCA needs to be applied
-                default: measurementsForVfScaling
-                constraints:
-                  - equal: measurementsForVfScaling
-            metricsPerEventName:
-                type: list
-                required: true
-                description: Contains eventName and threshold details that need to be applied to given eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.metricsPerEventName
-    onap.datatypes.monitoring.thresholds:
-        derived_from: tosca.datatypes.Root
-        properties:
-            closedLoopControlName:
-                type: string
-                required: true
-                description: Closed Loop Control Name associated with the threshold
-            closedLoopEventStatus:
-                type: string
-                required: true
-                description: Closed Loop Event Status of the threshold
-                constraints:
-                  - valid_values:
-                      - ONSET
-                      - ABATED
-            direction:
-                type: string
-                required: true
-                description: Direction of the threshold
-                constraints:
-                  - valid_values:
-                      - LESS
-                      - LESS_OR_EQUAL
-                      - GREATER
-                      - GREATER_OR_EQUAL
-                      - EQUAL
-            fieldPath:
-                type: string
-                required: true
-                description: Json field Path as per CEF message which needs to be analyzed for TCA
-                constraints:
-                  - valid_values:
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage
-                      - $.event.measurementsForVfScalingFields.meanRequestLatency
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed
-                      - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value
-            severity:
-                type: string
-                required: true
-                description: Threshold Event Severity
-                constraints:
-                  - valid_values:
-                      - CRITICAL
-                      - MAJOR
-                      - MINOR
-                      - WARNING
-                      - NORMAL
-            thresholdValue:
-                type: integer
-                required: true
-                description: Threshold value for the field Path inside CEF message
-            version:
-                type: string
-                required: true
-                description: Version number associated with the threshold
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0&\04363;connectionTimeToLive=5000/.header" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0&\04363;connectionTimeToLive=5000/.header"
deleted file mode 100644
index 6a280d9..0000000
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0&\04363;connectionTimeToLive=5000/.header"
+++ /dev/null
@@ -1 +0,0 @@
-{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"}
\ No newline at end of file
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0&\04363;connectionTimeToLive=5000/.file" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
deleted file mode 100644
index b0119f8..0000000
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
+++ /dev/null
@@ -1,158 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-policy_types:
-    onap.policies.Monitoring:
-        derived_from: tosca.policies.Root
-        description: a base policy type for all policies that governs monitoring provisioning
-    onap.policies.monitoring.cdap.tca.hi.lo.app:
-        derived_from: onap.policies.Monitoring
-        version: 1.0.0
-        properties:
-            tca_policy:
-                type: map
-                description: TCA Policy JSON
-                entry_schema:
-                    type: onap.datatypes.monitoring.tca_policy
-data_types:
-    onap.datatypes.monitoring.metricsPerEventName:
-        derived_from: tosca.datatypes.Root
-        properties:
-            controlLoopSchemaType:
-                type: string
-                required: true
-                description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM
-                constraints:
-                  - valid_values:
-                      - VM
-                      - VNF
-            eventName:
-                type: string
-                required: true
-                description: Event name to which thresholds need to be applied
-            policyName:
-                type: string
-                required: true
-                description: TCA Policy Scope Name
-            policyScope:
-                type: string
-                required: true
-                description: TCA Policy Scope
-            policyVersion:
-                type: string
-                required: true
-                description: TCA Policy Scope Version
-            thresholds:
-                type: list
-                required: true
-                description: Thresholds associated with eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.thresholds
-    onap.datatypes.monitoring.tca_policy:
-        derived_from: tosca.datatypes.Root
-        properties:
-            domain:
-                type: string
-                required: true
-                description: Domain name to which TCA needs to be applied
-                default: measurementsForVfScaling
-                constraints:
-                  - equal: measurementsForVfScaling
-            metricsPerEventName:
-                type: list
-                required: true
-                description: Contains eventName and threshold details that need to be applied to given eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.metricsPerEventName
-    onap.datatypes.monitoring.thresholds:
-        derived_from: tosca.datatypes.Root
-        properties:
-            closedLoopControlName:
-                type: string
-                required: true
-                description: Closed Loop Control Name associated with the threshold
-            closedLoopEventStatus:
-                type: string
-                required: true
-                description: Closed Loop Event Status of the threshold
-                constraints:
-                  - valid_values:
-                      - ONSET
-                      - ABATED
-            direction:
-                type: string
-                required: true
-                description: Direction of the threshold
-                constraints:
-                  - valid_values:
-                      - LESS
-                      - LESS_OR_EQUAL
-                      - GREATER
-                      - GREATER_OR_EQUAL
-                      - EQUAL
-            fieldPath:
-                type: string
-                required: true
-                description: Json field Path as per CEF message which needs to be analyzed for TCA
-                constraints:
-                  - valid_values:
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage
-                      - $.event.measurementsForVfScalingFields.meanRequestLatency
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed
-                      - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value
-            severity:
-                type: string
-                required: true
-                description: Threshold Event Severity
-                constraints:
-                  - valid_values:
-                      - CRITICAL
-                      - MAJOR
-                      - MINOR
-                      - WARNING
-                      - NORMAL
-            thresholdValue:
-                type: integer
-                required: true
-                description: Threshold value for the field Path inside CEF message
-            version:
-                type: string
-                required: true
-                description: Version number associated with the threshold
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0&\04363;connectionTimeToLive=5000/.header" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0&\04363;connectionTimeToLive=5000/.header"
deleted file mode 100644
index 6a280d9..0000000
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.Operational/versions/1.0.0&\04363;connectionTimeToLive=5000/.header"
+++ /dev/null
@@ -1 +0,0 @@
-{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"}
\ No newline at end of file
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.Blacklist/versions/1.0.0&\04363;connectionTimeToLive=5000/.file" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.Blacklist/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
index b0119f8..91a8252 100644
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.Blacklist/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
+++ "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.Blacklist/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
@@ -1,158 +1,40 @@
 tosca_definitions_version: tosca_simple_yaml_1_0_0
 policy_types:
-    onap.policies.Monitoring:
-        derived_from: tosca.policies.Root
-        description: a base policy type for all policies that governs monitoring provisioning
-    onap.policies.monitoring.cdap.tca.hi.lo.app:
-        derived_from: onap.policies.Monitoring
-        version: 1.0.0
-        properties:
-            tca_policy:
-                type: map
-                description: TCA Policy JSON
-                entry_schema:
-                    type: onap.datatypes.monitoring.tca_policy
+   onap.policies.controlloop.Guard:
+      derived_from: tosca.policies.Root
+      version: 1.0.0
+      description: Guard Policies for Control Loop Operational Policies
+   onap.policies.controlloop.guard.Blacklist:
+      derived_from: onap.policies.controlloop.Guard
+      version: 1.0.0
+      description: Supports blacklist of VNF's from performing control loop actions on.
+      properties:
+         blacklist_policy:
+            type: map
+            description: null
+            entry_schema:
+               type: onap.datatypes.guard.Blacklist
 data_types:
-    onap.datatypes.monitoring.metricsPerEventName:
-        derived_from: tosca.datatypes.Root
-        properties:
-            controlLoopSchemaType:
-                type: string
-                required: true
-                description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM
-                constraints:
-                  - valid_values:
-                      - VM
-                      - VNF
-            eventName:
-                type: string
-                required: true
-                description: Event name to which thresholds need to be applied
-            policyName:
-                type: string
-                required: true
-                description: TCA Policy Scope Name
-            policyScope:
-                type: string
-                required: true
-                description: TCA Policy Scope
-            policyVersion:
-                type: string
-                required: true
-                description: TCA Policy Scope Version
-            thresholds:
-                type: list
-                required: true
-                description: Thresholds associated with eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.thresholds
-    onap.datatypes.monitoring.tca_policy:
-        derived_from: tosca.datatypes.Root
-        properties:
-            domain:
-                type: string
-                required: true
-                description: Domain name to which TCA needs to be applied
-                default: measurementsForVfScaling
-                constraints:
-                  - equal: measurementsForVfScaling
-            metricsPerEventName:
-                type: list
-                required: true
-                description: Contains eventName and threshold details that need to be applied to given eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.metricsPerEventName
-    onap.datatypes.monitoring.thresholds:
-        derived_from: tosca.datatypes.Root
-        properties:
-            closedLoopControlName:
-                type: string
-                required: true
-                description: Closed Loop Control Name associated with the threshold
-            closedLoopEventStatus:
-                type: string
-                required: true
-                description: Closed Loop Event Status of the threshold
-                constraints:
-                  - valid_values:
-                      - ONSET
-                      - ABATED
-            direction:
-                type: string
-                required: true
-                description: Direction of the threshold
-                constraints:
-                  - valid_values:
-                      - LESS
-                      - LESS_OR_EQUAL
-                      - GREATER
-                      - GREATER_OR_EQUAL
-                      - EQUAL
-            fieldPath:
-                type: string
-                required: true
-                description: Json field Path as per CEF message which needs to be analyzed for TCA
-                constraints:
-                  - valid_values:
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage
-                      - $.event.measurementsForVfScalingFields.meanRequestLatency
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed
-                      - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value
-            severity:
-                type: string
-                required: true
-                description: Threshold Event Severity
-                constraints:
-                  - valid_values:
-                      - CRITICAL
-                      - MAJOR
-                      - MINOR
-                      - WARNING
-                      - NORMAL
-            thresholdValue:
-                type: integer
-                required: true
-                description: Threshold value for the field Path inside CEF message
-            version:
-                type: string
-                required: true
-                description: Version number associated with the threshold
+   onap.datatypes.guard.Blacklist:
+      derived_from: tosca.datatypes.Root
+      properties:
+         actor:
+            type: string
+            description: Specifies the Actor
+            required: true
+         recipe:
+            type: string
+            description: Specified the Recipe
+            required: true
+         time_range:
+            type: tosca.datatypes.TimeInterval
+            description: An optional range of time during the day the blacklist is valid for.
+            required: false
+         controlLoopName:
+            type: string
+            description: An optional specific control loop to apply this guard to.
+            required: false
+         blacklist:
+            type: list
+            description: List of VNF's
+            required: true
\ No newline at end of file
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.FrequencyLimiter/versions/1.0.0&\04363;connectionTimeToLive=5000/.file" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.FrequencyLimiter/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
index b0119f8..45e5471 100644
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.FrequencyLimiter/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
+++ "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.FrequencyLimiter/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
@@ -1,158 +1,50 @@
 tosca_definitions_version: tosca_simple_yaml_1_0_0
 policy_types:
-    onap.policies.Monitoring:
-        derived_from: tosca.policies.Root
-        description: a base policy type for all policies that governs monitoring provisioning
-    onap.policies.monitoring.cdap.tca.hi.lo.app:
-        derived_from: onap.policies.Monitoring
-        version: 1.0.0
-        properties:
-            tca_policy:
-                type: map
-                description: TCA Policy JSON
-                entry_schema:
-                    type: onap.datatypes.monitoring.tca_policy
+   onap.policies.controlloop.Guard:
+      derived_from: tosca.policies.Root
+      version: 1.0.0
+      description: Guard Policies for Control Loop Operational Policies
+   onap.policies.controlloop.guard.FrequencyLimiter:
+      derived_from: onap.policies.controlloop.Guard
+      version: 1.0.0
+      description: Supports limiting the frequency of actions being taken by a Actor.
+      properties:
+         frequency_policy:
+            type: map
+            description: null
+            entry_schema:
+               type: onap.datatypes.guard.FrequencyLimiter
 data_types:
-    onap.datatypes.monitoring.metricsPerEventName:
-        derived_from: tosca.datatypes.Root
-        properties:
-            controlLoopSchemaType:
-                type: string
-                required: true
-                description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM
-                constraints:
-                  - valid_values:
-                      - VM
-                      - VNF
-            eventName:
-                type: string
-                required: true
-                description: Event name to which thresholds need to be applied
-            policyName:
-                type: string
-                required: true
-                description: TCA Policy Scope Name
-            policyScope:
-                type: string
-                required: true
-                description: TCA Policy Scope
-            policyVersion:
-                type: string
-                required: true
-                description: TCA Policy Scope Version
-            thresholds:
-                type: list
-                required: true
-                description: Thresholds associated with eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.thresholds
-    onap.datatypes.monitoring.tca_policy:
-        derived_from: tosca.datatypes.Root
-        properties:
-            domain:
-                type: string
-                required: true
-                description: Domain name to which TCA needs to be applied
-                default: measurementsForVfScaling
-                constraints:
-                  - equal: measurementsForVfScaling
-            metricsPerEventName:
-                type: list
-                required: true
-                description: Contains eventName and threshold details that need to be applied to given eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.metricsPerEventName
-    onap.datatypes.monitoring.thresholds:
-        derived_from: tosca.datatypes.Root
-        properties:
-            closedLoopControlName:
-                type: string
-                required: true
-                description: Closed Loop Control Name associated with the threshold
-            closedLoopEventStatus:
-                type: string
-                required: true
-                description: Closed Loop Event Status of the threshold
-                constraints:
-                  - valid_values:
-                      - ONSET
-                      - ABATED
-            direction:
-                type: string
-                required: true
-                description: Direction of the threshold
-                constraints:
-                  - valid_values:
-                      - LESS
-                      - LESS_OR_EQUAL
-                      - GREATER
-                      - GREATER_OR_EQUAL
-                      - EQUAL
-            fieldPath:
-                type: string
-                required: true
-                description: Json field Path as per CEF message which needs to be analyzed for TCA
-                constraints:
-                  - valid_values:
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage
-                      - $.event.measurementsForVfScalingFields.meanRequestLatency
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed
-                      - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value
-            severity:
-                type: string
-                required: true
-                description: Threshold Event Severity
-                constraints:
-                  - valid_values:
-                      - CRITICAL
-                      - MAJOR
-                      - MINOR
-                      - WARNING
-                      - NORMAL
-            thresholdValue:
-                type: integer
-                required: true
-                description: Threshold value for the field Path inside CEF message
-            version:
-                type: string
-                required: true
-                description: Version number associated with the threshold
+   onap.datatypes.guard.FrequencyLimiter:
+      derived_from: tosca.datatypes.Root
+      properties:
+         actor:
+            type: string
+            description: Specifies the Actor
+            required: true
+         recipe:
+            type: string
+            description: Specified the Recipe
+            required: true
+         time_window:
+            type: scalar-unit.time
+            description: The time window to count the actions against.
+            required: true
+         limit:
+            type: integer
+            description: The limit
+            required: true
+            constraints:
+            -  greater_than: 0
+         time_range:
+            type: tosca.datatypes.TimeInterval
+            description: An optional range of time during the day the frequency is valid for.
+            required: false
+         controlLoopName:
+            type: string
+            description: An optional specific control loop to apply this guard to.
+            required: false
+         target:
+            type: string
+            description: An optional specific VNF to apply this guard to.
+            required: false
\ No newline at end of file
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.MinMax/versions/1.0.0&\04363;connectionTimeToLive=5000/.file" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.MinMax/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
index b0119f8..54c4204 100644
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.MinMax/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
+++ "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controlloop.guard.MinMax/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
@@ -1,158 +1,44 @@
 tosca_definitions_version: tosca_simple_yaml_1_0_0
 policy_types:
-    onap.policies.Monitoring:
-        derived_from: tosca.policies.Root
-        description: a base policy type for all policies that governs monitoring provisioning
-    onap.policies.monitoring.cdap.tca.hi.lo.app:
-        derived_from: onap.policies.Monitoring
-        version: 1.0.0
-        properties:
-            tca_policy:
-                type: map
-                description: TCA Policy JSON
-                entry_schema:
-                    type: onap.datatypes.monitoring.tca_policy
+   onap.policies.controlloop.Guard:
+      derived_from: tosca.policies.Root
+      version: 1.0.0
+      description: Guard Policies for Control Loop Operational Policies
+   onap.policies.controlloop.guard.MinMax:
+      derived_from: onap.policies.controlloop.Guard
+      version: 1.0.0
+      description: Supports Min/Max number of VF Modules
+      properties:
+         minmax_policy:
+            type: map
+            description: null
+            entry_schema:
+               type: onap.datatypes.guard.MinMax
 data_types:
-    onap.datatypes.monitoring.metricsPerEventName:
-        derived_from: tosca.datatypes.Root
-        properties:
-            controlLoopSchemaType:
-                type: string
-                required: true
-                description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM
-                constraints:
-                  - valid_values:
-                      - VM
-                      - VNF
-            eventName:
-                type: string
-                required: true
-                description: Event name to which thresholds need to be applied
-            policyName:
-                type: string
-                required: true
-                description: TCA Policy Scope Name
-            policyScope:
-                type: string
-                required: true
-                description: TCA Policy Scope
-            policyVersion:
-                type: string
-                required: true
-                description: TCA Policy Scope Version
-            thresholds:
-                type: list
-                required: true
-                description: Thresholds associated with eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.thresholds
-    onap.datatypes.monitoring.tca_policy:
-        derived_from: tosca.datatypes.Root
-        properties:
-            domain:
-                type: string
-                required: true
-                description: Domain name to which TCA needs to be applied
-                default: measurementsForVfScaling
-                constraints:
-                  - equal: measurementsForVfScaling
-            metricsPerEventName:
-                type: list
-                required: true
-                description: Contains eventName and threshold details that need to be applied to given eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.metricsPerEventName
-    onap.datatypes.monitoring.thresholds:
-        derived_from: tosca.datatypes.Root
-        properties:
-            closedLoopControlName:
-                type: string
-                required: true
-                description: Closed Loop Control Name associated with the threshold
-            closedLoopEventStatus:
-                type: string
-                required: true
-                description: Closed Loop Event Status of the threshold
-                constraints:
-                  - valid_values:
-                      - ONSET
-                      - ABATED
-            direction:
-                type: string
-                required: true
-                description: Direction of the threshold
-                constraints:
-                  - valid_values:
-                      - LESS
-                      - LESS_OR_EQUAL
-                      - GREATER
-                      - GREATER_OR_EQUAL
-                      - EQUAL
-            fieldPath:
-                type: string
-                required: true
-                description: Json field Path as per CEF message which needs to be analyzed for TCA
-                constraints:
-                  - valid_values:
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage
-                      - $.event.measurementsForVfScalingFields.meanRequestLatency
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed
-                      - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value
-            severity:
-                type: string
-                required: true
-                description: Threshold Event Severity
-                constraints:
-                  - valid_values:
-                      - CRITICAL
-                      - MAJOR
-                      - MINOR
-                      - WARNING
-                      - NORMAL
-            thresholdValue:
-                type: integer
-                required: true
-                description: Threshold value for the field Path inside CEF message
-            version:
-                type: string
-                required: true
-                description: Version number associated with the threshold
+   onap.datatypes.guard.MinMax:
+      derived_from: tosca.datatypes.Root
+      properties:
+         actor:
+            type: string
+            description: Specifies the Actor
+            required: true
+         recipe:
+            type: string
+            description: Specified the Recipe
+            required: true
+         time_range:
+            type: tosca.datatypes.TimeInterval
+            description: An optional range of time during the day the Min/Max limit is valid for.
+            required: false
+         controlLoopName:
+            type: string
+            description: An optional specific control loop to apply this guard to.
+            required: false
+         min_vf_module_instances:
+            type: integer
+            required: true
+            description: The minimum instances of this VF-Module
+         max_vf_module_instances:
+            type: integer
+            required: false
+            description: The maximum instances of this VF-Module
\ No newline at end of file
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Apex/versions/1.0.0&\04363;connectionTimeToLive=5000/.file" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Apex/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
deleted file mode 100644
index b0119f8..0000000
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Apex/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
+++ /dev/null
@@ -1,158 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-policy_types:
-    onap.policies.Monitoring:
-        derived_from: tosca.policies.Root
-        description: a base policy type for all policies that governs monitoring provisioning
-    onap.policies.monitoring.cdap.tca.hi.lo.app:
-        derived_from: onap.policies.Monitoring
-        version: 1.0.0
-        properties:
-            tca_policy:
-                type: map
-                description: TCA Policy JSON
-                entry_schema:
-                    type: onap.datatypes.monitoring.tca_policy
-data_types:
-    onap.datatypes.monitoring.metricsPerEventName:
-        derived_from: tosca.datatypes.Root
-        properties:
-            controlLoopSchemaType:
-                type: string
-                required: true
-                description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM
-                constraints:
-                  - valid_values:
-                      - VM
-                      - VNF
-            eventName:
-                type: string
-                required: true
-                description: Event name to which thresholds need to be applied
-            policyName:
-                type: string
-                required: true
-                description: TCA Policy Scope Name
-            policyScope:
-                type: string
-                required: true
-                description: TCA Policy Scope
-            policyVersion:
-                type: string
-                required: true
-                description: TCA Policy Scope Version
-            thresholds:
-                type: list
-                required: true
-                description: Thresholds associated with eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.thresholds
-    onap.datatypes.monitoring.tca_policy:
-        derived_from: tosca.datatypes.Root
-        properties:
-            domain:
-                type: string
-                required: true
-                description: Domain name to which TCA needs to be applied
-                default: measurementsForVfScaling
-                constraints:
-                  - equal: measurementsForVfScaling
-            metricsPerEventName:
-                type: list
-                required: true
-                description: Contains eventName and threshold details that need to be applied to given eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.metricsPerEventName
-    onap.datatypes.monitoring.thresholds:
-        derived_from: tosca.datatypes.Root
-        properties:
-            closedLoopControlName:
-                type: string
-                required: true
-                description: Closed Loop Control Name associated with the threshold
-            closedLoopEventStatus:
-                type: string
-                required: true
-                description: Closed Loop Event Status of the threshold
-                constraints:
-                  - valid_values:
-                      - ONSET
-                      - ABATED
-            direction:
-                type: string
-                required: true
-                description: Direction of the threshold
-                constraints:
-                  - valid_values:
-                      - LESS
-                      - LESS_OR_EQUAL
-                      - GREATER
-                      - GREATER_OR_EQUAL
-                      - EQUAL
-            fieldPath:
-                type: string
-                required: true
-                description: Json field Path as per CEF message which needs to be analyzed for TCA
-                constraints:
-                  - valid_values:
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage
-                      - $.event.measurementsForVfScalingFields.meanRequestLatency
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed
-                      - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value
-            severity:
-                type: string
-                required: true
-                description: Threshold Event Severity
-                constraints:
-                  - valid_values:
-                      - CRITICAL
-                      - MAJOR
-                      - MINOR
-                      - WARNING
-                      - NORMAL
-            thresholdValue:
-                type: integer
-                required: true
-                description: Threshold value for the field Path inside CEF message
-            version:
-                type: string
-                required: true
-                description: Version number associated with the threshold
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Apex/versions/1.0.0&\04363;connectionTimeToLive=5000/.header" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Apex/versions/1.0.0&\04363;connectionTimeToLive=5000/.header"
deleted file mode 100644
index 6a280d9..0000000
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Apex/versions/1.0.0&\04363;connectionTimeToLive=5000/.header"
+++ /dev/null
@@ -1 +0,0 @@
-{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"}
\ No newline at end of file
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Drools/versions/1.0.0&\04363;connectionTimeToLive=5000/.file" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Drools/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
deleted file mode 100644
index b0119f8..0000000
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Drools/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
+++ /dev/null
@@ -1,158 +0,0 @@
-tosca_definitions_version: tosca_simple_yaml_1_0_0
-policy_types:
-    onap.policies.Monitoring:
-        derived_from: tosca.policies.Root
-        description: a base policy type for all policies that governs monitoring provisioning
-    onap.policies.monitoring.cdap.tca.hi.lo.app:
-        derived_from: onap.policies.Monitoring
-        version: 1.0.0
-        properties:
-            tca_policy:
-                type: map
-                description: TCA Policy JSON
-                entry_schema:
-                    type: onap.datatypes.monitoring.tca_policy
-data_types:
-    onap.datatypes.monitoring.metricsPerEventName:
-        derived_from: tosca.datatypes.Root
-        properties:
-            controlLoopSchemaType:
-                type: string
-                required: true
-                description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM
-                constraints:
-                  - valid_values:
-                      - VM
-                      - VNF
-            eventName:
-                type: string
-                required: true
-                description: Event name to which thresholds need to be applied
-            policyName:
-                type: string
-                required: true
-                description: TCA Policy Scope Name
-            policyScope:
-                type: string
-                required: true
-                description: TCA Policy Scope
-            policyVersion:
-                type: string
-                required: true
-                description: TCA Policy Scope Version
-            thresholds:
-                type: list
-                required: true
-                description: Thresholds associated with eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.thresholds
-    onap.datatypes.monitoring.tca_policy:
-        derived_from: tosca.datatypes.Root
-        properties:
-            domain:
-                type: string
-                required: true
-                description: Domain name to which TCA needs to be applied
-                default: measurementsForVfScaling
-                constraints:
-                  - equal: measurementsForVfScaling
-            metricsPerEventName:
-                type: list
-                required: true
-                description: Contains eventName and threshold details that need to be applied to given eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.metricsPerEventName
-    onap.datatypes.monitoring.thresholds:
-        derived_from: tosca.datatypes.Root
-        properties:
-            closedLoopControlName:
-                type: string
-                required: true
-                description: Closed Loop Control Name associated with the threshold
-            closedLoopEventStatus:
-                type: string
-                required: true
-                description: Closed Loop Event Status of the threshold
-                constraints:
-                  - valid_values:
-                      - ONSET
-                      - ABATED
-            direction:
-                type: string
-                required: true
-                description: Direction of the threshold
-                constraints:
-                  - valid_values:
-                      - LESS
-                      - LESS_OR_EQUAL
-                      - GREATER
-                      - GREATER_OR_EQUAL
-                      - EQUAL
-            fieldPath:
-                type: string
-                required: true
-                description: Json field Path as per CEF message which needs to be analyzed for TCA
-                constraints:
-                  - valid_values:
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage
-                      - $.event.measurementsForVfScalingFields.meanRequestLatency
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed
-                      - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value
-            severity:
-                type: string
-                required: true
-                description: Threshold Event Severity
-                constraints:
-                  - valid_values:
-                      - CRITICAL
-                      - MAJOR
-                      - MINOR
-                      - WARNING
-                      - NORMAL
-            thresholdValue:
-                type: integer
-                required: true
-                description: Threshold value for the field Path inside CEF message
-            version:
-                type: string
-                required: true
-                description: Version number associated with the threshold
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Drools/versions/1.0.0&\04363;connectionTimeToLive=5000/.header" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Drools/versions/1.0.0&\04363;connectionTimeToLive=5000/.header"
deleted file mode 100644
index 6a280d9..0000000
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.controloop.operational.Drools/versions/1.0.0&\04363;connectionTimeToLive=5000/.header"
+++ /dev/null
@@ -1 +0,0 @@
-{"Transfer-Encoding": "chunked", "Set-Cookie": "JSESSIONID=158qxkdtdobkd1umr3ikkgrmlx;Path=/", "Expires": "Thu, 01 Jan 1970 00:00:00 GMT", "Server": "Jetty(9.3.21.v20170918)", "Content-Type": "application/json", "X-ECOMP-RequestID": "e2ddb3c8-994f-47df-b4dc-097d4fb55c08"}
\ No newline at end of file
diff --git "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/1.0.0&\04363;connectionTimeToLive=5000/.file" "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
index b0119f8..5fa4308 100644
--- "a/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
+++ "b/src/test/resources/http-cache/example/policy/api/v1/policytypes/onap.policies.monitoring.cdap.tca.hi.lo.app/versions/1.0.0&\04363;connectionTimeToLive=5000/.file"
@@ -1,158 +1,159 @@
 tosca_definitions_version: tosca_simple_yaml_1_0_0
 policy_types:
-    onap.policies.Monitoring:
-        derived_from: tosca.policies.Root
-        description: a base policy type for all policies that governs monitoring provisioning
-    onap.policies.monitoring.cdap.tca.hi.lo.app:
-        derived_from: onap.policies.Monitoring
-        version: 1.0.0
-        properties:
-            tca_policy:
-                type: map
-                description: TCA Policy JSON
-                entry_schema:
-                    type: onap.datatypes.monitoring.tca_policy
+   onap.policies.Monitoring:
+      derived_from: tosca.policies.Root
+      version: 1.0.0
+      description: a base policy type for all policies that govern monitoring provisioning
+   onap.policies.monitoring.cdap.tca.hi.lo.app:
+      derived_from: onap.policies.Monitoring
+      version: 1.0.0
+      properties:
+         tca_policy:
+            type: map
+            description: TCA Policy JSON
+            entry_schema:
+               type: onap.datatypes.monitoring.tca_policy
 data_types:
-    onap.datatypes.monitoring.metricsPerEventName:
-        derived_from: tosca.datatypes.Root
-        properties:
-            controlLoopSchemaType:
-                type: string
-                required: true
-                description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM
-                constraints:
-                  - valid_values:
-                      - VM
-                      - VNF
-            eventName:
-                type: string
-                required: true
-                description: Event name to which thresholds need to be applied
-            policyName:
-                type: string
-                required: true
-                description: TCA Policy Scope Name
-            policyScope:
-                type: string
-                required: true
-                description: TCA Policy Scope
-            policyVersion:
-                type: string
-                required: true
-                description: TCA Policy Scope Version
-            thresholds:
-                type: list
-                required: true
-                description: Thresholds associated with eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.thresholds
-    onap.datatypes.monitoring.tca_policy:
-        derived_from: tosca.datatypes.Root
-        properties:
-            domain:
-                type: string
-                required: true
-                description: Domain name to which TCA needs to be applied
-                default: measurementsForVfScaling
-                constraints:
-                  - equal: measurementsForVfScaling
-            metricsPerEventName:
-                type: list
-                required: true
-                description: Contains eventName and threshold details that need to be applied to given eventName
-                entry_schema:
-                    type: onap.datatypes.monitoring.metricsPerEventName
-    onap.datatypes.monitoring.thresholds:
-        derived_from: tosca.datatypes.Root
-        properties:
-            closedLoopControlName:
-                type: string
-                required: true
-                description: Closed Loop Control Name associated with the threshold
-            closedLoopEventStatus:
-                type: string
-                required: true
-                description: Closed Loop Event Status of the threshold
-                constraints:
-                  - valid_values:
-                      - ONSET
-                      - ABATED
-            direction:
-                type: string
-                required: true
-                description: Direction of the threshold
-                constraints:
-                  - valid_values:
-                      - LESS
-                      - LESS_OR_EQUAL
-                      - GREATER
-                      - GREATER_OR_EQUAL
-                      - EQUAL
-            fieldPath:
-                type: string
-                required: true
-                description: Json field Path as per CEF message which needs to be analyzed for TCA
-                constraints:
-                  - valid_values:
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait
-                      - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage
-                      - $.event.measurementsForVfScalingFields.meanRequestLatency
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree
-                      - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed
-                      - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value
-            severity:
-                type: string
-                required: true
-                description: Threshold Event Severity
-                constraints:
-                  - valid_values:
-                      - CRITICAL
-                      - MAJOR
-                      - MINOR
-                      - WARNING
-                      - NORMAL
-            thresholdValue:
-                type: integer
-                required: true
-                description: Threshold value for the field Path inside CEF message
-            version:
-                type: string
-                required: true
-                description: Version number associated with the threshold
+   onap.datatypes.monitoring.metricsPerEventName:
+      derived_from: tosca.datatypes.Root
+      properties:
+         controlLoopSchemaType:
+            type: string
+            required: true
+            description: Specifies Control Loop Schema Type for the event Name e.g. VNF, VM
+            constraints:
+            -  valid_values:
+               - VM
+               - VNF
+         eventName:
+            type: string
+            required: true
+            description: Event name to which thresholds need to be applied
+         policyName:
+            type: string
+            required: true
+            description: TCA Policy Scope Name
+         policyScope:
+            type: string
+            required: true
+            description: TCA Policy Scope
+         policyVersion:
+            type: string
+            required: true
+            description: TCA Policy Scope Version
+         thresholds:
+            type: list
+            required: true
+            description: Thresholds associated with eventName
+            entry_schema:
+               type: onap.datatypes.monitoring.thresholds
+   onap.datatypes.monitoring.tca_policy:
+      derived_from: tosca.datatypes.Root
+      properties:
+         domain:
+            type: string
+            required: true
+            description: Domain name to which TCA needs to be applied
+            default: measurementsForVfScaling
+            constraints:
+            -  equal: measurementsForVfScaling
+         metricsPerEventName:
+            type: list
+            required: true
+            description: Contains eventName and threshold details that need to be applied to given eventName
+            entry_schema:
+               type: onap.datatypes.monitoring.metricsPerEventName
+   onap.datatypes.monitoring.thresholds:
+      derived_from: tosca.datatypes.Root
+      properties:
+         closedLoopControlName:
+            type: string
+            required: true
+            description: Closed Loop Control Name associated with the threshold
+         closedLoopEventStatus:
+            type: string
+            required: true
+            description: Closed Loop Event Status of the threshold
+            constraints:
+            -  valid_values:
+               - ONSET
+               - ABATED
+         direction:
+            type: string
+            required: true
+            description: Direction of the threshold
+            constraints:
+            -  valid_values:
+               - LESS
+               - LESS_OR_EQUAL
+               - GREATER
+               - GREATER_OR_EQUAL
+               - EQUAL
+         fieldPath:
+            type: string
+            required: true
+            description: Json field Path as per CEF message which needs to be analyzed for TCA
+            constraints:
+            -  valid_values:
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated
+               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle
+               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt
+               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice
+               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq
+               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal
+               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem
+               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait
+               - $.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage
+               - $.event.measurementsForVfScalingFields.meanRequestLatency
+               - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered
+               - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached
+               - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured
+               - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree
+               - $.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed
+               - $.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value
+         severity:
+            type: string
+            required: true
+            description: Threshold Event Severity
+            constraints:
+            -  valid_values:
+               - CRITICAL
+               - MAJOR
+               - MINOR
+               - WARNING
+               - NORMAL
+         thresholdValue:
+            type: integer
+            required: true
+            description: Threshold value for the field Path inside CEF message
+         version:
+            type: string
+            required: true
+            description: Version number associated with the threshold
\ No newline at end of file
diff --git a/src/test/resources/tosca/operational-policy-payload.json b/src/test/resources/tosca/operational-policy-payload.json
index bfb109e..033eecd 100644
--- a/src/test/resources/tosca/operational-policy-payload.json
+++ b/src/test/resources/tosca/operational-policy-payload.json
@@ -1,4 +1,4 @@
 {
-  "policy-id": "testPolicy",
+  "policy-id": "testPolicy.legacy",
   "content": "controlLoop%3A%0A++abatement%3A+true%0A++controlLoopName%3A+LOOP_ASJOy_v1_0_ResourceInstanceName1_tca%0A++timeout%3A+0%0A++trigger_policy%3A+policy1%0Apolicies%3A%0A-+actor%3A+APPC%0A++failure%3A+policy2%0A++failure_exception%3A+final_failure_exception%0A++failure_guard%3A+final_failure_guard%0A++failure_retries%3A+final_failure_retries%0A++failure_timeout%3A+final_failure_timeout%0A++id%3A+policy1%0A++payload%3A%0A++++configurationParameters%3A+%27%5B%7B%22ip-addr%22%3A%22%24.vf-module-topology.vf-module-parameters.param%5B10%5D.value%22%2C%22oam-ip-addr%22%3A%22%24.vf-module-topology.vf-module-parameters.param%5B15%5D.value%22%2C%22enabled%22%3A%22%24.vf-module-topology.vf-module-parameters.param%5B22%5D.value%22%7D%5D%27%0A++++requestParameters%3A+%27%7B%22usePreload%22%3Atrue%2C%22userParams%22%3A%5B%5D%7D%27%0A++recipe%3A+Restart%0A++retry%3A+0%0A++success%3A+final_success%0A++target%3A%0A++++resourceID%3A+vLoadBalancerMS%0A++++type%3A+VNF%0A++timeout%3A+0%0A-+actor%3A+SO%0A++failure%3A+final_failure%0A++failure_exception%3A+final_failure_exception%0A++failure_guard%3A+final_failure_guard%0A++failure_retries%3A+final_failure_retries%0A++failure_timeout%3A+final_failure_timeout%0A++id%3A+policy2%0A++recipe%3A+VF+Module+Create%0A++retry%3A+0%0A++success%3A+final_success%0A++target%3A%0A++++modelCustomizationId%3A+1bffdc31-a37d-4dee-b65c-dde623a76e52%0A++++modelInvariantId%3A+ca052563-eb92-4b5b-ad41-9111768ce043%0A++++modelName%3A+Vloadbalancerms..vpkg..module-1%0A++++modelVersion%3A+1%0A++++modelVersionId%3A+1e725ccc-b823-4f67-82b9-4f4367070dbc%0A++++resourceID%3A+Vloadbalancerms..vpkg..module-1%0A++++type%3A+VFMODULE%0A++timeout%3A+0%0A"
 }
\ No newline at end of file
diff --git a/src/test/resources/tosca/operational-policy-payload.yaml b/src/test/resources/tosca/operational-policy-payload.yaml
index ed03842..4e667e5 100644
--- a/src/test/resources/tosca/operational-policy-payload.yaml
+++ b/src/test/resources/tosca/operational-policy-payload.yaml
@@ -1,11 +1,11 @@
 tosca_definitions_version: tosca_simple_yaml_1_0_0
 topology_template:
   policies:
-  - testPolicy:
+  - testPolicy.legacy:
       type: onap.policies.controlloop.Operational
       version: 1.0.0
       metadata:
-        policy-id: testPolicy
+        policy-id: testPolicy.legacy
       properties:
         controlLoop:
           timeout: '0'
