X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=models-interactions%2Fmodel-actors%2Factor.appc%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fpolicy%2Fcontrolloop%2Factor%2Fappc%2FAppcActor.java;h=72309b0439f84593bf70cf8fbf620c2ea24b4c31;hb=c88676ec64c4c870252502bc1cfaa8990c8fd964;hp=8634fbf6a92d106e27bd2b745977618d9cbcaaa4;hpb=e4e7d15db6d2f79658e3a5f9e8326ea092afcfab;p=policy%2Fmodels.git diff --git a/models-interactions/model-actors/actor.appc/src/main/java/org/onap/policy/controlloop/actor/appc/AppcActor.java b/models-interactions/model-actors/actor.appc/src/main/java/org/onap/policy/controlloop/actor/appc/AppcActor.java index 8634fbf6a..72309b043 100644 --- a/models-interactions/model-actors/actor.appc/src/main/java/org/onap/policy/controlloop/actor/appc/AppcActor.java +++ b/models-interactions/model-actors/actor.appc/src/main/java/org/onap/policy/controlloop/actor/appc/AppcActor.java @@ -21,56 +21,14 @@ package org.onap.policy.controlloop.actor.appc; -import com.google.common.collect.ImmutableList; -import com.google.common.collect.ImmutableMap; -import java.util.Collections; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; -import org.onap.policy.appc.CommonHeader; -import org.onap.policy.appc.Request; -import org.onap.policy.common.utils.coder.CoderException; -import org.onap.policy.common.utils.coder.StandardCoder; -import org.onap.policy.controlloop.ControlLoopOperation; -import org.onap.policy.controlloop.VirtualControlLoopEvent; import org.onap.policy.controlloop.actorserviceprovider.impl.BidirectionalTopicActor; import org.onap.policy.controlloop.actorserviceprovider.impl.BidirectionalTopicOperator; import org.onap.policy.controlloop.actorserviceprovider.parameters.BidirectionalTopicActorParams; -import org.onap.policy.controlloop.policy.Policy; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; public class AppcActor extends BidirectionalTopicActor { public static final String NAME = "APPC"; - private static final Logger logger = LoggerFactory.getLogger(AppcActor.class); - - // TODO old code: remove lines down to **HERE** - - private static final StandardCoder coder = new StandardCoder(); - - // Strings for targets - private static final String TARGET_VM = "VM"; - private static final String TARGET_VNF = "VNF"; - - // Strings for recipes - private static final String RECIPE_RESTART = "Restart"; - private static final String RECIPE_REBUILD = "Rebuild"; - private static final String RECIPE_MIGRATE = "Migrate"; - private static final String RECIPE_MODIFY = "ModifyConfig"; - - private static final ImmutableList recipes = - ImmutableList.of(RECIPE_RESTART, RECIPE_REBUILD, RECIPE_MIGRATE, RECIPE_MODIFY); - private static final ImmutableMap> targets = new ImmutableMap.Builder>() - .put(RECIPE_RESTART, ImmutableList.of(TARGET_VM)).put(RECIPE_REBUILD, ImmutableList.of(TARGET_VM)) - .put(RECIPE_MIGRATE, ImmutableList.of(TARGET_VM)).put(RECIPE_MODIFY, ImmutableList.of(TARGET_VNF)) - .build(); - private static final ImmutableMap> payloads = new ImmutableMap.Builder>() - .put(RECIPE_MODIFY, ImmutableList.of("generic-vnf.vnf-id")).build(); - - // **HERE** - /** * Constructs the object. */ @@ -80,86 +38,4 @@ public class AppcActor extends BidirectionalTopicActor recipes() { - return ImmutableList.copyOf(recipes); - } - - @Override - public List recipeTargets(String recipe) { - return ImmutableList.copyOf(targets.getOrDefault(recipe, Collections.emptyList())); - } - - @Override - public List recipePayloads(String recipe) { - return ImmutableList.copyOf(payloads.getOrDefault(recipe, Collections.emptyList())); - } - - /** - * Constructs an APPC request conforming to the legacy API. The legacy API will be - * deprecated in future releases as all legacy functionality is moved into the LCM - * API. - * - * @param onset the event that is reporting the alert for policy to perform an action - * @param operation the control loop operation specifying the actor, operation, - * target, etc. - * @param policy the policy the was specified from the yaml generated by CLAMP or - * through the Policy GUI/API - * @return an APPC request conforming to the legacy API - */ - public static Request constructRequest(VirtualControlLoopEvent onset, ControlLoopOperation operation, Policy policy, - String targetVnf) { - /* - * Construct an APPC request - */ - Request request = new Request(); - request.setCommonHeader(new CommonHeader()); - request.getCommonHeader().setRequestId(onset.getRequestId()); - request.getCommonHeader().setSubRequestId(operation.getSubRequestId()); - request.setAction(policy.getRecipe().substring(0, 1).toUpperCase() + policy.getRecipe().substring(1)); - - // convert policy payload strings to objects - if (policy.getPayload() == null) { - logger.info("no APPC payload specified for policy {}", policy.getName()); - } else { - convertPayload(policy.getPayload(), request.getPayload()); - } - - // add/replace specific values - request.getPayload().put("generic-vnf.vnf-id", targetVnf); - - /* - * Return the request - */ - - return request; - } - - /** - * Converts a payload. The original value is assumed to be a JSON string, which is - * decoded into an object. - * - * @param source source from which to get the values - * @param target where to place the decoded values - */ - private static void convertPayload(Map source, Map target) { - for (Entry ent : source.entrySet()) { - try { - target.put(ent.getKey(), coder.decode(ent.getValue(), Object.class)); - - } catch (CoderException e) { - logger.warn("cannot decode JSON value {}: {}", ent.getKey(), ent.getValue(), e); - } - } - } - - // **HERE** }