diff --git a/etl-modules/etl-data-source/etl-data-source-common/src/main/java/com/etl/data/domain/config/DataSourceConfig.java b/etl-modules/etl-data-source/etl-data-source-common/src/main/java/com/etl/data/domain/config/DataSourceConfig.java new file mode 100644 index 0000000..9f34f5c --- /dev/null +++ b/etl-modules/etl-data-source/etl-data-source-common/src/main/java/com/etl/data/domain/config/DataSourceConfig.java @@ -0,0 +1,21 @@ +package com.etl.data.domain.config; + +import com.alibaba.druid.pool.DruidDataSource; + + +/** + * @ClassName DataSourceConfig + * @Description 描述 + * @Author YunFei.Du + * @Date 2024/5/10 9:44 + */ +public class DataSourceConfig { + public static DruidDataSource dataSource(String ip , String name, String port , String username, String password) { + DruidDataSource dataSource = new DruidDataSource(); + dataSource.setUsername(username); + dataSource.setPassword(password); + dataSource.setUrl("jdbc:mysql://"+ip+":"+port+"/"+name+"?useSSL=false"); + dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver"); + return dataSource; + } +} diff --git a/etl-modules/etl-data-source/etl-data-source-remote/src/main/java/com/etl/data/source/remote/factory/DataSourceFactory.java b/etl-modules/etl-data-source/etl-data-source-remote/src/main/java/com/etl/data/source/remote/factory/DataSourceFactory.java new file mode 100644 index 0000000..005cd6c --- /dev/null +++ b/etl-modules/etl-data-source/etl-data-source-remote/src/main/java/com/etl/data/source/remote/factory/DataSourceFactory.java @@ -0,0 +1,25 @@ +package com.etl.data.source.remote.factory; + +import com.etl.common.core.domain.Result; +import com.etl.common.core.web.page.TableDataInfo; +import com.etl.data.domain.DataSource; +import com.etl.data.domain.req.DataSourceQueryReq; +import com.etl.data.source.remote.RemoteDataSourceService; +import org.springframework.cloud.openfeign.FallbackFactory; + +/** + * 数据源熔断 + * @author YunFei.Du + * @date 14:10 2024/5/10 + */ +public class DataSourceFactory implements FallbackFactory< RemoteDataSourceService > { + @Override + public RemoteDataSourceService create(Throwable cause) { + return new RemoteDataSourceService (){ + @Override + public Result< TableDataInfo< DataSource > > getDataSourceList(DataSourceQueryReq req) { + return Result.error ( new TableDataInfo ()); + } + }; + } +} diff --git a/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/controller/DataSourceController.java b/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/controller/DataSourceController.java index 1240aee..72c8346 100644 --- a/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/controller/DataSourceController.java +++ b/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/controller/DataSourceController.java @@ -107,7 +107,7 @@ public class DataSourceController extends BaseController { * @return */ @PostMapping("/DataAssetList") - public Result dataAssetListByDataSourceId(@RequestBody DataSource dataSource){ + public Result> dataAssetListByDataSourceId(@RequestBody DataSource dataSource){ return dataSourceService.dataAssetListByDataSourceId(dataSource); } diff --git a/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/service/DataSourceService.java b/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/service/DataSourceService.java index 4eebb8e..a85b144 100644 --- a/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/service/DataSourceService.java +++ b/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/service/DataSourceService.java @@ -2,6 +2,7 @@ package com.etl.data.service; import com.baomidou.mybatisplus.extension.service.IService; import com.etl.common.core.domain.Result; +import com.etl.data.domain.DataAsset; import com.etl.data.domain.DataSource; import com.etl.data.domain.decoration.DataSourceDecoration; import com.etl.data.domain.req.DataSourceQueryReq; @@ -68,7 +69,7 @@ public interface DataSourceService extends IService { * @return */ - Result dataAssetListByDataSourceId( DataSource dataSource); + Result> dataAssetListByDataSourceId(DataSource dataSource); /** diff --git a/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/service/impl/DataSourceServiceImpl.java b/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/service/impl/DataSourceServiceImpl.java index 6b64d6a..dbb62a1 100644 --- a/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/service/impl/DataSourceServiceImpl.java +++ b/etl-modules/etl-data-source/etl-data-source-server/src/main/java/com/etl/data/service/impl/DataSourceServiceImpl.java @@ -55,10 +55,9 @@ public class DataSourceServiceImpl extends ServiceImpl list = this.list ( ); - List< DataSourceDecoration > collect = list.stream ( ).map (DataSourceDecoration::dataSourceBuild ).toList ( ); -// list.stream ( ).map ( DataSourceDecoration::dataSourceBuild).collect ( Collectors.toList ( ) ); + List< DataSourceDecoration > dataSourceDecorationList = list.stream ( ).map ( DataSourceDecoration::dataSourceBuild ).toList ( ); - return collect; + return dataSourceDecorationList; } @@ -291,7 +290,7 @@ public class DataSourceServiceImpl extends ServiceImpl> dataAssetListByDataSourceId( DataSource dataSource) { List dataAssetList = new ArrayList<>();