Use generic create policy api 99/123399/2
authorRam Krishna Verma <ram_krishna.verma@bell.ca>
Thu, 19 Aug 2021 19:34:00 +0000 (15:34 -0400)
committerRam Krishna Verma <ram_krishna.verma@bell.ca>
Thu, 19 Aug 2021 20:17:34 +0000 (16:17 -0400)
Change lifecycycle api forwarder to use
generic create policy api for creating policies.

Hence, no need to parse the tosca template and
find fields to build the specific url.

Issue-ID: POLICY-3545
Change-Id: I848df3cf2e0cbb9136120769293cc466d660036a
Signed-off-by: Ram Krishna Verma <ram_krishna.verma@bell.ca>
plugins/forwarding-plugins/src/main/java/org/onap/policy/distribution/forwarding/lifecycle/api/LifecycleApiPolicyForwarder.java
plugins/forwarding-plugins/src/test/java/org/onap/policy/distribution/forwarding/testclasses/LifecycycleApiSimulatorEndpoint.java

index 8640332..7f9d690 100644 (file)
@@ -54,7 +54,8 @@ import org.slf4j.LoggerFactory;
 public class LifecycleApiPolicyForwarder implements PolicyForwarder {
 
     private static final String DEPLOY_POLICY_URI = "/policy/pap/v1/pdps/policies";
-    private static final String CREATE_POLICY_TYPE_URI = "/policy/api/v1/policytypes/";
+    private static final String CREATE_POLICY_TYPE_URI = "/policy/api/v1/policytypes";
+    private static final String CREATE_POLICY_URI = "/policy/api/v1/policies";
     private static final Logger LOGGER = LoggerFactory.getLogger(LifecycleApiPolicyForwarder.class);
 
     private LifecycleApiForwarderParameters forwarderParameters;
@@ -120,10 +121,8 @@ public class LifecycleApiPolicyForwarder implements PolicyForwarder {
     }
 
     private Response createPolicy(final ToscaServiceTemplate toscaServiceTemplate) throws PolicyForwardingException {
-        final ToscaPolicy policy = toscaServiceTemplate.getToscaTopologyTemplate().getPolicies().get(0).entrySet()
-                .iterator().next().getValue();
         return invokeHttpClient(Entity.entity(toscaServiceTemplate, MediaType.APPLICATION_JSON),
-                CREATE_POLICY_TYPE_URI + policy.getType() + "/versions/" + policy.getTypeVersion() + "/policies", true);
+                CREATE_POLICY_URI, true);
     }
 
     private Response deployPolicy(final ToscaServiceTemplate toscaServiceTemplate) throws PolicyForwardingException {
index 2b38434..4a881cb 100644 (file)
@@ -1,6 +1,7 @@
 /*-
  * ============LICENSE_START=======================================================
  *  Copyright (C) 2019 Nordix Foundation.
+ *  Modifications Copyright (C) 2021 Bell Canada.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -64,7 +65,7 @@ public class LifecycycleApiSimulatorEndpoint {
      * @return the response object
      */
     @POST
-    @Path("/api/v1/policytypes/{policyTypeId}/versions/{policyTypeVersion}/policies")
+    @Path("/api/v1/policies")
     @Consumes(MediaType.APPLICATION_JSON)
     @Produces(MediaType.APPLICATION_JSON)
     public Response createPolicies(@PathParam("policyTypeId") final String policyTypeId,