aboutsummaryrefslogtreecommitdiffstats
path: root/dblib/provider/src/main/java/org/openecomp/sdnc/sli/resource/dblib/jdbc/JdbcDBCachedDataSource.java
diff options
context:
space:
mode:
Diffstat (limited to 'dblib/provider/src/main/java/org/openecomp/sdnc/sli/resource/dblib/jdbc/JdbcDBCachedDataSource.java')
-rw-r--r--dblib/provider/src/main/java/org/openecomp/sdnc/sli/resource/dblib/jdbc/JdbcDBCachedDataSource.java249
1 files changed, 0 insertions, 249 deletions
diff --git a/dblib/provider/src/main/java/org/openecomp/sdnc/sli/resource/dblib/jdbc/JdbcDBCachedDataSource.java b/dblib/provider/src/main/java/org/openecomp/sdnc/sli/resource/dblib/jdbc/JdbcDBCachedDataSource.java
deleted file mode 100644
index 90c76f6..0000000
--- a/dblib/provider/src/main/java/org/openecomp/sdnc/sli/resource/dblib/jdbc/JdbcDBCachedDataSource.java
+++ /dev/null
@@ -1,249 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * openecomp
- * ================================================================================
- * Copyright (C) 2016 - 2017 AT&T
- * ================================================================================
- * 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.openecomp.sdnc.sli.resource.dblib.jdbc;
-
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLFeatureNotSupportedException;
-
-import org.apache.tomcat.jdbc.pool.DataSource;
-import org.apache.tomcat.jdbc.pool.PoolProperties;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import org.openecomp.sdnc.sli.resource.dblib.CachedDataSource;
-import org.openecomp.sdnc.sli.resource.dblib.DBConfigException;
-import org.openecomp.sdnc.sli.resource.dblib.config.BaseDBConfiguration;
-import org.openecomp.sdnc.sli.resource.dblib.config.JDBCConfiguration;
-import com.mysql.jdbc.Driver;
-
-
-/**
- * @version $Revision: 1.7 $
- * Change Log
- * Author Date Comments
- * ============== ======== ====================================================
- * Rich Tabedzki
- */
-
-public class JdbcDBCachedDataSource extends CachedDataSource
-{
- private String dbUserId;
- private String dbPasswd;
- private String dbUrl;
-
- private int minLimit;
- private int maxLimit;
- private int initialLimit;
-
- private static final String AS_CONF_ERROR = "AS_CONF_ERROR: ";
-
- private static Logger LOGGER = LoggerFactory.getLogger(JdbcDBCachedDataSource.class);
-
- /**
- * @param jdbcElem
- */
- public JdbcDBCachedDataSource(BaseDBConfiguration jdbcElem)
- {
- super(jdbcElem);
- }
-
- @Override
- protected void configure(BaseDBConfiguration xmlElem) throws DBConfigException
- {
- BaseDBConfiguration jdbcConfig = (BaseDBConfiguration)xmlElem;
- if(jdbcConfig.getConnTimeout() > 0){
- this.CONN_REQ_TIMEOUT = jdbcConfig.getConnTimeout();
- }
- if(jdbcConfig.getRequestTimeout() > 0){
- this.DATA_REQ_TIMEOUT = jdbcConfig.getRequestTimeout();
- }
-
- // set connection pool name
- String dbConnectionName = jdbcConfig.getDbConnectionName();
- super.setDbConnectionName(dbConnectionName);
- // Configure the JDBC connection
- dbUserId = jdbcConfig.getDbUserId();
- if (dbUserId == null)
- {
- String errorMsg = "Invalid XML contents: JDBCConnection missing dbUserId attribute";
- LOGGER.error(AS_CONF_ERROR + errorMsg);
- throw new DBConfigException(errorMsg);
- }
-
- dbPasswd = jdbcConfig.getDbPasswd();
- if (dbPasswd == null)
- {
- String errorMsg = "Invalid XML contents: JDBCConnection missing dbPasswd attribute";
- LOGGER.error(AS_CONF_ERROR + errorMsg);
- throw new DBConfigException(errorMsg);
- }
- /*
- dbDriver = jdbcConfig.getDbDriver();
- if (dbDriver == null)
- {
- String errorMsg = "Invalid XML contents: JDBCConnection missing dbDriver attribute";
- LOGGER.error(AS_CONF_ERROR + errorMsg);
- throw new ScpTblUpdateError(errorMsg);
- }
- */
-
- minLimit = jdbcConfig.getDbMinLimit();
-// if (minLimit == null)
-// {
-// String errorMsg = "Invalid XML contents: JDBC Connection missing minLimit attribute";
-// LOGGER.error(AS_CONF_ERROR + errorMsg);
-// throw new DBConfigException(errorMsg);
-// }
- maxLimit = jdbcConfig.getDbMaxLimit();
-// if (maxLimit == null)
-// {
-// String errorMsg = "Invalid XML contents: JDBC Connection missing maxLimit attribute";
-// LOGGER.error(AS_CONF_ERROR + errorMsg);
-// throw new DBConfigException(errorMsg);
-// }
- initialLimit = jdbcConfig.getDbInitialLimit();
-// if (initialLimit == null)
-// {
-// String errorMsg = "Invalid XML contents: JDBC Connection missing initialLimit attribute";
-// LOGGER.error(AS_CONF_ERROR + errorMsg);
-// throw new DBConfigException(errorMsg);
-// }
-
- dbUrl = jdbcConfig.getDbUrl();
- if(dbUrl == null){
- String errorMsg = "Invalid XML contents: JDBCConnection missing dbUrl attribute";
- LOGGER.error(AS_CONF_ERROR + errorMsg);
- throw new DBConfigException(errorMsg);
- }
-
- try {
- Driver dr = new com.mysql.jdbc.Driver();
- Class clazz = Class.forName("com.mysql.jdbc.Driver") ;
-
- PoolProperties p = new PoolProperties();
- p.setDriverClassName("com.mysql.jdbc.Driver");
- p.setUrl(dbUrl);
- p.setUsername(dbUserId);
- p.setPassword(dbPasswd);
- p.setJmxEnabled(true);
- p.setTestWhileIdle(false);
- p.setTestOnBorrow(true);
- p.setValidationQuery("SELECT 1");
- p.setTestOnReturn(false);
- p.setValidationInterval(30000);
- p.setTimeBetweenEvictionRunsMillis(30000);
- p.setInitialSize(initialLimit);
- p.setMaxActive(maxLimit);
- p.setMaxIdle(maxLimit);
- p.setMaxWait(10000);
- p.setRemoveAbandonedTimeout(60);
- p.setMinEvictableIdleTimeMillis(30000);
- p.setMinIdle(minLimit);
- p.setLogAbandoned(true);
- p.setRemoveAbandoned(true);
- p.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"
- + "org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
-
- DataSource dataSource = new DataSource(p);
-
- synchronized(this)
- {
- this.ds = dataSource;
- Connection con = null;
- PreparedStatement st = null;
- ResultSet rs = null;
-
- try {
- con = dataSource.getConnection();
- st = con.prepareStatement("Select 1 FROM DUAL");
- rs = st.executeQuery();
- } catch(Exception exc) {
- LOGGER.error(exc.getMessage());
- } finally {
- if(rs != null) rs.close();
- if(st != null) st.close();
- if(con != null) con.close();
- }
-
- initialized = true;
- LOGGER.info("MySQLDataSource <"+dbConnectionName+"> configured successfully. Using URL: "+dbUrl);
- }
-
-// } catch (SQLException exc) {
-// initialized = false;
-// StringBuffer sb = new StringBuffer();
-// sb.append("Failed to initialize MySQLDataSource<");
-// sb.append(dbConnectionName).append(">. Reason: ");
-// sb.append(exc.getMessage());
-// LOGGER.error("AS_CONF_ERROR: " + sb.toString());
-//// throw new DBConfigException(e.getMessage());
- } catch (Exception exc) {
- initialized = false;
- StringBuffer sb = new StringBuffer();
- sb.append("Failed to initialize MySQLCachedDataSource <");
- sb.append(dbConnectionName).append(">. Reason: ");
- sb.append(exc.getMessage());
- LOGGER.error("AS_CONF_ERROR: " + sb.toString());
-// throw new DBConfigException(e.getMessage());
- }
- }
-
- public final String getDbUrl()
- {
- return dbUrl;
- }
-
- public final String getDbUserId()
- {
- return dbUserId;
- }
-
- public final String getDbPasswd()
- {
- return dbPasswd;
- }
-
- public static JdbcDBCachedDataSource createInstance(BaseDBConfiguration config) /*throws Exception*/ {
- return new JdbcDBCachedDataSource(config);
- }
-
- public String toString(){
- return getDbConnectionName();
- }
-
- public java.util.logging.Logger getParentLogger()
- throws SQLFeatureNotSupportedException {
- // TODO Auto-generated method stub
- return null;
- }
-
- public void cleanUp(){
- DataSource dataSource = (DataSource)ds;
- dataSource.getPool().purge();
- int active = dataSource.getActive();
- int size = dataSource.getSize();
- dataSource.close(true);
- super.cleanUp();
- }
-
-}