aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Timoney <dtimoney@att.com>2017-09-19 17:33:48 -0400
committerDan Timoney <dtimoney@att.com>2017-09-19 17:33:52 -0400
commit5469072378877daa9e9d709fa0f49bacc04e3e1d (patch)
tree887ba08d883c1c61bb4543ec420e566450560257
parentbf1341964ef9dd831992e4187eb09059abb3c8ba (diff)
Remove mysql dependencies in sli/core
Remove lingering mysql dependencies in sli/core, which prevented odlsli container from starting up clean. Note: tested this using bareodl container and verified that these changes install clean AFTER changing incorrect driver property name in dblib.properties. This patch is fine, but a second patch to ccsdk/distribution is needed to fix that property file. Change-Id: I6a900d1c29998867bfbae29d5e113c4e392a8bb9 Issue-ID: CCSDK-95 Signed-off-by: Dan Timoney <dtimoney@att.com>
-rwxr-xr-xdblib/features/src/main/resources/features.xml2
-rwxr-xr-xdblib/provider/pom.xml5
-rw-r--r--dblib/provider/src/main/java/org/onap/ccsdk/sli/core/dblib/jdbc/MySQLCachedDataSource.java216
-rw-r--r--sli/common/src/main/java/org/onap/ccsdk/sli/core/sli/SvcLogicJdbcStore.java2
-rw-r--r--sli/features/src/main/resources/features.xml2
-rw-r--r--sli/provider/src/main/java/org/onap/ccsdk/sli/core/sli/provider/SvcLogicActivator.java46
-rw-r--r--sliPluginUtils/features/src/main/resources/features.xml5
7 files changed, 27 insertions, 251 deletions
diff --git a/dblib/features/src/main/resources/features.xml b/dblib/features/src/main/resources/features.xml
index 36d79413..aa31db75 100755
--- a/dblib/features/src/main/resources/features.xml
+++ b/dblib/features/src/main/resources/features.xml
@@ -12,7 +12,7 @@
<feature version="${odl.mdsal.version}">odl-mdsal-broker</feature>
<bundle>wrap:mvn:org.apache.tomcat/tomcat-jdbc/${tomcat-jdbc.version}/$DynamicImport-Package=org.mariadb.*&amp;overwrite=merge</bundle>
<bundle>mvn:org.onap.ccsdk.sli.core/dblib-provider/${project.version}</bundle>
- <bundle>mvn:org/mariadb/jdbc/mariadb-java-client/${mariadb.connector.version}</bundle>
+ <bundle>mvn:org.mariadb.jdbc/mariadb-java-client/${mariadb.connector.version}</bundle>
</feature>
</features>
diff --git a/dblib/provider/pom.xml b/dblib/provider/pom.xml
index 765f7379..8ff10941 100755
--- a/dblib/provider/pom.xml
+++ b/dblib/provider/pom.xml
@@ -42,11 +42,6 @@
<version>${slf4j.version}</version>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>${mysql.connector.version}</version>
- </dependency>
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
diff --git a/dblib/provider/src/main/java/org/onap/ccsdk/sli/core/dblib/jdbc/MySQLCachedDataSource.java b/dblib/provider/src/main/java/org/onap/ccsdk/sli/core/dblib/jdbc/MySQLCachedDataSource.java
deleted file mode 100644
index bea0d631..00000000
--- a/dblib/provider/src/main/java/org/onap/ccsdk/sli/core/dblib/jdbc/MySQLCachedDataSource.java
+++ /dev/null
@@ -1,216 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * onap
- * ================================================================================
- * Copyright (C) 2016 - 2017 ONAP
- * ================================================================================
- * 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.onap.ccsdk.sli.core.dblib.jdbc;
-
-import java.sql.SQLFeatureNotSupportedException;
-import java.util.Properties;
-
-import org.onap.ccsdk.sli.core.dblib.CachedDataSource;
-import org.onap.ccsdk.sli.core.dblib.DBConfigException;
-import org.onap.ccsdk.sli.core.dblib.config.BaseDBConfiguration;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;
-
-
-
-
-/**
- * @version $Revision: 1.7 $
- * Change Log
- * Author Date Comments
- * ============== ======== ====================================================
- * Rich Tabedzki
- */
-
-public class MySQLCachedDataSource extends CachedDataSource
-{
- private String dbUserId;
- private String dbPasswd;
- private String dbUrl;
-
- private String minLimit;
- private String maxLimit;
- private String initialLimit;
-
- private static final String AS_CONF_ERROR = "AS_CONF_ERROR: ";
-
- private static Logger LOGGER = LoggerFactory.getLogger(MySQLCachedDataSource.class);
-
- /**
- * @param jdbcElem
- */
- public MySQLCachedDataSource(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 = Integer.toString(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 = Integer.toString(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 = Integer.toString(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 {
-
- MysqlDataSource dataSource = new MysqlDataSource();
- dataSource.setUser(dbUserId);
- dataSource.setPassword(dbPasswd);
- dataSource.setURL(dbUrl);
-// dataSource.setInitialSize(5);
-// dataSource.setMaxTotal(60);
-// dataSource.setMaxActive(100);
-// dataSource.setMaxWait(10000);
-// dataSource.setMaxIdle(10);
-
- Properties connAttr = new Properties();
-
- connAttr.setProperty("MinLimit", minLimit);
- connAttr.setProperty("MaxLimit", maxLimit);
- connAttr.setProperty("InitialLimit", initialLimit);
- connAttr.setProperty("TRANSACTION_ISOLATION","SERIALIZABLE");
- connAttr.setProperty("CONNECTION_TAG", dbConnectionName.toUpperCase()+"_CONNECTION");
- connAttr.setProperty("InactivityTimeout", "900");
- connAttr.setProperty("AbandonedConnectionTimeout", "600");
- connAttr.setProperty("PropertyCheckInterval", "60");
- connAttr.setProperty("ValidateConnection", "true");
-
-
- synchronized(this)
- {
- this.ds = dataSource;
-
- 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 MySQLCachedDataSource createInstance(BaseDBConfiguration config) /*throws Exception*/ {
- return new MySQLCachedDataSource(config);
- }
-
- public String toString(){
- return getDbConnectionName();
- }
-
- public java.util.logging.Logger getParentLogger()
- throws SQLFeatureNotSupportedException {
- // TODO Auto-generated method stub
- return null;
- }
-}
diff --git a/sli/common/src/main/java/org/onap/ccsdk/sli/core/sli/SvcLogicJdbcStore.java b/sli/common/src/main/java/org/onap/ccsdk/sli/core/sli/SvcLogicJdbcStore.java
index 71926e41..1e4b71cd 100644
--- a/sli/common/src/main/java/org/onap/ccsdk/sli/core/sli/SvcLogicJdbcStore.java
+++ b/sli/common/src/main/java/org/onap/ccsdk/sli/core/sli/SvcLogicJdbcStore.java
@@ -73,7 +73,7 @@ public class SvcLogicJdbcStore implements SvcLogicStore {
jdbcProps.setProperty("password", dbPasswd);
try {
- Driver dvr = new com.mysql.jdbc.Driver();
+ Driver dvr = new org.mariadb.jdbc.Driver();
if (dvr.acceptsURL(dbUrl))
{
LOG.debug("Driver com.mysql.jdbc.Driver accepts {}", dbUrl);
diff --git a/sli/features/src/main/resources/features.xml b/sli/features/src/main/resources/features.xml
index 692d9ff0..1f17c1a9 100644
--- a/sli/features/src/main/resources/features.xml
+++ b/sli/features/src/main/resources/features.xml
@@ -33,7 +33,7 @@
<bundle>mvn:org.onap.ccsdk.sli.core/sli-provider/${project.version}</bundle>
<bundle>mvn:org.onap.ccsdk.sli.core/sli-recording/${project.version}</bundle>
<feature>sdnc-dblib</feature>
- <bundle>mvn:org/mariadb/jdbc/mariadb-java-client/${mariadb.connector.version}</bundle>
+ <bundle>mvn:org.mariadb.jdbc/mariadb-java-client/${mariadb.connector.version}</bundle>
</feature>
</features>
diff --git a/sli/provider/src/main/java/org/onap/ccsdk/sli/core/sli/provider/SvcLogicActivator.java b/sli/provider/src/main/java/org/onap/ccsdk/sli/core/sli/provider/SvcLogicActivator.java
index 4a13000a..a578dc6a 100644
--- a/sli/provider/src/main/java/org/onap/ccsdk/sli/core/sli/provider/SvcLogicActivator.java
+++ b/sli/provider/src/main/java/org/onap/ccsdk/sli/core/sli/provider/SvcLogicActivator.java
@@ -8,9 +8,9 @@
* 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.
@@ -41,7 +41,6 @@ import org.osgi.framework.ServiceRegistration;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.mysql.jdbc.Driver;
public class SvcLogicActivator implements BundleActivator {
@@ -76,47 +75,47 @@ public class SvcLogicActivator implements BundleActivator {
private static LinkedList<ServiceRegistration> registrations = new LinkedList<ServiceRegistration>();
private static HashMap<String, SvcLogicAdaptor> adaptorMap = null;
-
+
private static final Logger LOG = LoggerFactory
.getLogger(SvcLogicActivator.class);
-
+
private static Properties props = null;
private static BundleContext bundleCtx = null;
-
+
private static SvcLogicService svcLogicServiceImpl = null;
-
+
@Override
public void start(BundleContext ctx) throws Exception {
LOG.info("Activating SLI");
-
+
bundleCtx = ctx;
// Read properties
props = new Properties();
String propPath = System.getenv(SVCLOGIC_PROP_VAR);
-
+
if (propPath == null) {
String propDir = System.getenv(SDNC_CONFIG_DIR);
if (propDir == null) {
-
+
propDir = "/opt/sdnc/data/properties";
}
propPath = propDir + "/svclogic.properties";
LOG.warn("Environment variable "+SVCLOGIC_PROP_VAR+" unset - defaulting to "+propPath);
}
-
+
File propFile = new File(propPath);
-
+
if (!propFile.exists()) {
-
+
throw new ConfigurationException(
"Missing configuration properties file : "
+ propFile);
}
try {
-
+
props.load(new FileInputStream(propFile));
} catch (Exception e) {
throw new ConfigurationException(
@@ -168,15 +167,14 @@ public class SvcLogicActivator implements BundleActivator {
registrations = null;
}
}
-
+
public static SvcLogicStore getStore() throws SvcLogicException {
// Create and initialize SvcLogicStore object - used to access
// saved service logic.
-
+
SvcLogicStore store = null;
-
+
try {
- Driver dvr = new Driver();
store = SvcLogicStoreFactory.getSvcLogicStore(props);
} catch (Exception e) {
throw new ConfigurationException(
@@ -190,12 +188,12 @@ public class SvcLogicActivator implements BundleActivator {
throw new ConfigurationException(
"Could not get service logic store", e);
}
-
+
return(store);
}
-
+
private static void registerNodeTypes(SvcLogicStore store) throws SvcLogicException {
-
+
if (store == null) {
return;
}
@@ -213,13 +211,13 @@ public class SvcLogicActivator implements BundleActivator {
registrations.add(reg);
store.registerNodeType(nodeType);
-
+
LOG.info("SLI - registering node executor");
-
+
((SvcLogicServiceImpl)svcLogicServiceImpl).registerExecutor(nodeType, BUILTIN_NODES.get(nodeType));
}
-
+
}
}
diff --git a/sliPluginUtils/features/src/main/resources/features.xml b/sliPluginUtils/features/src/main/resources/features.xml
index e8d0d3cc..f59cea42 100644
--- a/sliPluginUtils/features/src/main/resources/features.xml
+++ b/sliPluginUtils/features/src/main/resources/features.xml
@@ -9,9 +9,9 @@
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.
@@ -33,7 +33,6 @@
<feature version="${odl.mdsal.version}">odl-mdsal-broker</feature>
<feature>sdnc-sli</feature>
<bundle>mvn:org.onap.ccsdk.sli.core/sliPluginUtils-provider/${project.version}</bundle>
- <bundle>mvn:mysql/mysql-connector-java/${mysql.connector.version}</bundle>
</feature>
</features>