From 5775dd13964a56a60dfbe8fc72e5977672d5acb8 Mon Sep 17 00:00:00 2001 From: aribeiro Date: Wed, 11 Sep 2019 13:50:46 +0100 Subject: Transform custom types for PNFD. Transformation of customized Node Types for PNFD. Issue-ID: SDC-2561 Change-Id: Id3e07edff0e5a8cb134aa12c07878e14c33d1512 Signed-off-by: aribeiro --- .../impl/pnfd/parser/ConversionDefinitionYamlParser.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'openecomp-be/lib/openecomp-tosca-converter-lib/openecomp-tosca-converter-core/src/main/java/org/openecomp/core/converter/impl/pnfd/parser/ConversionDefinitionYamlParser.java') diff --git a/openecomp-be/lib/openecomp-tosca-converter-lib/openecomp-tosca-converter-core/src/main/java/org/openecomp/core/converter/impl/pnfd/parser/ConversionDefinitionYamlParser.java b/openecomp-be/lib/openecomp-tosca-converter-lib/openecomp-tosca-converter-core/src/main/java/org/openecomp/core/converter/impl/pnfd/parser/ConversionDefinitionYamlParser.java index 143185210e..2ea9f2dc93 100644 --- a/openecomp-be/lib/openecomp-tosca-converter-lib/openecomp-tosca-converter-core/src/main/java/org/openecomp/core/converter/impl/pnfd/parser/ConversionDefinitionYamlParser.java +++ b/openecomp-be/lib/openecomp-tosca-converter-lib/openecomp-tosca-converter-core/src/main/java/org/openecomp/core/converter/impl/pnfd/parser/ConversionDefinitionYamlParser.java @@ -20,16 +20,21 @@ package org.openecomp.core.converter.impl.pnfd.parser; import java.util.Map; +import java.util.Optional; import org.openecomp.core.converter.pnfd.model.ConversionDefinition; import org.openecomp.core.converter.pnfd.model.ConversionQuery; import org.openecomp.core.converter.pnfd.model.PnfTransformationToken; import org.openecomp.core.converter.pnfd.strategy.PnfdConversionStrategy; +import org.openecomp.sdc.logging.api.Logger; +import org.openecomp.sdc.logging.api.LoggerFactory; /** * Handles YAML from/to {@link ConversionDefinition} conversions */ public class ConversionDefinitionYamlParser { + private static final Logger LOGGER = LoggerFactory.getLogger(ConversionDefinitionYamlParser.class); + private ConversionDefinitionYamlParser() { } @@ -40,16 +45,20 @@ public class ConversionDefinitionYamlParser { * @return * A new instance of {@link ConversionDefinition}. */ - public static ConversionDefinition parse(final Map conversionYaml) { + public static Optional parse(final Map conversionYaml) { final ConversionQuery conversionQuery = ConversionQueryYamlParser - .parse(conversionYaml.get(PnfTransformationToken.QUERY.getName())); + .parse(conversionYaml.get(PnfTransformationToken.QUERY.getName())).orElse(null); + if (conversionQuery == null) { + LOGGER.warn("Invalid '{}' for '{}'", PnfTransformationToken.QUERY.getName(), conversionYaml.toString()); + return Optional.empty(); + } final String toName = (String) conversionYaml.get(PnfTransformationToken.TO_NAME.getName()); final PnfdConversionStrategy toValue = PnfdConversionStrategyYamlParser .parse((Map) conversionYaml.get(PnfTransformationToken.TO_VALUE.getName())) .orElse(null); final String toGetInput = (String) conversionYaml.get(PnfTransformationToken.TO_GET_INPUT.getName()); - return new ConversionDefinition(conversionQuery, toName, toValue, toGetInput); + return Optional.of(new ConversionDefinition(conversionQuery, toName, toValue, toGetInput)); } } -- cgit 1.2.3-korg