[Refactor]Rename class file, DatasourceUtil to DataSourceUtils. (#7181)
* Rename class file, DatasourceUtil to DataSourceUtils.
This commit is contained in:
parent
a80a7b3fcf
commit
0b9792db76
|
|
@ -38,7 +38,7 @@ import org.apache.dolphinscheduler.common.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.common.utils.ParameterUtils;
|
import org.apache.dolphinscheduler.common.utils.ParameterUtils;
|
||||||
import org.apache.dolphinscheduler.dao.entity.User;
|
import org.apache.dolphinscheduler.dao.entity.User;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.datasource.BaseDataSourceParamDTO;
|
import org.apache.dolphinscheduler.plugin.datasource.api.datasource.BaseDataSourceParamDTO;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.spi.datasource.ConnectionParam;
|
import org.apache.dolphinscheduler.spi.datasource.ConnectionParam;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbType;
|
import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
|
|
||||||
|
|
@ -210,8 +210,8 @@ public class DataSourceController extends BaseController {
|
||||||
@AccessLogAnnotation(ignoreRequestArgs = "loginUser")
|
@AccessLogAnnotation(ignoreRequestArgs = "loginUser")
|
||||||
public Result connectDataSource(@ApiIgnore @RequestAttribute(value = Constants.SESSION_USER) User loginUser,
|
public Result connectDataSource(@ApiIgnore @RequestAttribute(value = Constants.SESSION_USER) User loginUser,
|
||||||
@RequestBody BaseDataSourceParamDTO dataSourceParam) {
|
@RequestBody BaseDataSourceParamDTO dataSourceParam) {
|
||||||
DatasourceUtil.checkDatasourceParam(dataSourceParam);
|
DataSourceUtils.checkDatasourceParam(dataSourceParam);
|
||||||
ConnectionParam connectionParams = DatasourceUtil.buildConnectionParams(dataSourceParam);
|
ConnectionParam connectionParams = DataSourceUtils.buildConnectionParams(dataSourceParam);
|
||||||
return dataSourceService.checkConnection(dataSourceParam.getType(), connectionParams);
|
return dataSourceService.checkConnection(dataSourceParam.getType(), connectionParams);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@ import org.apache.dolphinscheduler.dao.mapper.DataSourceMapper;
|
||||||
import org.apache.dolphinscheduler.dao.mapper.DataSourceUserMapper;
|
import org.apache.dolphinscheduler.dao.mapper.DataSourceUserMapper;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.datasource.BaseDataSourceParamDTO;
|
import org.apache.dolphinscheduler.plugin.datasource.api.datasource.BaseDataSourceParamDTO;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.spi.datasource.BaseConnectionParam;
|
import org.apache.dolphinscheduler.spi.datasource.BaseConnectionParam;
|
||||||
import org.apache.dolphinscheduler.spi.datasource.ConnectionParam;
|
import org.apache.dolphinscheduler.spi.datasource.ConnectionParam;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbType;
|
import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
|
|
@ -79,7 +79,7 @@ public class DataSourceServiceImpl extends BaseServiceImpl implements DataSource
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public Result<Object> createDataSource(User loginUser, BaseDataSourceParamDTO datasourceParam) {
|
public Result<Object> createDataSource(User loginUser, BaseDataSourceParamDTO datasourceParam) {
|
||||||
DatasourceUtil.checkDatasourceParam(datasourceParam);
|
DataSourceUtils.checkDatasourceParam(datasourceParam);
|
||||||
Result<Object> result = new Result<>();
|
Result<Object> result = new Result<>();
|
||||||
// check name can use or not
|
// check name can use or not
|
||||||
if (checkName(datasourceParam.getName())) {
|
if (checkName(datasourceParam.getName())) {
|
||||||
|
|
@ -87,7 +87,7 @@ public class DataSourceServiceImpl extends BaseServiceImpl implements DataSource
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
// check connect
|
// check connect
|
||||||
ConnectionParam connectionParam = DatasourceUtil.buildConnectionParams(datasourceParam);
|
ConnectionParam connectionParam = DataSourceUtils.buildConnectionParams(datasourceParam);
|
||||||
Result<Object> isConnection = checkConnection(datasourceParam.getType(), connectionParam);
|
Result<Object> isConnection = checkConnection(datasourceParam.getType(), connectionParam);
|
||||||
if (Status.SUCCESS.getCode() != isConnection.getCode()) {
|
if (Status.SUCCESS.getCode() != isConnection.getCode()) {
|
||||||
putMsg(result, Status.DATASOURCE_CONNECT_FAILED);
|
putMsg(result, Status.DATASOURCE_CONNECT_FAILED);
|
||||||
|
|
@ -126,7 +126,7 @@ public class DataSourceServiceImpl extends BaseServiceImpl implements DataSource
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public Result<Object> updateDataSource(int id, User loginUser, BaseDataSourceParamDTO dataSourceParam) {
|
public Result<Object> updateDataSource(int id, User loginUser, BaseDataSourceParamDTO dataSourceParam) {
|
||||||
DatasourceUtil.checkDatasourceParam(dataSourceParam);
|
DataSourceUtils.checkDatasourceParam(dataSourceParam);
|
||||||
Result<Object> result = new Result<>();
|
Result<Object> result = new Result<>();
|
||||||
// determine whether the data source exists
|
// determine whether the data source exists
|
||||||
DataSource dataSource = dataSourceMapper.selectById(id);
|
DataSource dataSource = dataSourceMapper.selectById(id);
|
||||||
|
|
@ -146,7 +146,7 @@ public class DataSourceServiceImpl extends BaseServiceImpl implements DataSource
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
//check password,if the password is not updated, set to the old password.
|
//check password,if the password is not updated, set to the old password.
|
||||||
BaseConnectionParam connectionParam = (BaseConnectionParam) DatasourceUtil.buildConnectionParams(dataSourceParam);
|
BaseConnectionParam connectionParam = (BaseConnectionParam) DataSourceUtils.buildConnectionParams(dataSourceParam);
|
||||||
String password = connectionParam.getPassword();
|
String password = connectionParam.getPassword();
|
||||||
if (StringUtils.isBlank(password)) {
|
if (StringUtils.isBlank(password)) {
|
||||||
String oldConnectionParams = dataSource.getConnectionParams();
|
String oldConnectionParams = dataSource.getConnectionParams();
|
||||||
|
|
@ -198,7 +198,7 @@ public class DataSourceServiceImpl extends BaseServiceImpl implements DataSource
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
// type
|
// type
|
||||||
BaseDataSourceParamDTO baseDataSourceParamDTO = DatasourceUtil.buildDatasourceParamDTO(
|
BaseDataSourceParamDTO baseDataSourceParamDTO = DataSourceUtils.buildDatasourceParamDTO(
|
||||||
dataSource.getType(), dataSource.getConnectionParams());
|
dataSource.getType(), dataSource.getConnectionParams());
|
||||||
baseDataSourceParamDTO.setId(dataSource.getId());
|
baseDataSourceParamDTO.setId(dataSource.getId());
|
||||||
baseDataSourceParamDTO.setName(dataSource.getName());
|
baseDataSourceParamDTO.setName(dataSource.getName());
|
||||||
|
|
@ -344,7 +344,7 @@ public class DataSourceServiceImpl extends BaseServiceImpl implements DataSource
|
||||||
putMsg(result, Status.RESOURCE_NOT_EXIST);
|
putMsg(result, Status.RESOURCE_NOT_EXIST);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
return checkConnection(dataSource.getType(), DatasourceUtil.buildConnectionParams(dataSource.getType(), dataSource.getConnectionParams()));
|
return checkConnection(dataSource.getType(), DataSourceUtils.buildConnectionParams(dataSource.getType(), dataSource.getConnectionParams()));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ import org.apache.dolphinscheduler.plugin.datasource.api.datasource.oracle.Oracl
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.datasource.postgresql.PostgreSqlDatasourceParamDTO;
|
import org.apache.dolphinscheduler.plugin.datasource.api.datasource.postgresql.PostgreSqlDatasourceParamDTO;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
||||||
import org.apache.dolphinscheduler.spi.datasource.ConnectionParam;
|
import org.apache.dolphinscheduler.spi.datasource.ConnectionParam;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbConnectType;
|
import org.apache.dolphinscheduler.spi.enums.DbConnectType;
|
||||||
|
|
@ -62,7 +62,7 @@ import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
*/
|
*/
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PowerMockIgnore({"sun.security.*", "javax.net.*"})
|
@PowerMockIgnore({"sun.security.*", "javax.net.*"})
|
||||||
@PrepareForTest({DatasourceUtil.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
@PrepareForTest({DataSourceUtils.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
||||||
public class DataSourceServiceTest {
|
public class DataSourceServiceTest {
|
||||||
|
|
||||||
@InjectMocks
|
@InjectMocks
|
||||||
|
|
@ -97,7 +97,7 @@ public class DataSourceServiceTest {
|
||||||
Result dataSourceExitsResult = dataSourceService.createDataSource(loginUser, postgreSqlDatasourceParam);
|
Result dataSourceExitsResult = dataSourceService.createDataSource(loginUser, postgreSqlDatasourceParam);
|
||||||
Assert.assertEquals(Status.DATASOURCE_EXIST.getCode(), dataSourceExitsResult.getCode().intValue());
|
Assert.assertEquals(Status.DATASOURCE_EXIST.getCode(), dataSourceExitsResult.getCode().intValue());
|
||||||
|
|
||||||
ConnectionParam connectionParam = DatasourceUtil.buildConnectionParams(postgreSqlDatasourceParam);
|
ConnectionParam connectionParam = DataSourceUtils.buildConnectionParams(postgreSqlDatasourceParam);
|
||||||
DbType dataSourceType = postgreSqlDatasourceParam.getType();
|
DbType dataSourceType = postgreSqlDatasourceParam.getType();
|
||||||
// data source exits
|
// data source exits
|
||||||
PowerMockito.when(dataSourceMapper.queryDataSourceByName(dataSourceName.trim())).thenReturn(null);
|
PowerMockito.when(dataSourceMapper.queryDataSourceByName(dataSourceName.trim())).thenReturn(null);
|
||||||
|
|
@ -159,7 +159,7 @@ public class DataSourceServiceTest {
|
||||||
|
|
||||||
// data source connect failed
|
// data source connect failed
|
||||||
DbType dataSourceType = postgreSqlDatasourceParam.getType();
|
DbType dataSourceType = postgreSqlDatasourceParam.getType();
|
||||||
ConnectionParam connectionParam = DatasourceUtil.buildConnectionParams(postgreSqlDatasourceParam);
|
ConnectionParam connectionParam = DataSourceUtils.buildConnectionParams(postgreSqlDatasourceParam);
|
||||||
PowerMockito.when(dataSourceMapper.selectById(dataSourceId)).thenReturn(dataSource);
|
PowerMockito.when(dataSourceMapper.selectById(dataSourceId)).thenReturn(dataSource);
|
||||||
PowerMockito.when(dataSourceMapper.queryDataSourceByName(dataSourceName)).thenReturn(null);
|
PowerMockito.when(dataSourceMapper.queryDataSourceByName(dataSourceName)).thenReturn(null);
|
||||||
Result connectionResult = new Result(Status.SUCCESS.getCode(), Status.SUCCESS.getMsg());
|
Result connectionResult = new Result(Status.SUCCESS.getCode(), Status.SUCCESS.getMsg());
|
||||||
|
|
@ -308,7 +308,7 @@ public class DataSourceServiceTest {
|
||||||
oracleDatasourceParamDTO.setPassword("test");
|
oracleDatasourceParamDTO.setPassword("test");
|
||||||
oracleDatasourceParamDTO.setConnectType(DbConnectType.ORACLE_SERVICE_NAME);
|
oracleDatasourceParamDTO.setConnectType(DbConnectType.ORACLE_SERVICE_NAME);
|
||||||
|
|
||||||
ConnectionParam connectionParam = DatasourceUtil.buildConnectionParams(oracleDatasourceParamDTO);
|
ConnectionParam connectionParam = DataSourceUtils.buildConnectionParams(oracleDatasourceParamDTO);
|
||||||
String expected = "{\"user\":\"test\",\"password\":\"test\",\"address\":\"jdbc:oracle:thin:@//192.168.9.1:1521\",\"database\":\"im\",\"jdbcUrl\":\"jdbc:oracle:thin:@//192.168.9.1:1521/im\","
|
String expected = "{\"user\":\"test\",\"password\":\"test\",\"address\":\"jdbc:oracle:thin:@//192.168.9.1:1521\",\"database\":\"im\",\"jdbcUrl\":\"jdbc:oracle:thin:@//192.168.9.1:1521/im\","
|
||||||
+ "\"driverClassName\":\"oracle.jdbc.OracleDriver\",\"validationQuery\":\"select 1 from dual\",\"connectType\":\"ORACLE_SERVICE_NAME\"}";
|
+ "\"driverClassName\":\"oracle.jdbc.OracleDriver\",\"validationQuery\":\"select 1 from dual\",\"connectType\":\"ORACLE_SERVICE_NAME\"}";
|
||||||
Assert.assertEquals(expected, JSONUtils.toJsonString(connectionParam));
|
Assert.assertEquals(expected, JSONUtils.toJsonString(connectionParam));
|
||||||
|
|
@ -327,7 +327,7 @@ public class DataSourceServiceTest {
|
||||||
hiveDataSourceParamDTO.setJavaSecurityKrb5Conf("/opt/krb5.conf");
|
hiveDataSourceParamDTO.setJavaSecurityKrb5Conf("/opt/krb5.conf");
|
||||||
hiveDataSourceParamDTO.setLoginUserKeytabPath("/opt/hdfs.headless.keytab");
|
hiveDataSourceParamDTO.setLoginUserKeytabPath("/opt/hdfs.headless.keytab");
|
||||||
hiveDataSourceParamDTO.setLoginUserKeytabUsername("test2/hdfs-mycluster@ESZ.COM");
|
hiveDataSourceParamDTO.setLoginUserKeytabUsername("test2/hdfs-mycluster@ESZ.COM");
|
||||||
connectionParam = DatasourceUtil.buildConnectionParams(hiveDataSourceParamDTO);
|
connectionParam = DataSourceUtils.buildConnectionParams(hiveDataSourceParamDTO);
|
||||||
expected = "{\"user\":\"test\",\"password\":\"test\",\"address\":\"jdbc:hive2://192.168.9.1:10000\",\"database\":\"im\",\"jdbcUrl\":\"jdbc:hive2://192.168.9.1:10000/im;"
|
expected = "{\"user\":\"test\",\"password\":\"test\",\"address\":\"jdbc:hive2://192.168.9.1:10000\",\"database\":\"im\",\"jdbcUrl\":\"jdbc:hive2://192.168.9.1:10000/im;"
|
||||||
+ "principal=hive/hdfs-mycluster@ESZ.COM\",\"driverClassName\":\"org.apache.hive.jdbc.HiveDriver\",\"validationQuery\":\"select 1\",\"principal\":\"hive/hdfs-mycluster@ESZ.COM\","
|
+ "principal=hive/hdfs-mycluster@ESZ.COM\",\"driverClassName\":\"org.apache.hive.jdbc.HiveDriver\",\"validationQuery\":\"select 1\",\"principal\":\"hive/hdfs-mycluster@ESZ.COM\","
|
||||||
+ "\"javaSecurityKrb5Conf\":\"/opt/krb5.conf\",\"loginUserKeytabUsername\":\"test2/hdfs-mycluster@ESZ.COM\",\"loginUserKeytabPath\":\"/opt/hdfs.headless.keytab\"}";
|
+ "\"javaSecurityKrb5Conf\":\"/opt/krb5.conf\",\"loginUserKeytabUsername\":\"test2/hdfs-mycluster@ESZ.COM\",\"loginUserKeytabPath\":\"/opt/hdfs.headless.keytab\"}";
|
||||||
|
|
@ -348,7 +348,7 @@ public class DataSourceServiceTest {
|
||||||
mysqlDatasourceParamDTO.setUserName("test");
|
mysqlDatasourceParamDTO.setUserName("test");
|
||||||
mysqlDatasourceParamDTO.setPassword("123456");
|
mysqlDatasourceParamDTO.setPassword("123456");
|
||||||
mysqlDatasourceParamDTO.setOther(other);
|
mysqlDatasourceParamDTO.setOther(other);
|
||||||
ConnectionParam connectionParam = DatasourceUtil.buildConnectionParams(mysqlDatasourceParamDTO);
|
ConnectionParam connectionParam = DataSourceUtils.buildConnectionParams(mysqlDatasourceParamDTO);
|
||||||
String expected = "{\"user\":\"test\",\"password\":\"IUAjJCVeJipNVEl6TkRVMg==\",\"address\":\"jdbc:mysql://192.168.9.1:1521\",\"database\":\"im\",\"jdbcUrl\":\"jdbc:mysql://192.168.9.1:1521/"
|
String expected = "{\"user\":\"test\",\"password\":\"IUAjJCVeJipNVEl6TkRVMg==\",\"address\":\"jdbc:mysql://192.168.9.1:1521\",\"database\":\"im\",\"jdbcUrl\":\"jdbc:mysql://192.168.9.1:1521/"
|
||||||
+ "im\",\"driverClassName\":\"com.mysql.cj.jdbc.Driver\",\"validationQuery\":\"select 1\",\"props\":{\"autoDeserialize\":\"yes\",\"allowUrlInLocalInfile\":\"true\"}}";
|
+ "im\",\"driverClassName\":\"com.mysql.cj.jdbc.Driver\",\"validationQuery\":\"select 1\",\"props\":{\"autoDeserialize\":\"yes\",\"allowUrlInLocalInfile\":\"true\"}}";
|
||||||
Assert.assertEquals(expected, JSONUtils.toJsonString(connectionParam));
|
Assert.assertEquals(expected, JSONUtils.toJsonString(connectionParam));
|
||||||
|
|
@ -360,7 +360,7 @@ public class DataSourceServiceTest {
|
||||||
mysqlDatasourceParamDTO.setDatabase("im");
|
mysqlDatasourceParamDTO.setDatabase("im");
|
||||||
mysqlDatasourceParamDTO.setUserName("test");
|
mysqlDatasourceParamDTO.setUserName("test");
|
||||||
mysqlDatasourceParamDTO.setPassword("123456");
|
mysqlDatasourceParamDTO.setPassword("123456");
|
||||||
connectionParam = DatasourceUtil.buildConnectionParams(mysqlDatasourceParamDTO);
|
connectionParam = DataSourceUtils.buildConnectionParams(mysqlDatasourceParamDTO);
|
||||||
expected = "{\"user\":\"test\",\"password\":\"123456\",\"address\":\"jdbc:mysql://192.168.9.1:1521\",\"database\":\"im\","
|
expected = "{\"user\":\"test\",\"password\":\"123456\",\"address\":\"jdbc:mysql://192.168.9.1:1521\",\"database\":\"im\","
|
||||||
+ "\"jdbcUrl\":\"jdbc:mysql://192.168.9.1:1521/im\",\"driverClassName\":\"com.mysql.cj.jdbc.Driver\",\"validationQuery\":\"select 1\"}";
|
+ "\"jdbcUrl\":\"jdbc:mysql://192.168.9.1:1521/im\",\"driverClassName\":\"com.mysql.cj.jdbc.Driver\",\"validationQuery\":\"select 1\"}";
|
||||||
Assert.assertEquals(expected, JSONUtils.toJsonString(connectionParam));
|
Assert.assertEquals(expected, JSONUtils.toJsonString(connectionParam));
|
||||||
|
|
@ -396,9 +396,9 @@ public class DataSourceServiceTest {
|
||||||
postgreSqlDatasourceParam.setDatabase("dolphinscheduler");
|
postgreSqlDatasourceParam.setDatabase("dolphinscheduler");
|
||||||
postgreSqlDatasourceParam.setUserName("postgres");
|
postgreSqlDatasourceParam.setUserName("postgres");
|
||||||
postgreSqlDatasourceParam.setPassword("");
|
postgreSqlDatasourceParam.setPassword("");
|
||||||
ConnectionParam connectionParam = DatasourceUtil.buildConnectionParams(postgreSqlDatasourceParam);
|
ConnectionParam connectionParam = DataSourceUtils.buildConnectionParams(postgreSqlDatasourceParam);
|
||||||
|
|
||||||
PowerMockito.mockStatic(DatasourceUtil.class);
|
PowerMockito.mockStatic(DataSourceUtils.class);
|
||||||
PowerMockito.mockStatic(DataSourceClientProvider.class);
|
PowerMockito.mockStatic(DataSourceClientProvider.class);
|
||||||
DataSourceClientProvider clientProvider = PowerMockito.mock(DataSourceClientProvider.class);
|
DataSourceClientProvider clientProvider = PowerMockito.mock(DataSourceClientProvider.class);
|
||||||
PowerMockito.when(DataSourceClientProvider.getInstance()).thenReturn(clientProvider);
|
PowerMockito.when(DataSourceClientProvider.getInstance()).thenReturn(clientProvider);
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
package org.apache.dolphinscheduler.plugin.datasource.api.plugin;
|
package org.apache.dolphinscheduler.plugin.datasource.api.plugin;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.spi.datasource.BaseConnectionParam;
|
import org.apache.dolphinscheduler.spi.datasource.BaseConnectionParam;
|
||||||
import org.apache.dolphinscheduler.spi.datasource.ConnectionParam;
|
import org.apache.dolphinscheduler.spi.datasource.ConnectionParam;
|
||||||
import org.apache.dolphinscheduler.spi.datasource.DataSourceChannel;
|
import org.apache.dolphinscheduler.spi.datasource.DataSourceChannel;
|
||||||
|
|
@ -52,7 +52,7 @@ public class DataSourceClientProvider {
|
||||||
|
|
||||||
public Connection getConnection(DbType dbType, ConnectionParam connectionParam) {
|
public Connection getConnection(DbType dbType, ConnectionParam connectionParam) {
|
||||||
BaseConnectionParam baseConnectionParam = (BaseConnectionParam) connectionParam;
|
BaseConnectionParam baseConnectionParam = (BaseConnectionParam) connectionParam;
|
||||||
String datasourceUniqueId = DatasourceUtil.getDatasourceUniqueId(baseConnectionParam, dbType);
|
String datasourceUniqueId = DataSourceUtils.getDatasourceUniqueId(baseConnectionParam, dbType);
|
||||||
logger.info("getConnection datasourceUniqueId {}", datasourceUniqueId);
|
logger.info("getConnection datasourceUniqueId {}", datasourceUniqueId);
|
||||||
|
|
||||||
DataSourceClient dataSourceClient = uniqueId2dataSourceClientMap.computeIfAbsent(datasourceUniqueId, $ -> {
|
DataSourceClient dataSourceClient = uniqueId2dataSourceClientMap.computeIfAbsent(datasourceUniqueId, $ -> {
|
||||||
|
|
|
||||||
|
|
@ -34,12 +34,12 @@ import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
public class DatasourceUtil {
|
public class DataSourceUtils {
|
||||||
|
|
||||||
private DatasourceUtil() {
|
private DataSourceUtils() {
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final Logger logger = LoggerFactory.getLogger(DatasourceUtil.class);
|
private static final Logger logger = LoggerFactory.getLogger(DataSourceUtils.class);
|
||||||
|
|
||||||
private static final DatasourceProcessor mysqlProcessor = new MysqlDatasourceProcessor();
|
private static final DatasourceProcessor mysqlProcessor = new MysqlDatasourceProcessor();
|
||||||
private static final DatasourceProcessor postgreSqlProcessor = new PostgreSqlDatasourceProcessor();
|
private static final DatasourceProcessor postgreSqlProcessor = new PostgreSqlDatasourceProcessor();
|
||||||
|
|
@ -19,7 +19,7 @@ package org.apache.dolphinscheduler.plugin.datasource.api.datasource.clickhouse;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbType;
|
import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
import org.apache.dolphinscheduler.spi.utils.Constants;
|
import org.apache.dolphinscheduler.spi.utils.Constants;
|
||||||
|
|
@ -37,7 +37,7 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
|
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PrepareForTest({Class.class, DriverManager.class, DatasourceUtil.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
@PrepareForTest({Class.class, DriverManager.class, DataSourceUtils.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
||||||
public class ClickHouseDatasourceProcessorTest {
|
public class ClickHouseDatasourceProcessorTest {
|
||||||
|
|
||||||
private ClickHouseDatasourceProcessor clickHouseDatasourceProcessor = new ClickHouseDatasourceProcessor();
|
private ClickHouseDatasourceProcessor clickHouseDatasourceProcessor = new ClickHouseDatasourceProcessor();
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ package org.apache.dolphinscheduler.plugin.datasource.api.datasource.db2;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbType;
|
import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
import org.apache.dolphinscheduler.spi.utils.Constants;
|
import org.apache.dolphinscheduler.spi.utils.Constants;
|
||||||
|
|
@ -37,7 +37,7 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
|
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PrepareForTest({Class.class, DriverManager.class, DatasourceUtil.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
@PrepareForTest({Class.class, DriverManager.class, DataSourceUtils.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
||||||
public class Db2DatasourceProcessorTest {
|
public class Db2DatasourceProcessorTest {
|
||||||
|
|
||||||
private Db2DatasourceProcessor db2DatasourceProcessor = new Db2DatasourceProcessor();
|
private Db2DatasourceProcessor db2DatasourceProcessor = new Db2DatasourceProcessor();
|
||||||
|
|
|
||||||
|
|
@ -19,11 +19,10 @@ package org.apache.dolphinscheduler.plugin.datasource.api.datasource.hive;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbType;
|
import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
import org.apache.dolphinscheduler.spi.utils.Constants;
|
import org.apache.dolphinscheduler.spi.utils.Constants;
|
||||||
import org.apache.dolphinscheduler.spi.utils.JSONUtils;
|
|
||||||
|
|
||||||
import java.sql.DriverManager;
|
import java.sql.DriverManager;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
@ -38,7 +37,7 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
|
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PrepareForTest({Class.class, DriverManager.class, DatasourceUtil.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
@PrepareForTest({Class.class, DriverManager.class, DataSourceUtils.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
||||||
public class HiveDatasourceProcessorTest {
|
public class HiveDatasourceProcessorTest {
|
||||||
|
|
||||||
private HiveDatasourceProcessor hiveDatasourceProcessor = new HiveDatasourceProcessor();
|
private HiveDatasourceProcessor hiveDatasourceProcessor = new HiveDatasourceProcessor();
|
||||||
|
|
|
||||||
|
|
@ -19,11 +19,10 @@ package org.apache.dolphinscheduler.plugin.datasource.api.datasource.mysql;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbType;
|
import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
import org.apache.dolphinscheduler.spi.utils.Constants;
|
import org.apache.dolphinscheduler.spi.utils.Constants;
|
||||||
import org.apache.dolphinscheduler.spi.utils.JSONUtils;
|
|
||||||
|
|
||||||
import java.sql.DriverManager;
|
import java.sql.DriverManager;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
@ -38,7 +37,7 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
|
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PrepareForTest({Class.class, DriverManager.class, DatasourceUtil.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
@PrepareForTest({Class.class, DriverManager.class, DataSourceUtils.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
||||||
public class MysqlDatasourceProcessorTest {
|
public class MysqlDatasourceProcessorTest {
|
||||||
|
|
||||||
private MysqlDatasourceProcessor mysqlDatasourceProcessor = new MysqlDatasourceProcessor();
|
private MysqlDatasourceProcessor mysqlDatasourceProcessor = new MysqlDatasourceProcessor();
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ package org.apache.dolphinscheduler.plugin.datasource.api.datasource.oracle;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbConnectType;
|
import org.apache.dolphinscheduler.spi.enums.DbConnectType;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbType;
|
import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
|
|
@ -38,7 +38,7 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
|
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PrepareForTest({Class.class, DriverManager.class, DatasourceUtil.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
@PrepareForTest({Class.class, DriverManager.class, DataSourceUtils.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
||||||
public class OracleDatasourceProcessorTest {
|
public class OracleDatasourceProcessorTest {
|
||||||
|
|
||||||
private OracleDatasourceProcessor oracleDatasourceProcessor = new OracleDatasourceProcessor();
|
private OracleDatasourceProcessor oracleDatasourceProcessor = new OracleDatasourceProcessor();
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ package org.apache.dolphinscheduler.plugin.datasource.api.datasource.postgresql;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbType;
|
import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
import org.apache.dolphinscheduler.spi.utils.Constants;
|
import org.apache.dolphinscheduler.spi.utils.Constants;
|
||||||
|
|
@ -37,7 +37,7 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
|
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PrepareForTest({Class.class, DriverManager.class, DatasourceUtil.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
@PrepareForTest({Class.class, DriverManager.class, DataSourceUtils.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
||||||
public class PostgreSqlDatasourceProcessorTest {
|
public class PostgreSqlDatasourceProcessorTest {
|
||||||
|
|
||||||
private PostgreSqlDatasourceProcessor postgreSqlDatasourceProcessor = new PostgreSqlDatasourceProcessor();
|
private PostgreSqlDatasourceProcessor postgreSqlDatasourceProcessor = new PostgreSqlDatasourceProcessor();
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ package org.apache.dolphinscheduler.plugin.datasource.api.datasource.presto;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbType;
|
import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
import org.apache.dolphinscheduler.spi.utils.Constants;
|
import org.apache.dolphinscheduler.spi.utils.Constants;
|
||||||
|
|
@ -37,7 +37,7 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
|
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PrepareForTest({Class.class, DriverManager.class, DatasourceUtil.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
@PrepareForTest({Class.class, DriverManager.class, DataSourceUtils.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
||||||
public class PrestoDatasourceProcessorTest {
|
public class PrestoDatasourceProcessorTest {
|
||||||
|
|
||||||
private PrestoDatasourceProcessor prestoDatasourceProcessor = new PrestoDatasourceProcessor();
|
private PrestoDatasourceProcessor prestoDatasourceProcessor = new PrestoDatasourceProcessor();
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ package org.apache.dolphinscheduler.plugin.datasource.api.datasource.spark;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbType;
|
import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
import org.apache.dolphinscheduler.spi.utils.Constants;
|
import org.apache.dolphinscheduler.spi.utils.Constants;
|
||||||
|
|
@ -37,7 +37,7 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
|
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PrepareForTest({Class.class, DriverManager.class, DatasourceUtil.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
@PrepareForTest({Class.class, DriverManager.class, DataSourceUtils.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
||||||
public class SparkDatasourceProcessorTest {
|
public class SparkDatasourceProcessorTest {
|
||||||
|
|
||||||
private SparkDatasourceProcessor sparkDatasourceProcessor = new SparkDatasourceProcessor();
|
private SparkDatasourceProcessor sparkDatasourceProcessor = new SparkDatasourceProcessor();
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ package org.apache.dolphinscheduler.plugin.datasource.api.datasource.sqlserver;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DbType;
|
import org.apache.dolphinscheduler.spi.enums.DbType;
|
||||||
import org.apache.dolphinscheduler.spi.utils.Constants;
|
import org.apache.dolphinscheduler.spi.utils.Constants;
|
||||||
|
|
@ -38,7 +38,7 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||||
import org.powermock.modules.junit4.PowerMockRunner;
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
|
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PrepareForTest({Class.class, DriverManager.class, DatasourceUtil.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
@PrepareForTest({Class.class, DriverManager.class, DataSourceUtils.class, CommonUtils.class, DataSourceClientProvider.class, PasswordUtils.class})
|
||||||
public class SqlServerDatasourceProcessorTest {
|
public class SqlServerDatasourceProcessorTest {
|
||||||
|
|
||||||
private SqlServerDatasourceProcessor sqlServerDatasourceProcessor = new SqlServerDatasourceProcessor();
|
private SqlServerDatasourceProcessor sqlServerDatasourceProcessor = new SqlServerDatasourceProcessor();
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ import org.powermock.modules.junit4.PowerMockRunner;
|
||||||
|
|
||||||
@RunWith(PowerMockRunner.class)
|
@RunWith(PowerMockRunner.class)
|
||||||
@PrepareForTest({Class.class, DriverManager.class, MysqlDatasourceProcessor.class, DataSourceClientProvider.class, PasswordUtils.class, CommonUtils.class})
|
@PrepareForTest({Class.class, DriverManager.class, MysqlDatasourceProcessor.class, DataSourceClientProvider.class, PasswordUtils.class, CommonUtils.class})
|
||||||
public class DatasourceUtilTest {
|
public class DataSourceUtilsTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCheckDatasourceParam() {
|
public void testCheckDatasourceParam() {
|
||||||
|
|
@ -52,7 +52,7 @@ public class DatasourceUtilTest {
|
||||||
other.put("queryTimeout", "-1");
|
other.put("queryTimeout", "-1");
|
||||||
other.put("characterEncoding", "utf8");
|
other.put("characterEncoding", "utf8");
|
||||||
mysqlDatasourceParamDTO.setOther(other);
|
mysqlDatasourceParamDTO.setOther(other);
|
||||||
DatasourceUtil.checkDatasourceParam(mysqlDatasourceParamDTO);
|
DataSourceUtils.checkDatasourceParam(mysqlDatasourceParamDTO);
|
||||||
Assert.assertTrue(true);
|
Assert.assertTrue(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -68,7 +68,7 @@ public class DatasourceUtilTest {
|
||||||
PowerMockito.when(PasswordUtils.encodePassword(Mockito.anyString())).thenReturn("123456");
|
PowerMockito.when(PasswordUtils.encodePassword(Mockito.anyString())).thenReturn("123456");
|
||||||
PowerMockito.mockStatic(CommonUtils.class);
|
PowerMockito.mockStatic(CommonUtils.class);
|
||||||
PowerMockito.when(CommonUtils.getKerberosStartupState()).thenReturn(false);
|
PowerMockito.when(CommonUtils.getKerberosStartupState()).thenReturn(false);
|
||||||
ConnectionParam connectionParam = DatasourceUtil.buildConnectionParams(mysqlDatasourceParamDTO);
|
ConnectionParam connectionParam = DataSourceUtils.buildConnectionParams(mysqlDatasourceParamDTO);
|
||||||
Assert.assertNotNull(connectionParam);
|
Assert.assertNotNull(connectionParam);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -80,7 +80,7 @@ public class DatasourceUtilTest {
|
||||||
mysqlDatasourceParamDTO.setUserName("root");
|
mysqlDatasourceParamDTO.setUserName("root");
|
||||||
mysqlDatasourceParamDTO.setPort(3306);
|
mysqlDatasourceParamDTO.setPort(3306);
|
||||||
mysqlDatasourceParamDTO.setPassword("123456");
|
mysqlDatasourceParamDTO.setPassword("123456");
|
||||||
ConnectionParam connectionParam = DatasourceUtil.buildConnectionParams(DbType.MYSQL, JSONUtils.toJsonString(mysqlDatasourceParamDTO));
|
ConnectionParam connectionParam = DataSourceUtils.buildConnectionParams(DbType.MYSQL, JSONUtils.toJsonString(mysqlDatasourceParamDTO));
|
||||||
Assert.assertNotNull(connectionParam);
|
Assert.assertNotNull(connectionParam);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -107,7 +107,7 @@ public class DatasourceUtilTest {
|
||||||
public void testGetJdbcUrl() {
|
public void testGetJdbcUrl() {
|
||||||
MysqlConnectionParam mysqlConnectionParam = new MysqlConnectionParam();
|
MysqlConnectionParam mysqlConnectionParam = new MysqlConnectionParam();
|
||||||
mysqlConnectionParam.setJdbcUrl("jdbc:mysql://localhost:3308");
|
mysqlConnectionParam.setJdbcUrl("jdbc:mysql://localhost:3308");
|
||||||
String jdbcUrl = DatasourceUtil.getJdbcUrl(DbType.MYSQL, mysqlConnectionParam);
|
String jdbcUrl = DataSourceUtils.getJdbcUrl(DbType.MYSQL, mysqlConnectionParam);
|
||||||
Assert.assertEquals("jdbc:mysql://localhost:3308?allowLoadLocalInfile=false&autoDeserialize=false&allowLocalInfile=false&allowUrlInLocalInfile=false",
|
Assert.assertEquals("jdbc:mysql://localhost:3308?allowLoadLocalInfile=false&autoDeserialize=false&allowLocalInfile=false&allowUrlInLocalInfile=false",
|
||||||
jdbcUrl);
|
jdbcUrl);
|
||||||
}
|
}
|
||||||
|
|
@ -120,25 +120,25 @@ public class DatasourceUtilTest {
|
||||||
connectionParam.setUser("root");
|
connectionParam.setUser("root");
|
||||||
connectionParam.setPassword("123456");
|
connectionParam.setPassword("123456");
|
||||||
|
|
||||||
Assert.assertNotNull(DatasourceUtil.buildDatasourceParamDTO(DbType.MYSQL, JSONUtils.toJsonString(connectionParam)));
|
Assert.assertNotNull(DataSourceUtils.buildDatasourceParamDTO(DbType.MYSQL, JSONUtils.toJsonString(connectionParam)));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetDatasourceProcessor() {
|
public void testGetDatasourceProcessor() {
|
||||||
Assert.assertNotNull(DatasourceUtil.getDatasourceProcessor(DbType.MYSQL));
|
Assert.assertNotNull(DataSourceUtils.getDatasourceProcessor(DbType.MYSQL));
|
||||||
Assert.assertNotNull(DatasourceUtil.getDatasourceProcessor(DbType.POSTGRESQL));
|
Assert.assertNotNull(DataSourceUtils.getDatasourceProcessor(DbType.POSTGRESQL));
|
||||||
Assert.assertNotNull(DatasourceUtil.getDatasourceProcessor(DbType.HIVE));
|
Assert.assertNotNull(DataSourceUtils.getDatasourceProcessor(DbType.HIVE));
|
||||||
Assert.assertNotNull(DatasourceUtil.getDatasourceProcessor(DbType.SPARK));
|
Assert.assertNotNull(DataSourceUtils.getDatasourceProcessor(DbType.SPARK));
|
||||||
Assert.assertNotNull(DatasourceUtil.getDatasourceProcessor(DbType.CLICKHOUSE));
|
Assert.assertNotNull(DataSourceUtils.getDatasourceProcessor(DbType.CLICKHOUSE));
|
||||||
Assert.assertNotNull(DatasourceUtil.getDatasourceProcessor(DbType.ORACLE));
|
Assert.assertNotNull(DataSourceUtils.getDatasourceProcessor(DbType.ORACLE));
|
||||||
Assert.assertNotNull(DatasourceUtil.getDatasourceProcessor(DbType.SQLSERVER));
|
Assert.assertNotNull(DataSourceUtils.getDatasourceProcessor(DbType.SQLSERVER));
|
||||||
Assert.assertNotNull(DatasourceUtil.getDatasourceProcessor(DbType.DB2));
|
Assert.assertNotNull(DataSourceUtils.getDatasourceProcessor(DbType.DB2));
|
||||||
Assert.assertNotNull(DatasourceUtil.getDatasourceProcessor(DbType.PRESTO));
|
Assert.assertNotNull(DataSourceUtils.getDatasourceProcessor(DbType.PRESTO));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test(expected = Exception.class)
|
@Test(expected = Exception.class)
|
||||||
public void testGetDatasourceProcessorError() {
|
public void testGetDatasourceProcessorError() {
|
||||||
DatasourceUtil.getDatasourceProcessor(null);
|
DataSourceUtils.getDatasourceProcessor(null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -22,7 +22,7 @@ import static org.apache.dolphinscheduler.spi.task.TaskConstants.EXIT_CODE_FAILU
|
||||||
import static org.apache.dolphinscheduler.spi.task.TaskConstants.RWXR_XR_X;
|
import static org.apache.dolphinscheduler.spi.task.TaskConstants.RWXR_XR_X;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.task.api.AbstractTaskExecutor;
|
import org.apache.dolphinscheduler.plugin.task.api.AbstractTaskExecutor;
|
||||||
import org.apache.dolphinscheduler.plugin.task.api.ShellCommandExecutor;
|
import org.apache.dolphinscheduler.plugin.task.api.ShellCommandExecutor;
|
||||||
import org.apache.dolphinscheduler.plugin.task.api.TaskResponse;
|
import org.apache.dolphinscheduler.plugin.task.api.TaskResponse;
|
||||||
|
|
@ -235,11 +235,11 @@ public class DataxTask extends AbstractTaskExecutor {
|
||||||
*/
|
*/
|
||||||
private List<ObjectNode> buildDataxJobContentJson() {
|
private List<ObjectNode> buildDataxJobContentJson() {
|
||||||
DataxTaskExecutionContext dataxTaskExecutionContext = taskExecutionContext.getDataxTaskExecutionContext();
|
DataxTaskExecutionContext dataxTaskExecutionContext = taskExecutionContext.getDataxTaskExecutionContext();
|
||||||
BaseConnectionParam dataSourceCfg = (BaseConnectionParam) DatasourceUtil.buildConnectionParams(
|
BaseConnectionParam dataSourceCfg = (BaseConnectionParam) DataSourceUtils.buildConnectionParams(
|
||||||
DbType.of(dataxTaskExecutionContext.getSourcetype()),
|
DbType.of(dataxTaskExecutionContext.getSourcetype()),
|
||||||
dataxTaskExecutionContext.getSourceConnectionParams());
|
dataxTaskExecutionContext.getSourceConnectionParams());
|
||||||
|
|
||||||
BaseConnectionParam dataTargetCfg = (BaseConnectionParam) DatasourceUtil.buildConnectionParams(
|
BaseConnectionParam dataTargetCfg = (BaseConnectionParam) DataSourceUtils.buildConnectionParams(
|
||||||
DbType.of(dataxTaskExecutionContext.getTargetType()),
|
DbType.of(dataxTaskExecutionContext.getTargetType()),
|
||||||
dataxTaskExecutionContext.getTargetConnectionParams());
|
dataxTaskExecutionContext.getTargetConnectionParams());
|
||||||
|
|
||||||
|
|
@ -252,7 +252,7 @@ public class DataxTask extends AbstractTaskExecutor {
|
||||||
}
|
}
|
||||||
|
|
||||||
ArrayNode urlArr = readerConn.putArray("jdbcUrl");
|
ArrayNode urlArr = readerConn.putArray("jdbcUrl");
|
||||||
urlArr.add(DatasourceUtil.getJdbcUrl(DbType.valueOf(dataXParameters.getDsType()), dataSourceCfg));
|
urlArr.add(DataSourceUtils.getJdbcUrl(DbType.valueOf(dataXParameters.getDsType()), dataSourceCfg));
|
||||||
|
|
||||||
readerConnArr.add(readerConn);
|
readerConnArr.add(readerConn);
|
||||||
|
|
||||||
|
|
@ -270,7 +270,7 @@ public class DataxTask extends AbstractTaskExecutor {
|
||||||
ArrayNode tableArr = writerConn.putArray("table");
|
ArrayNode tableArr = writerConn.putArray("table");
|
||||||
tableArr.add(dataXParameters.getTargetTable());
|
tableArr.add(dataXParameters.getTargetTable());
|
||||||
|
|
||||||
writerConn.put("jdbcUrl", DatasourceUtil.getJdbcUrl(DbType.valueOf(dataXParameters.getDtType()), dataTargetCfg));
|
writerConn.put("jdbcUrl", DataSourceUtils.getJdbcUrl(DbType.valueOf(dataXParameters.getDtType()), dataTargetCfg));
|
||||||
writerConnArr.add(writerConn);
|
writerConnArr.add(writerConn);
|
||||||
|
|
||||||
ObjectNode writerParam = JSONUtils.createObjectNode();
|
ObjectNode writerParam = JSONUtils.createObjectNode();
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ import static org.apache.dolphinscheduler.spi.task.TaskConstants.EXIT_CODE_SUCCE
|
||||||
import static org.apache.dolphinscheduler.spi.task.TaskConstants.TASK_LOG_INFO_FORMAT;
|
import static org.apache.dolphinscheduler.spi.task.TaskConstants.TASK_LOG_INFO_FORMAT;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.task.api.AbstractTaskExecutor;
|
import org.apache.dolphinscheduler.plugin.task.api.AbstractTaskExecutor;
|
||||||
import org.apache.dolphinscheduler.spi.datasource.ConnectionParam;
|
import org.apache.dolphinscheduler.spi.datasource.ConnectionParam;
|
||||||
import org.apache.dolphinscheduler.spi.enums.DataType;
|
import org.apache.dolphinscheduler.spi.enums.DataType;
|
||||||
|
|
@ -101,7 +101,7 @@ public class ProcedureTask extends AbstractTaskExecutor {
|
||||||
// load class
|
// load class
|
||||||
DbType dbType = DbType.valueOf(procedureParameters.getType());
|
DbType dbType = DbType.valueOf(procedureParameters.getType());
|
||||||
// get datasource
|
// get datasource
|
||||||
ConnectionParam connectionParam = DatasourceUtil.buildConnectionParams(DbType.valueOf(procedureParameters.getType()),
|
ConnectionParam connectionParam = DataSourceUtils.buildConnectionParams(DbType.valueOf(procedureParameters.getType()),
|
||||||
taskExecutionContext.getProcedureTaskExecutionContext().getConnectionParams());
|
taskExecutionContext.getProcedureTaskExecutionContext().getConnectionParams());
|
||||||
|
|
||||||
// get jdbc connection
|
// get jdbc connection
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ package org.apache.dolphinscheduler.plugin.task.sql;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.task.api.AbstractTaskExecutor;
|
import org.apache.dolphinscheduler.plugin.task.api.AbstractTaskExecutor;
|
||||||
import org.apache.dolphinscheduler.plugin.task.api.TaskException;
|
import org.apache.dolphinscheduler.plugin.task.api.TaskException;
|
||||||
import org.apache.dolphinscheduler.plugin.task.util.MapUtils;
|
import org.apache.dolphinscheduler.plugin.task.util.MapUtils;
|
||||||
|
|
@ -133,7 +133,7 @@ public class SqlTask extends AbstractTaskExecutor {
|
||||||
SQLTaskExecutionContext sqlTaskExecutionContext = taskExecutionContext.getSqlTaskExecutionContext();
|
SQLTaskExecutionContext sqlTaskExecutionContext = taskExecutionContext.getSqlTaskExecutionContext();
|
||||||
|
|
||||||
// get datasource
|
// get datasource
|
||||||
baseConnectionParam = (BaseConnectionParam) DatasourceUtil.buildConnectionParams(
|
baseConnectionParam = (BaseConnectionParam) DataSourceUtils.buildConnectionParams(
|
||||||
DbType.valueOf(sqlParameters.getType()),
|
DbType.valueOf(sqlParameters.getType()),
|
||||||
sqlTaskExecutionContext.getConnectionParams());
|
sqlTaskExecutionContext.getConnectionParams());
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,7 @@ import static org.apache.dolphinscheduler.spi.task.TaskConstants.DOUBLE_QUOTES;
|
||||||
import static org.apache.dolphinscheduler.spi.task.TaskConstants.EQUAL_SIGN;
|
import static org.apache.dolphinscheduler.spi.task.TaskConstants.EQUAL_SIGN;
|
||||||
import static org.apache.dolphinscheduler.spi.task.TaskConstants.SPACE;
|
import static org.apache.dolphinscheduler.spi.task.TaskConstants.SPACE;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.task.sqoop.SqoopQueryType;
|
import org.apache.dolphinscheduler.plugin.task.sqoop.SqoopQueryType;
|
||||||
import org.apache.dolphinscheduler.plugin.task.sqoop.generator.ISourceGenerator;
|
import org.apache.dolphinscheduler.plugin.task.sqoop.generator.ISourceGenerator;
|
||||||
import org.apache.dolphinscheduler.plugin.task.sqoop.parameter.SqoopParameters;
|
import org.apache.dolphinscheduler.plugin.task.sqoop.parameter.SqoopParameters;
|
||||||
|
|
@ -67,7 +67,7 @@ public class MysqlSourceGenerator implements ISourceGenerator {
|
||||||
SourceMysqlParameter sourceMysqlParameter = JSONUtils.parseObject(sqoopParameters.getSourceParams(), SourceMysqlParameter.class);
|
SourceMysqlParameter sourceMysqlParameter = JSONUtils.parseObject(sqoopParameters.getSourceParams(), SourceMysqlParameter.class);
|
||||||
|
|
||||||
if (null != sourceMysqlParameter) {
|
if (null != sourceMysqlParameter) {
|
||||||
BaseConnectionParam baseDataSource = (BaseConnectionParam) DatasourceUtil.buildConnectionParams(
|
BaseConnectionParam baseDataSource = (BaseConnectionParam) DataSourceUtils.buildConnectionParams(
|
||||||
DbType.of(taskExecutionContext.getSqoopTaskExecutionContext().getSourcetype()),
|
DbType.of(taskExecutionContext.getSqoopTaskExecutionContext().getSourcetype()),
|
||||||
taskExecutionContext.getSqoopTaskExecutionContext().getSourceConnectionParams());
|
taskExecutionContext.getSqoopTaskExecutionContext().getSourceConnectionParams());
|
||||||
|
|
||||||
|
|
@ -75,7 +75,7 @@ public class MysqlSourceGenerator implements ISourceGenerator {
|
||||||
|
|
||||||
mysqlSourceSb.append(SPACE).append(DB_CONNECT)
|
mysqlSourceSb.append(SPACE).append(DB_CONNECT)
|
||||||
.append(SPACE).append(DOUBLE_QUOTES)
|
.append(SPACE).append(DOUBLE_QUOTES)
|
||||||
.append(DatasourceUtil.getJdbcUrl(DbType.MYSQL, baseDataSource)).append(DOUBLE_QUOTES)
|
.append(DataSourceUtils.getJdbcUrl(DbType.MYSQL, baseDataSource)).append(DOUBLE_QUOTES)
|
||||||
.append(SPACE).append(DB_USERNAME)
|
.append(SPACE).append(DB_USERNAME)
|
||||||
.append(SPACE).append(baseDataSource.getUser())
|
.append(SPACE).append(baseDataSource.getUser())
|
||||||
.append(SPACE).append(DB_PWD)
|
.append(SPACE).append(DB_PWD)
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@ import static org.apache.dolphinscheduler.spi.task.TaskConstants.DOUBLE_QUOTES;
|
||||||
import static org.apache.dolphinscheduler.spi.task.TaskConstants.SINGLE_QUOTES;
|
import static org.apache.dolphinscheduler.spi.task.TaskConstants.SINGLE_QUOTES;
|
||||||
import static org.apache.dolphinscheduler.spi.task.TaskConstants.SPACE;
|
import static org.apache.dolphinscheduler.spi.task.TaskConstants.SPACE;
|
||||||
|
|
||||||
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DatasourceUtil;
|
import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils;
|
||||||
import org.apache.dolphinscheduler.plugin.task.sqoop.generator.ITargetGenerator;
|
import org.apache.dolphinscheduler.plugin.task.sqoop.generator.ITargetGenerator;
|
||||||
import org.apache.dolphinscheduler.plugin.task.sqoop.parameter.SqoopParameters;
|
import org.apache.dolphinscheduler.plugin.task.sqoop.parameter.SqoopParameters;
|
||||||
import org.apache.dolphinscheduler.plugin.task.sqoop.parameter.targets.TargetMysqlParameter;
|
import org.apache.dolphinscheduler.plugin.task.sqoop.parameter.targets.TargetMysqlParameter;
|
||||||
|
|
@ -63,7 +63,7 @@ public class MysqlTargetGenerator implements ITargetGenerator {
|
||||||
if (null != targetMysqlParameter && targetMysqlParameter.getTargetDatasource() != 0) {
|
if (null != targetMysqlParameter && targetMysqlParameter.getTargetDatasource() != 0) {
|
||||||
|
|
||||||
// get datasource
|
// get datasource
|
||||||
BaseConnectionParam baseDataSource = (BaseConnectionParam) DatasourceUtil.buildConnectionParams(
|
BaseConnectionParam baseDataSource = (BaseConnectionParam) DataSourceUtils.buildConnectionParams(
|
||||||
DbType.of(taskExecutionContext.getSqoopTaskExecutionContext().getTargetType()),
|
DbType.of(taskExecutionContext.getSqoopTaskExecutionContext().getTargetType()),
|
||||||
taskExecutionContext.getSqoopTaskExecutionContext().getTargetConnectionParams());
|
taskExecutionContext.getSqoopTaskExecutionContext().getTargetConnectionParams());
|
||||||
|
|
||||||
|
|
@ -71,7 +71,7 @@ public class MysqlTargetGenerator implements ITargetGenerator {
|
||||||
|
|
||||||
mysqlTargetSb.append(SPACE).append(DB_CONNECT)
|
mysqlTargetSb.append(SPACE).append(DB_CONNECT)
|
||||||
.append(SPACE).append(DOUBLE_QUOTES)
|
.append(SPACE).append(DOUBLE_QUOTES)
|
||||||
.append(DatasourceUtil.getJdbcUrl(DbType.MYSQL, baseDataSource)).append(DOUBLE_QUOTES)
|
.append(DataSourceUtils.getJdbcUrl(DbType.MYSQL, baseDataSource)).append(DOUBLE_QUOTES)
|
||||||
.append(SPACE).append(DB_USERNAME)
|
.append(SPACE).append(DB_USERNAME)
|
||||||
.append(SPACE).append(baseDataSource.getUser())
|
.append(SPACE).append(baseDataSource.getUser())
|
||||||
.append(SPACE).append(DB_PWD)
|
.append(SPACE).append(DB_PWD)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue