diff options
author | 2023-02-15 12:39:43 +0000 | |
---|---|---|
committer | 2023-02-15 12:55:23 +0000 | |
commit | a85118152983dbc53ce1d0e14712bc66c4177f65 (patch) | |
tree | 5202356c6fb39b4bbb2f78e22c1f26de92eac04a /models/src/main/java/org/onap | |
parent | 06339bee0cf891144ca781983ba99d170b10b2b7 (diff) |
Add undeploy on deregister (acm-side)
State of Ac Elements associated with participant changed on deregister
Issue-ID: POLICY-4499
Change-Id: I54265c13deebd77d654fb843a33f7267d4276b76
Signed-off-by: saul.gill <saul.gill@est.tech>
Diffstat (limited to 'models/src/main/java/org/onap')
-rw-r--r-- | models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ParticipantProvider.java | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ParticipantProvider.java b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ParticipantProvider.java index 65b72c436..25d72cb06 100644 --- a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ParticipantProvider.java +++ b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ParticipantProvider.java @@ -29,6 +29,8 @@ import javax.ws.rs.core.Response.Status; import lombok.NonNull; import lombok.RequiredArgsConstructor; import org.onap.policy.clamp.models.acm.concepts.AutomationCompositionElement; +import org.onap.policy.clamp.models.acm.concepts.DeployState; +import org.onap.policy.clamp.models.acm.concepts.LockState; import org.onap.policy.clamp.models.acm.concepts.NodeTemplateState; import org.onap.policy.clamp.models.acm.concepts.Participant; import org.onap.policy.clamp.models.acm.persistence.concepts.JpaParticipant; @@ -180,4 +182,19 @@ public class ParticipantProvider { return ProviderUtils.asEntityList(nodeTemplateStateRepository .findByParticipantId(participantId.toString())); } + + /** + * Reset the Deploy and Lock states of all the ac elements associated with a participant. + * + * @param participantId the participant id associated with the automation composition elements + */ + public void resetParticipantAcElementState(@NonNull final UUID participantId) { + var participantAcElementList = automationCompositionElementRepository + .findByParticipantId(participantId.toString()); + participantAcElementList.forEach(e -> { + e.setDeployState(DeployState.UNDEPLOYED); + e.setLockState(LockState.NONE); + }); + automationCompositionElementRepository.saveAll(participantAcElementList); + } } |