X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Faai%2Fmodelloader%2Fnotification%2FBabelArtifactConverter.java;h=5118652f4e80f5a766f979a2bf368dcd1d9536e8;hb=refs%2Fheads%2Fmaster;hp=7eb562acdcbd7917c1574c85d34f110382465659;hpb=7b1f813441f94261f43ec4f5bb0944ad2570fbdf;p=aai%2Fmodel-loader.git diff --git a/src/main/java/org/onap/aai/modelloader/notification/BabelArtifactConverter.java b/src/main/java/org/onap/aai/modelloader/notification/BabelArtifactConverter.java index 7eb562a..59d3348 100644 --- a/src/main/java/org/onap/aai/modelloader/notification/BabelArtifactConverter.java +++ b/src/main/java/org/onap/aai/modelloader/notification/BabelArtifactConverter.java @@ -1,26 +1,25 @@ /** - * ============LICENSE_START========================================== + * ============LICENSE_START======================================================= * org.onap.aai - * =================================================================== + * ================================================================================ * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved. - * Copyright © 2017-2018 Amdocs - * =================================================================== + * Copyright © 2017-2018 European Software Marketing Ltd. + * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. - * ============LICENSE_END============================================ + * ============LICENSE_END========================================================= */ package org.onap.aai.modelloader.notification; -import java.util.ArrayList; import java.util.List; import java.util.Objects; import org.onap.aai.babel.service.data.BabelArtifact; @@ -29,12 +28,20 @@ import org.onap.aai.modelloader.entity.catalog.VnfCatalogArtifact; import org.onap.aai.modelloader.entity.model.BabelArtifactParsingException; import org.onap.aai.modelloader.entity.model.ModelArtifact; import org.onap.aai.modelloader.entity.model.ModelArtifactParser; +import org.springframework.stereotype.Component; /** * This class is responsible for converting TOSCA artifacts into instances of {@link ModelArtifact} ready for pushing * the converted artifacts . */ -class BabelArtifactConverter { +@Component +public class BabelArtifactConverter { + + private final ModelArtifactParser modelArtifactParser; + + public BabelArtifactConverter(ModelArtifactParser modelArtifactParser) { + this.modelArtifactParser = modelArtifactParser; + } /** * This method converts BabelArtifacts into instances of {@link ModelArtifact}. @@ -44,24 +51,15 @@ class BabelArtifactConverter { * @throws BabelArtifactParsingException if an error occurs trying to parse the generated XML files that were * converted from tosca artifacts */ - List convertToModel(List xmlArtifacts) throws BabelArtifactParsingException { - Objects.requireNonNull(xmlArtifacts); - List modelArtifacts = new ArrayList<>(); - ModelArtifactParser modelArtParser = new ModelArtifactParser(); - - // Parse TOSCA payloads - for (BabelArtifact xmlArtifact : xmlArtifacts) { - - List parsedArtifacts = modelArtParser.parse(xmlArtifact.getPayload(), xmlArtifact.getName()); - - if (parsedArtifacts == null || parsedArtifacts.isEmpty()) { - throw new BabelArtifactParsingException("Could not parse generated XML: " + xmlArtifact.getPayload()); - } - - modelArtifacts.addAll(parsedArtifacts); + public List convertToModel(BabelArtifact babelArtifact) throws BabelArtifactParsingException { + Objects.requireNonNull(babelArtifact); + List parsedArtifacts = modelArtifactParser.parse(babelArtifact.getPayload(), babelArtifact.getName()); + + if (parsedArtifacts == null || parsedArtifacts.isEmpty()) { + throw new BabelArtifactParsingException("Could not parse generated XML: " + babelArtifact.getPayload()); } - return modelArtifacts; + return parsedArtifacts; } /** @@ -70,14 +68,7 @@ class BabelArtifactConverter { * @param xmlArtifacts xml artifacts to be parsed * @return List list of converted catalog artifacts */ - List convertToCatalog(List xmlArtifacts) { - Objects.requireNonNull(xmlArtifacts); - List catalogArtifacts = new ArrayList<>(); - - for (BabelArtifact xmlArtifact : xmlArtifacts) { - catalogArtifacts.add(new VnfCatalogArtifact(xmlArtifact.getPayload())); - } - - return catalogArtifacts; + public Artifact convertToCatalog(BabelArtifact babelArtifact) { + return new VnfCatalogArtifact(babelArtifact.getPayload()); } -} +} \ No newline at end of file