diff options
author | 2025-01-30 11:28:26 +0000 | |
---|---|---|
committer | 2025-02-20 16:30:17 +0000 | |
commit | f25247386d9cf1e669c9ce0fc2ad0d31216b566c (patch) | |
tree | a20b442ed68a61f757a73b89b742326e624a0c17 /models | |
parent | d895513c055b2bc8a9eb1a7a1cd6511dfad93463 (diff) |
Improvement related to Updating ACM-r message
Improvement related to Updating ACM-r message,
and add transactional message handling.
Issue-ID: POLICY-5287
Change-Id: Ib1e1a3c6873694e26536257b0346f703dcc89648
Signed-off-by: FrancescoFioraEst <francesco.fiora@est.tech>
Diffstat (limited to 'models')
4 files changed, 12 insertions, 30 deletions
diff --git a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationComposition.java b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationComposition.java index 001f2e7f3..cb05eda65 100644 --- a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationComposition.java +++ b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationComposition.java @@ -1,6 +1,6 @@ /*- * ============LICENSE_START======================================================= - * Copyright (C) 2021-2024 Nordix Foundation. + * Copyright (C) 2021-2025 Nordix Foundation. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -207,22 +207,6 @@ public class JpaAutomationComposition extends Validated @Override public void fromAuthorative(@NonNull final AutomationComposition automationComposition) { - this.fromAuthorativeBase(automationComposition); - this.elements = new ArrayList<>(automationComposition.getElements().size()); - for (var elementEntry : automationComposition.getElements().entrySet()) { - var jpaAutomationCompositionElement = - new JpaAutomationCompositionElement(elementEntry.getKey().toString(), this.instanceId); - jpaAutomationCompositionElement.fromAuthorative(elementEntry.getValue()); - this.elements.add(jpaAutomationCompositionElement); - } - } - - /** - * Set an instance of the persist concept to the equivalent values as the other concept without copy the elements. - * - * @param automationComposition the authorative concept - */ - public void fromAuthorativeBase(@NonNull final AutomationComposition automationComposition) { this.instanceId = automationComposition.getInstanceId().toString(); this.name = automationComposition.getName(); this.version = automationComposition.getVersion(); @@ -237,6 +221,13 @@ public class JpaAutomationComposition extends Validated this.subState = automationComposition.getSubState(); this.description = automationComposition.getDescription(); this.stateChangeResult = automationComposition.getStateChangeResult(); + this.elements = new ArrayList<>(automationComposition.getElements().size()); + for (var elementEntry : automationComposition.getElements().entrySet()) { + var jpaAutomationCompositionElement = + new JpaAutomationCompositionElement(elementEntry.getKey().toString(), this.instanceId); + jpaAutomationCompositionElement.fromAuthorative(elementEntry.getValue()); + this.elements.add(jpaAutomationCompositionElement); + } } @Override diff --git a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProvider.java b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProvider.java index bd99a756b..b8f7be93e 100644 --- a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProvider.java +++ b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProvider.java @@ -148,7 +148,7 @@ public class AcDefinitionProvider { * @param compositionId The UUID of the automation composition definition to delete * @return the TOSCA service template that was deleted */ - public ToscaServiceTemplate deleteAcDefintion(UUID compositionId) { + public ToscaServiceTemplate deleteAcDefinition(UUID compositionId) { var jpaDelete = acmDefinitionRepository.findById(compositionId.toString()); if (jpaDelete.isEmpty()) { String errorMessage = "delete of Automation Composition Definition \"" + compositionId diff --git a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/repository/AutomationCompositionElementRepository.java b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/repository/AutomationCompositionElementRepository.java index d0a996e20..e375e1f34 100644 --- a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/repository/AutomationCompositionElementRepository.java +++ b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/repository/AutomationCompositionElementRepository.java @@ -1,6 +1,6 @@ /*- * ============LICENSE_START======================================================= - * Copyright (C) 2024 Nordix Foundation. + * Copyright (C) 2025 Nordix Foundation. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,19 +20,11 @@ package org.onap.policy.clamp.models.acm.persistence.repository; -import jakarta.persistence.LockModeType; import java.util.List; import org.onap.policy.clamp.models.acm.persistence.concepts.JpaAutomationCompositionElement; import org.springframework.data.jpa.repository.JpaRepository; -import org.springframework.data.jpa.repository.Lock; -import org.springframework.lang.NonNull; public interface AutomationCompositionElementRepository extends JpaRepository<JpaAutomationCompositionElement, String> { - @NonNull - @Override - @Lock(LockModeType.PESSIMISTIC_READ) - JpaAutomationCompositionElement getReferenceById(@NonNull String id); - List<JpaAutomationCompositionElement> findByParticipantId(String participantId); } diff --git a/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProviderTest.java b/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProviderTest.java index bc0a0939e..3940dc51c 100644 --- a/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProviderTest.java +++ b/models/src/test/java/org/onap/policy/clamp/models/acm/persistence/provider/AcDefinitionProviderTest.java @@ -244,8 +244,7 @@ class AcDefinitionProviderTest { .thenReturn(Optional.of(new JpaAutomationCompositionDefinition(acmDefinition))); var acDefinitionProvider = new AcDefinitionProvider(acmDefinitionRepository); - var result = acDefinitionProvider.deleteAcDefintion(acmDefinition.getCompositionId()); - + var result = acDefinitionProvider.deleteAcDefinition(acmDefinition.getCompositionId()); assertThat(result).isEqualTo(docServiceTemplate.toAuthorative()); } @@ -254,7 +253,7 @@ class AcDefinitionProviderTest { var compositionId = UUID.randomUUID(); var acmDefinitionRepository = mock(AutomationCompositionDefinitionRepository.class); var acDefinitionProvider = new AcDefinitionProvider(acmDefinitionRepository); - assertThatThrownBy(() -> acDefinitionProvider.deleteAcDefintion(compositionId)) + assertThatThrownBy(() -> acDefinitionProvider.deleteAcDefinition(compositionId)) .hasMessage("delete of Automation Composition Definition \"" + compositionId + "\" failed, Automation Composition Definition does not exist"); } |