diff options
author | Tony Hansen <tony@att.com> | 2020-11-20 02:06:07 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2020-11-20 02:06:07 +0000 |
commit | bbdab5451c551706574a587f32144845e13277a1 (patch) | |
tree | fe9f3976ef5448630b705d926af7d1fe7d414201 /mod/bpgenerator/onap/src/main/java/org/onap/blueprintgenerator/service/common/ComponentSpecService.java | |
parent | 437e1f4e621d63cf576caa5de9c5c4804ea455f9 (diff) | |
parent | 55dcf3197958c76b1622a0c26489e68fe77e0314 (diff) |
Merge "Blueprint Generator Refactored Code Issue-ID: DCAEGEN2-2472"
Diffstat (limited to 'mod/bpgenerator/onap/src/main/java/org/onap/blueprintgenerator/service/common/ComponentSpecService.java')
-rw-r--r-- | mod/bpgenerator/onap/src/main/java/org/onap/blueprintgenerator/service/common/ComponentSpecService.java | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/mod/bpgenerator/onap/src/main/java/org/onap/blueprintgenerator/service/common/ComponentSpecService.java b/mod/bpgenerator/onap/src/main/java/org/onap/blueprintgenerator/service/common/ComponentSpecService.java new file mode 100644 index 0000000..e8d648d --- /dev/null +++ b/mod/bpgenerator/onap/src/main/java/org/onap/blueprintgenerator/service/common/ComponentSpecService.java @@ -0,0 +1,66 @@ +/* + * + * * ============LICENSE_START======================================================= + * * org.onap.dcae + * * ================================================================================ + * * Copyright (c) 2020 AT&T Intellectual Property. All rights reserved. + * * ================================================================================ + * * 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 + * * + * * 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========================================================= + * + * + */ + +package org.onap.blueprintgenerator.service.common; + +import org.onap.blueprintgenerator.exception.ComponentSpecException; +import org.onap.blueprintgenerator.model.componentspec.OnapComponentSpec; +import com.fasterxml.jackson.databind.ObjectMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.stereotype.Service; + +import java.io.File; + +/** + * @author : Ravi Mantena + * @date 10/16/2020 + * Application: ONAP - Blueprint Generator + * Common ONAP Service used by ONAP and DMAAP Blueprint to create Component Spec from File + */ + + +@Service("onapComponentSpecService") +public class ComponentSpecService { + + @Qualifier("objectMapper") + @Autowired + private ObjectMapper componentMapper; + + @Qualifier("yamlObjectMapper") + @Autowired + private ObjectMapper yamlComponentMapper; + + public OnapComponentSpec createComponentSpecFromFile(String componentSpecPath) { + OnapComponentSpec componentSpec; + try { + if(!componentSpecPath.endsWith(".json")) + componentMapper = yamlComponentMapper; + componentSpec = componentMapper.readValue(new File(componentSpecPath), OnapComponentSpec.class); + } catch (Exception ex) { + throw new ComponentSpecException("Unable to create ONAP Component Spec from the input file: "+ componentSpecPath, ex); + } + return componentSpec; + } + +} |