diff options
Diffstat (limited to 'feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleStateActive.java')
-rw-r--r-- | feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleStateActive.java | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleStateActive.java b/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleStateActive.java index 9ec68653..d481b8bd 100644 --- a/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleStateActive.java +++ b/feature-lifecycle/src/main/java/org/onap/policy/drools/lifecycle/LifecycleStateActive.java @@ -20,16 +20,22 @@ package org.onap.policy.drools.lifecycle; +import lombok.NonNull; import lombok.ToString; +import org.onap.policy.drools.system.PolicyController; import org.onap.policy.models.pdp.concepts.PdpStateChange; import org.onap.policy.models.pdp.enums.PdpResponseStatus; import org.onap.policy.models.pdp.enums.PdpState; +import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicy; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * Lifecycle Active State. */ @ToString public class LifecycleStateActive extends LifecycleStateRunning { + private static final Logger logger = LoggerFactory.getLogger(LifecycleStatePassive.class); protected LifecycleStateActive(LifecycleFsm manager) { super(manager); @@ -51,4 +57,26 @@ public class LifecycleStateActive extends LifecycleStateRunning { return fsm.statusAction(response(change.getRequestId(), PdpResponseStatus.SUCCESS, null)); } + @Override + protected boolean deployPolicy(@NonNull PolicyController controller, @NonNull ToscaPolicy policy) { + logger.info("{}: deploy {} into {}", this, policy.getIdentifier(), controller.getName()); + + // TODO: This is the latest version - retract policy with same id but different version + + if (!controller.offer(policy)) { + return false; + } + + fsm.deployedPolicyAction(policy); + return true; + } + + @Override + protected boolean undeployPolicy(@NonNull PolicyController controller, @NonNull ToscaPolicy policy) { + logger.info("{}: undeploy {} from {}", this, policy.getIdentifier(), controller.getName()); + + // TODO: retract policy. + + return true; + } } |