2 * Copyright 2016 [ZTE] and others.
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
16 package org.openo.commontosca.catalog.db.resource;
18 import java.util.ArrayList;
19 import java.util.HashMap;
22 import org.openo.commontosca.catalog.db.common.Parameters;
23 import org.openo.commontosca.catalog.db.exception.CatalogResourceException;
24 import org.openo.commontosca.catalog.db.util.CatalogDbUtil;
25 import org.openo.commontosca.catalog.db.util.HqlFactory;
26 import org.openo.commontosca.catalog.db.entity.PackageData;
27 import org.openo.commontosca.catalog.db.entity.ServiceTemplateData;
28 import org.openo.commontosca.catalog.db.wrapper.PackageHandler;
29 import org.slf4j.Logger;
30 import org.slf4j.LoggerFactory;
32 public class PackageManager {
33 private static final Logger LOGGER = LoggerFactory.getLogger(PackageManager.class);
34 private static PackageManager manager;
35 PackageHandler handler = new PackageHandler();
37 public synchronized static PackageManager getInstance() {
38 if (manager == null) {
39 manager = new PackageManager();
44 private PackageManager() {}
46 public PackageData addPackage(PackageData packageData) throws CatalogResourceException {
47 LOGGER.info("start add package info to db.info:"
48 + CatalogDbUtil.objectToString(packageData));
49 PackageData data = handler.create(packageData);
50 LOGGER.info(" package info to db end.info:" + CatalogDbUtil.objectToString(data));
54 public ArrayList<PackageData> queryPackageByCsarId(String package_csarId)
55 throws CatalogResourceException {
56 Map<String, String> queryParam = new HashMap<String, String>();
57 queryParam.put(Parameters.csarId.name(), package_csarId);
58 LOGGER.info("start query package info by csarid." + package_csarId);
59 ArrayList<PackageData> data = handler.query(queryParam);
60 LOGGER.info("query package info end.size:" + data.size() + "detail:"
61 + CatalogDbUtil.objectToString(data));
65 public ArrayList<PackageData> queryPackage(String name, String provider, String version,
66 String deletionPending, String type) throws CatalogResourceException {
67 LOGGER.info("start query package info.name:" + name + " provider:" + provider + " version:"
68 + version + " type:" + type);
69 Map<String, String> queryParam = new HashMap<String, String>();
70 if (CatalogDbUtil.isNotEmpty(name))
71 queryParam.put(Parameters.name.name(), name);
72 if (CatalogDbUtil.isNotEmpty(version))
73 queryParam.put(Parameters.version.name(), version);
74 if (CatalogDbUtil.isNotEmpty(deletionPending))
75 queryParam.put(Parameters.deletionPending.name(), deletionPending);
76 if (CatalogDbUtil.isNotEmpty(type))
77 queryParam.put(Parameters.type.name(), type);
78 if (CatalogDbUtil.isNotEmpty(provider))
79 queryParam.put(Parameters.provider.name(), provider);
80 ArrayList<PackageData> data = handler.query(queryParam);
81 LOGGER.info("query package info end.size:" + data.size() + "detail:"
82 + CatalogDbUtil.objectToString(data));
86 public void deletePackage(String package_oid) throws CatalogResourceException {
87 LOGGER.info("start delete package info by id." + package_oid);
88 handler.delete(package_oid);
89 LOGGER.info(" delete package info end id." + package_oid);
92 public void deletePackageByServiceTemplateId(String serviceTemplateId)
93 throws CatalogResourceException {
94 LOGGER.info("start delete package info by serviceTemplateid." + serviceTemplateId);
95 ServiceTemplateData serviceTemplate = new ServiceTemplateData();
96 serviceTemplate.setServiceTemplateId(serviceTemplateId);
98 HqlFactory.getDeleteHqlByFilter(PackageData.class, serviceTemplate,
99 Parameters.csarId.name());
100 int data = handler.unionDelete(filter);
102 LOGGER.info("delete serviceTemplate info end.num:" + data);
105 public ArrayList<PackageData> queryPackageByServiceTemplateId(String serviceTemplateId)
106 throws CatalogResourceException {
107 LOGGER.info("start query package info by serviceTemplateid." + serviceTemplateId);
108 ServiceTemplateData serviceTemplate = new ServiceTemplateData();
109 serviceTemplate.setServiceTemplateId(serviceTemplateId);
111 HqlFactory.getQueryHqlByFilter(PackageData.class, serviceTemplate,
112 Parameters.csarId.name());
113 ArrayList<PackageData> data = handler.unionQuery(filter);
114 LOGGER.info("query package info end.size:" + data.size() + "detail:"
115 + CatalogDbUtil.objectToString(data));
119 public void updatePackage(PackageData packageData, String csarId)
120 throws CatalogResourceException {
121 LOGGER.info("start update package info by id." + csarId + " info:"
122 + CatalogDbUtil.objectToString(packageData));
123 handler.update(packageData, csarId);
124 LOGGER.info(" update package end id." + csarId);