diff options
author | FrancescoFioraEst <francesco.fiora@est.tech> | 2023-04-27 15:22:50 +0100 |
---|---|---|
committer | FrancescoFioraEst <francesco.fiora@est.tech> | 2023-05-03 16:48:44 +0100 |
commit | 5c921c62ef5fd97ae86efe28e932619546966907 (patch) | |
tree | a8fa5a2ad5c52f41e12e43750aee7ff026e245bf /models | |
parent | b619e00e3dbb4c7e2d5a484be8cae4db29afe149 (diff) |
Add participant properties capability to acm/participants
Add statusProperties support in acm acm/participants.
Issue-ID: POLICY-4652
Change-Id: I6dd37c9be58fce36def022364abe46c791e98a77
Signed-off-by: FrancescoFioraEst <francesco.fiora@est.tech>
Diffstat (limited to 'models')
4 files changed, 19 insertions, 1 deletions
diff --git a/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AcElementDeployAck.java b/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AcElementDeployAck.java index 611336058..39bbdd173 100644 --- a/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AcElementDeployAck.java +++ b/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AcElementDeployAck.java @@ -20,6 +20,8 @@ package org.onap.policy.clamp.models.acm.concepts; +import java.util.LinkedHashMap; +import java.util.Map; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.Setter; @@ -41,6 +43,8 @@ public class AcElementDeployAck { private String useState; + private Map<String, Object> statusProperties = new LinkedHashMap<>(); + // Result: Success/Fail. private Boolean result; diff --git a/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AutomationCompositionElement.java b/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AutomationCompositionElement.java index edc9e1c5f..208766ebb 100644 --- a/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AutomationCompositionElement.java +++ b/models/src/main/java/org/onap/policy/clamp/models/acm/concepts/AutomationCompositionElement.java @@ -64,6 +64,8 @@ public class AutomationCompositionElement { // which can be deserialized into an instance of the type of the property. private Map<String, Object> properties = new LinkedHashMap<>(); + private Map<String, Object> statusProperties = new LinkedHashMap<>(); + /** * Copy constructor, does a deep copy but as all fields here are immutable, it's just a regular copy. * @@ -75,6 +77,7 @@ public class AutomationCompositionElement { this.participantId = otherElement.participantId; this.description = otherElement.description; this.properties = PfUtils.mapMap(otherElement.properties, UnaryOperator.identity()); + this.statusProperties = PfUtils.mapMap(otherElement.statusProperties, UnaryOperator.identity()); this.deployState = otherElement.deployState; this.lockState = otherElement.lockState; this.operationalState = otherElement.operationalState; diff --git a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionElement.java b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionElement.java index 4ba336edf..9956a471b 100644 --- a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionElement.java +++ b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/concepts/JpaAutomationCompositionElement.java @@ -107,6 +107,12 @@ public class JpaAutomationCompositionElement extends Validated @Convert(converter = StringToMapConverter.class) private Map<String, Object> properties; + @Lob + @NotNull + @Valid + @Convert(converter = StringToMapConverter.class) + private Map<String, Object> statusProperties; + /** * The Default Constructor creates a {@link JpaAutomationCompositionElement} object with a null key. */ @@ -156,6 +162,9 @@ public class JpaAutomationCompositionElement extends Validated this.participantId = copyConcept.participantId; this.description = copyConcept.description; this.properties = (copyConcept.properties != null ? new LinkedHashMap<>(copyConcept.properties) : null); + this.statusProperties = + (copyConcept.statusProperties != null ? new LinkedHashMap<>(copyConcept.statusProperties) + : null); this.deployState = copyConcept.deployState; this.lockState = copyConcept.lockState; this.operationalState = copyConcept.operationalState; @@ -180,6 +189,7 @@ public class JpaAutomationCompositionElement extends Validated element.setParticipantId(UUID.fromString(participantId)); element.setDescription(description); element.setProperties(PfUtils.mapMap(properties, UnaryOperator.identity())); + element.setStatusProperties(PfUtils.mapMap(statusProperties, UnaryOperator.identity())); element.setDeployState(deployState); element.setLockState(lockState); element.setOperationalState(operationalState); @@ -194,6 +204,7 @@ public class JpaAutomationCompositionElement extends Validated this.participantId = element.getParticipantId().toString(); this.description = element.getDescription(); this.properties = PfUtils.mapMap(element.getProperties(), UnaryOperator.identity()); + this.statusProperties = PfUtils.mapMap(element.getStatusProperties(), UnaryOperator.identity()); this.deployState = element.getDeployState(); this.lockState = element.getLockState(); this.operationalState = element.getOperationalState(); diff --git a/models/src/test/java/org/onap/policy/clamp/models/acm/messages/dmaap/participant/AutomationCompositionDeployAckTest.java b/models/src/test/java/org/onap/policy/clamp/models/acm/messages/dmaap/participant/AutomationCompositionDeployAckTest.java index 95a169960..b74b94932 100644 --- a/models/src/test/java/org/onap/policy/clamp/models/acm/messages/dmaap/participant/AutomationCompositionDeployAckTest.java +++ b/models/src/test/java/org/onap/policy/clamp/models/acm/messages/dmaap/participant/AutomationCompositionDeployAckTest.java @@ -50,7 +50,7 @@ class AutomationCompositionDeployAckTest { // verify with all values orig.setAutomationCompositionId(UUID.randomUUID()); orig.setParticipantId(CommonTestData.getParticipantId()); - var acElementResult = new AcElementDeployAck(DeployState.DEPLOYED, LockState.LOCKED, "", "", + var acElementResult = new AcElementDeployAck(DeployState.DEPLOYED, LockState.LOCKED, "", "", Map.of(), true, "AutomationCompositionElement result"); final var automationCompositionResultMap = Map.of(UUID.randomUUID(), acElementResult); orig.setAutomationCompositionResultMap(automationCompositionResultMap); |