079f95e21a1356c1f6f6d7ccfba2e27d5c75a317
[vfc/nfvo/catalog.git] /
1 /**
2  * Copyright 2016 [ZTE] and others.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 package org.openo.commontosca.catalog.db.wrapper;
18
19 import org.openo.commontosca.catalog.db.common.CatalogResuorceType;
20 import org.openo.commontosca.catalog.db.entity.NodeTemplateData;
21 import org.openo.commontosca.catalog.db.entity.ServiceTemplateData;
22 import org.openo.commontosca.catalog.db.entity.TemplateData;
23 import org.openo.commontosca.catalog.db.exception.CatalogResourceException;
24 import org.openo.commontosca.catalog.db.util.CatalogDbUtil;
25
26 import org.slf4j.Logger;
27 import org.slf4j.LoggerFactory;
28
29 import java.util.ArrayList;
30
31 public class TemplateHandler extends BaseHandler<TemplateData> {
32   private static final Logger logger = LoggerFactory.getLogger(TemplateHandler.class);
33
34   /**
35    * create template data.
36    * @param templateData template data to create
37    * @return TemplateData
38    * @throws CatalogResourceException e
39    */
40   public TemplateData create(TemplateData templateData) throws CatalogResourceException {
41     logger.info("TemplateHandler create template info.");
42     TemplateData data = null;
43     String serviceTemplateOid = templateData.getServiceTemplate().getServiceTemplateId();
44     if (!CatalogDbUtil.isNotEmpty(serviceTemplateOid)) {
45       logger.info("TemplateHandler:template info does not have oid,generate UUID.");
46       serviceTemplateOid = CatalogDbUtil.generateId();
47       templateData.getServiceTemplate().setServiceTemplateId(serviceTemplateOid);
48     }
49     for (NodeTemplateData nodeData : templateData.getNodeTemplates()) {
50       nodeData.setNodeTemplateId(CatalogDbUtil.generateId());
51       nodeData.setServiceTemplateId(serviceTemplateOid);
52     }
53     Object result = create(templateData, CatalogResuorceType.TEMPLATE.name());
54     if (result != null) {
55       data = (TemplateData) result;
56     } else {
57       logger.info("TemplateHandler: query template info is null.");
58     }
59     logger.info("TemplateHandler: create template info end.");
60     return data;
61   }
62
63   @Override
64   public void check(TemplateData data) throws CatalogResourceException {
65     // TODO Auto-generated method stub
66
67   }
68
69   /**
70    * delete node template.
71    * @param serviceTemplateId service template id
72    * @param nodeTemplateList node template list
73    * @throws CatalogResourceException e
74    */
75   public void delete(String serviceTemplateId, ArrayList<NodeTemplateData> nodeTemplateList)
76       throws CatalogResourceException {
77     logger.info("TemplateHandler delete Template info.");
78     TemplateData templateData = new TemplateData();
79     ServiceTemplateData serviceTemplateData = new ServiceTemplateData();
80     serviceTemplateData.setServiceTemplateId(serviceTemplateId);
81     templateData.setServiceTemplate(serviceTemplateData);
82     templateData.setNodeTemplates(nodeTemplateList);
83     delete(templateData, CatalogResuorceType.TEMPLATE.name());
84     logger.info("TemplateHandler: delete Template info end.");
85   }
86
87 }