Changes to encryption tool bundle
[appc.git] / appc-config / appc-encryption-tool / provider / src / main / java / org / onap / appc / encryptiontool / wrapper / DbServiceUtil.java
1 /*===============LICENSE_START=======================================================
2  * ONAP : APPC
3  * ================================================================================
4  * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
5  * =============================================================================
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  *      http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  *
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.onap.appc.encryptiontool.wrapper;
22
23 import com.google.common.collect.Lists;
24 import java.io.File;
25 import java.io.IOException;
26 import java.net.URL;
27 import java.sql.SQLException;
28 import java.util.List;
29 import java.util.ArrayList;
30 import java.util.Properties;
31 import javax.sql.rowset.CachedRowSet;
32 import org.onap.ccsdk.sli.core.dblib.DBResourceManager;
33 import org.slf4j.Logger;
34 import org.slf4j.LoggerFactory;
35
36 public class DbServiceUtil {
37
38     private static final Logger log = LoggerFactory.getLogger(DbServiceUtil.class);
39     private static DBResourceManager jdbcDataSource = null;
40
41     private DbServiceUtil() {}
42
43     public static boolean updateDB(String tableName, List<String> argList, String whereClause, String setCluase)
44         throws SQLException {
45
46         String updatePasswordString = "update " + tableName + " set " + setCluase + " where " + whereClause;
47         return jdbcDataSource.writeData(updatePasswordString, Lists.newArrayList(argList), Constants.SCHEMA_SDNCTL);
48     }
49
50     public static CachedRowSet getData(String tableName, List<String> argList, String schema,
51         String getselectData, String getDataClasue) throws SQLException {
52
53         String selectQuery = "select " + getselectData + "from " + tableName + " where " + getDataClasue;
54         return jdbcDataSource.getData(selectQuery, Lists.newArrayList(argList), schema);
55      }
56
57     public static boolean deleteData(String tableName, List<String> argList) throws SQLException {
58         String deleteQuery = "delete from " + tableName;
59         log.info(deleteQuery);
60         return jdbcDataSource.writeData(deleteQuery, Lists.newArrayList(argList), Constants.SCHEMA_SDNCTL);
61     }
62
63      public static boolean insertDB(String tableName, List<String> argList, String setClause,String whereClause)
64         throws SQLException {
65
66             String insertPasswordString = "INSERT INTO  " + tableName + " (" + setClause + " )   VALUES (" + whereClause +")";
67             log.info(insertPasswordString + " insert statement " + argList);
68             return jdbcDataSource.writeData(insertPasswordString, Lists.newArrayList(argList), Constants.SCHEMA_SDNCTL);
69      }
70     public static DBResourceManager initDbLibService() throws IOException {
71         Properties props = new Properties();
72         File file = new File("/opt/onap/appc/data/properties/dblib.properties");
73         URL propURL = file.toURI().toURL();
74         props.load(propURL.openStream());
75         jdbcDataSource = new DBResourceManager(props);
76         return jdbcDataSource;
77     }
78 }
79