diff options
author | 2021-12-14 16:34:38 +0000 | |
---|---|---|
committer | 2022-01-28 14:32:11 +0000 | |
commit | 63132cec2c18363a8224646039cc23b6144d8e6c (patch) | |
tree | 0821e401a14655ecba60d213f5dbacac12e8f0b4 /cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models | |
parent | a5ce86d02493f141848f9d609c65883d2198894a (diff) |
Support 'public' Cm Handle Properties
Add support for new Public Additional Properties list to Register CM Handles API
Issue-ID: CPS-677
Change-Id: I6efc88734da2416f72f71a403622e519398b502d
Signed-off-by: DylanB95EST <dylan.byrne@est.tech>
Diffstat (limited to 'cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models')
-rw-r--r-- | cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models/CmHandle.java | 15 | ||||
-rw-r--r-- | cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models/PersistenceCmHandle.java | 36 |
2 files changed, 27 insertions, 24 deletions
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models/CmHandle.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models/CmHandle.java index a38442b09..9a9b6faaf 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models/CmHandle.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models/CmHandle.java @@ -1,6 +1,6 @@ /* * ============LICENSE_START======================================================= - * Copyright (C) 2021 Nordix Foundation + * Copyright (C) 2021-2022 Nordix Foundation * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,8 +21,10 @@ package org.onap.cps.ncmp.api.models; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonSetter; +import com.fasterxml.jackson.annotation.Nulls; +import java.util.Collections; import java.util.Map; -import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; @@ -34,13 +36,18 @@ import org.springframework.validation.annotation.Validated; @Validated @Getter @Setter -@AllArgsConstructor @NoArgsConstructor public class CmHandle { @JsonProperty("cmHandle") private String cmHandleID; - private Map<String, String> cmHandleProperties; + @JsonSetter(nulls = Nulls.AS_EMPTY) + @JsonProperty("cmHandleProperties") + private Map<String, String> dmiProperties = Collections.emptyMap(); + + @JsonSetter(nulls = Nulls.AS_EMPTY) + @JsonProperty("publicCmHandleProperties") + private Map<String, String> publicProperties = Collections.emptyMap(); } diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models/PersistenceCmHandle.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models/PersistenceCmHandle.java index 8b959e327..cc32bb75c 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models/PersistenceCmHandle.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/models/PersistenceCmHandle.java @@ -1,6 +1,6 @@ /* * ============LICENSE_START======================================================= - * Copyright (C) 2021 Nordix Foundation + * Copyright (C) 2021-2022 Nordix Foundation * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -24,7 +24,6 @@ package org.onap.cps.ncmp.api.models; import com.fasterxml.jackson.annotation.JsonProperty; import com.google.common.base.Strings; import java.util.ArrayList; -import java.util.Collections; import java.util.List; import java.util.Map; import lombok.AllArgsConstructor; @@ -54,7 +53,10 @@ public class PersistenceCmHandle { private String dmiModelServiceName; @JsonProperty("additional-properties") - private List<AdditionalProperty> additionalProperties; + private List<Property> dmiProperties; + + @JsonProperty("public-properties") + private List<Property> publicProperties; /** * Create a persistenceCmHandle. @@ -73,26 +75,12 @@ public class PersistenceCmHandle { persistenceCmHandle.setDmiServiceName(dmiServiceName); persistenceCmHandle.setDmiDataServiceName(dmiDataServiceName); persistenceCmHandle.setDmiModelServiceName(dmiModelServiceName); - if (cmHandle.getCmHandleProperties() == null) { - persistenceCmHandle.asAdditionalProperties(Collections.emptyMap()); - } else { - persistenceCmHandle.asAdditionalProperties(cmHandle.getCmHandleProperties()); - } + persistenceCmHandle.setDmiProperties(asPersistenceCmHandleProperties(cmHandle.getDmiProperties())); + persistenceCmHandle.setPublicProperties(asPersistenceCmHandleProperties(cmHandle.getPublicProperties())); return persistenceCmHandle; } /** - * Set Additional Properties map, key and value pair. - * @param additionalPropertiesAsMap Map of Additional Properties - */ - public void asAdditionalProperties(final Map<String, String> additionalPropertiesAsMap) { - additionalProperties = new ArrayList<>(additionalPropertiesAsMap.size()); - for (final Map.Entry<String, String> entry : additionalPropertiesAsMap.entrySet()) { - additionalProperties.add(new AdditionalProperty(entry.getKey(), entry.getValue())); - } - } - - /** * Resolve a dmi service name. * @param requiredService indicates what typo of service is required * @return dmi service name @@ -107,13 +95,21 @@ public class PersistenceCmHandle { return dmiServiceName; } + private static List<Property> asPersistenceCmHandleProperties(final Map<String, String> propertiesAsMap) { + final List<Property> persistenceCmHandleProperties = new ArrayList<>(propertiesAsMap.size()); + for (final Map.Entry<String, String> entry : propertiesAsMap.entrySet()) { + persistenceCmHandleProperties.add(new PersistenceCmHandle.Property(entry.getKey(), entry.getValue())); + } + return persistenceCmHandleProperties; + } + private static boolean isNullEmptyOrBlank(final String serviceName) { return Strings.isNullOrEmpty(serviceName) || serviceName.isBlank(); } @AllArgsConstructor @Data - public static class AdditionalProperty { + public static class Property { @JsonProperty() private final String name; |