diff options
Diffstat (limited to 'src/main/java/org/onap/sdc/toscaparser/api/elements/Metadata.java')
-rw-r--r-- | src/main/java/org/onap/sdc/toscaparser/api/elements/Metadata.java | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/main/java/org/onap/sdc/toscaparser/api/elements/Metadata.java b/src/main/java/org/onap/sdc/toscaparser/api/elements/Metadata.java new file mode 100644 index 0000000..6b818f5 --- /dev/null +++ b/src/main/java/org/onap/sdc/toscaparser/api/elements/Metadata.java @@ -0,0 +1,41 @@ +package org.onap.sdc.toscaparser.api.elements; + +import java.util.AbstractMap; +import java.util.HashMap; +import java.util.Map; +import java.util.stream.Collectors; + +public class Metadata { + + private final Map<String, Object> metadataMap; + + public Metadata(Map<String, Object> metadataMap) { + this.metadataMap = metadataMap != null ? metadataMap : new HashMap<>(); + } + + public String getValue(String key) { + + Object obj = this.metadataMap.get(key); + if (obj != null){ + return String.valueOf(obj); + } + return null; + } + + /** + * Get all properties of a Metadata object.<br> + * This object represents the "metadata" section of some entity. + * @return all properties of this Metadata, as a key-value. + */ + public Map<String, String> getAllProperties() { + return metadataMap.entrySet().stream().map(e-> new AbstractMap.SimpleEntry<String, String>(e.getKey(), String.valueOf(e.getValue()))).collect(Collectors.toMap(Map.Entry::getKey,Map.Entry::getValue)); + } + + @Override + public String toString() { + return "Metadata{" + + "metadataMap=" + metadataMap + + '}'; + } + +} |