push addional code
[sdc.git] / openecomp-be / lib / openecomp-sdc-enrichment-lib / openecomp-sdc-enrichment-core / src / main / java / org / openecomp / sdc / enrichment / enrichmentartifacts / EnrichmentArtifactsServiceImpl.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.openecomp.sdc.enrichment.enrichmentartifacts;
22
23 import org.openecomp.core.enrichment.enrichmentartifacts.EnrichmentArtifactsService;
24 import org.openecomp.core.model.dao.EnrichedServiceModelDao;
25 import org.openecomp.core.model.dao.EnrichedServiceModelDaoFactory;
26 import org.openecomp.core.model.types.ServiceArtifact;
27 import org.openecomp.core.model.types.ServiceElement;
28 import org.openecomp.core.utilities.file.FileContentHandler;
29 import org.openecomp.sdc.common.utils.AsdcCommon;
30 import org.openecomp.sdc.tosca.datatypes.ToscaServiceModel;
31 import org.openecomp.sdc.versioning.dao.types.Version;
32
33 import java.util.List;
34
35 public class EnrichmentArtifactsServiceImpl implements EnrichmentArtifactsService {
36   EnrichedServiceModelDao<ToscaServiceModel, ServiceElement> enrichedServiceModelDao =
37       EnrichedServiceModelDaoFactory.getInstance().createInterface();
38
39   @Override
40   public FileContentHandler addMibs(String vspId, Version version) {
41     FileContentHandler externalArtifacts = new FileContentHandler();
42     List<ServiceArtifact> mibsList = enrichedServiceModelDao.getExternalArtifacts(vspId, version);
43     addMibsToFileContentHandler(mibsList, externalArtifacts);
44
45     return externalArtifacts;
46   }
47
48
49   private void addMibsToFileContentHandler(List<ServiceArtifact> mibsList,
50                                            FileContentHandler externalArtifacts) {
51     for (ServiceArtifact serviceArtifact : mibsList) {
52       String filename = serviceArtifact.getName();
53       externalArtifacts.addFile(filename, serviceArtifact.getContent());
54     }
55   }
56
57
58   private boolean isFileArtifact(String filename) {
59     return !filename.contains(AsdcCommon.HEAT_META) && !filename.contains(AsdcCommon.MANIFEST_NAME);
60   }
61 }