diff options
author | Sonsino, Ofir (os0695) <os0695@intl.att.com> | 2018-07-10 14:20:54 +0300 |
---|---|---|
committer | Sonsino, Ofir (os0695) <os0695@intl.att.com> | 2018-07-10 14:20:54 +0300 |
commit | c72d565bb58226b20625b2bce5f0019046bee649 (patch) | |
tree | 8658e49595705b02e47ddc14afa20d6bb7123547 /vid-app-common/src/main/java/org/onap/vid/aai/model/ResourceType.java | |
parent | ef8a6b47847012fd59ea20da21d8d3d7c4a301ed (diff) |
Merge 1806 code of vid-common
Change-Id: I75d52abed4a24dfe3827d79edc4a2938726aa87a
Issue-ID: VID-208
Signed-off-by: Sonsino, Ofir (os0695) <os0695@intl.att.com>
Diffstat (limited to 'vid-app-common/src/main/java/org/onap/vid/aai/model/ResourceType.java')
-rw-r--r-- | vid-app-common/src/main/java/org/onap/vid/aai/model/ResourceType.java | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/vid-app-common/src/main/java/org/onap/vid/aai/model/ResourceType.java b/vid-app-common/src/main/java/org/onap/vid/aai/model/ResourceType.java new file mode 100644 index 000000000..736a1aa9e --- /dev/null +++ b/vid-app-common/src/main/java/org/onap/vid/aai/model/ResourceType.java @@ -0,0 +1,44 @@ +package org.onap.vid.aai.model; + +import com.fasterxml.jackson.annotation.JsonCreator; + +import java.util.Map; +import java.util.Optional; +import java.util.function.Function; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +public enum ResourceType { + + SERVICE_INSTANCE("service-instance", "service-instance-name"), + GENERIC_VNF("generic-vnf", "vnf-name"), + VF_MODULE("vf-module", "vf-module-name"), + VOLUME_GROUP("volume-group", "volume-group-name"); + + private static Map<String, ResourceType> AAI_FORMAT_MAP = Stream + .of(ResourceType.values()) + .collect(Collectors.toMap(s -> s.aaiFormat, Function.identity())); + + private final String aaiFormat; + private final String nameFilter; + + ResourceType(String formatted, String nameFilter) { + this.aaiFormat = formatted; + this.nameFilter = nameFilter; + } + + public String getAaiFormat() { + return aaiFormat; + } + + public String getNameFilter() { + return nameFilter; + } + + @JsonCreator + public static ResourceType fromString(String string) { + return Optional + .ofNullable(AAI_FORMAT_MAP.get(string)) + .orElseThrow(() -> new IllegalArgumentException(string)); + } +} |