You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@linkis.apache.org by pe...@apache.org on 2022/06/05 13:50:05 UTC

[incubator-linkis] branch dev-1.2.0 updated: [Feature-2212] Add the default DWSClientConfig constructor for LinkisDataSourceRemoteClient to simplify the client API for internal microservices to call data source services (#2213)

This is an automated email from the ASF dual-hosted git repository.

peacewong pushed a commit to branch dev-1.2.0
in repository https://gitbox.apache.org/repos/asf/incubator-linkis.git


The following commit(s) were added to refs/heads/dev-1.2.0 by this push:
     new 740d015d7 [Feature-2212] Add the default DWSClientConfig constructor for LinkisDataSourceRemoteClient to simplify the client API for internal microservices to call data source services (#2213)
740d015d7 is described below

commit 740d015d70c492c11f738728525faffe0a127814
Author: weixiao <le...@gmail.com>
AuthorDate: Sun Jun 5 21:50:01 2022 +0800

    [Feature-2212] Add the default DWSClientConfig constructor for LinkisDataSourceRemoteClient to simplify the client API for internal microservices to call data source services (#2213)
    
    * [Feature-2212] Add the default DWSClientConfig constructor for LinkisDataSourceRemoteClient to simplify the client API for internal microservices to call data source services
    
    * [Feature-2212] Add the default DWSClientConfig constructor for LinkisDataSourceRemoteClient to simplify the client API for internal microservices to call data source services, add test code
---
 db/linkis_dml.sql                                  |  1 +
 .../datasource/client/DataSourceRemoteClient.scala |  1 +
 .../client/config/DatasourceClientConfig.scala     | 12 +++++
 .../client/impl/LinkisDataSourceRemoteClient.scala | 51 ++++++++++++++++++---
 .../GetConnectParamsByDataSourceNameAction.scala   |  2 +-
 ...n.scala => GetInfoByDataSourceNameAction.scala} | 52 +++++++++-------------
 .../GetInfoByDataSourceNameResult.scala}           | 18 +++++---
 .../datasource/client/TestDataSourceClient.scala   | 32 ++++++++++---
 8 files changed, 122 insertions(+), 47 deletions(-)

diff --git a/db/linkis_dml.sql b/db/linkis_dml.sql
index 1dda5ca8f..2b0942913 100644
--- a/db/linkis_dml.sql
+++ b/db/linkis_dml.sql
@@ -447,6 +447,7 @@ INSERT INTO `linkis_mg_gateway_auth_token`(`token_name`,`legal_users`,`legal_hos
 INSERT INTO `linkis_mg_gateway_auth_token`(`token_name`,`legal_users`,`legal_hosts`,`business_owner`,`create_time`,`update_time`,`elapse_day`,`update_by`) VALUES ('QUALITIS-AUTH','*','*','BDP',curdate(),curdate(),-1,'LINKIS');
 INSERT INTO `linkis_mg_gateway_auth_token`(`token_name`,`legal_users`,`legal_hosts`,`business_owner`,`create_time`,`update_time`,`elapse_day`,`update_by`) VALUES ('VALIDATOR-AUTH','*','*','BDP',curdate(),curdate(),-1,'LINKIS');
 INSERT INTO `linkis_mg_gateway_auth_token`(`token_name`,`legal_users`,`legal_hosts`,`business_owner`,`create_time`,`update_time`,`elapse_day`,`update_by`) VALUES ('LINKISCLI-AUTH','*','*','BDP',curdate(),curdate(),-1,'LINKIS');
+INSERT INTO `linkis_mg_gateway_auth_token`(`token_name`,`legal_users`,`legal_hosts`,`business_owner`,`create_time`,`update_time`,`elapse_day`,`update_by`) VALUES ('DSM-AUTH','*','*','BDP',curdate(),curdate(),-1,'LINKIS');
 
 INSERT INTO `linkis_ps_dm_datasource_type` (`name`, `description`, `option`, `classifier`, `icon`, `layers`) VALUES ('mysql', 'mysql数据库', 'mysql数据库', '关系型数据库', '', 3);
 INSERT INTO `linkis_ps_dm_datasource_type` (`name`, `description`, `option`, `classifier`, `icon`, `layers`) VALUES ('kafka', 'kafka', 'kafka', '消息队列', '', 2);
diff --git a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/DataSourceRemoteClient.scala b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/DataSourceRemoteClient.scala
index 66ccfdfbf..a0985a6e2 100644
--- a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/DataSourceRemoteClient.scala
+++ b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/DataSourceRemoteClient.scala
@@ -24,6 +24,7 @@ trait DataSourceRemoteClient extends RemoteClient {
   def getAllDataSourceTypes(action: GetAllDataSourceTypesAction): GetAllDataSourceTypesResult
   def queryDataSourceEnv(action: QueryDataSourceEnvAction): QueryDataSourceEnvResult
   def getInfoByDataSourceId(action: GetInfoByDataSourceIdAction): GetInfoByDataSourceIdResult
+  def getInfoByDataSourceName(action: GetInfoByDataSourceNameAction): GetInfoByDataSourceNameResult
   def queryDataSource(action: QueryDataSourceAction): QueryDataSourceResult
   def getConnectParams(action: GetConnectParamsByDataSourceIdAction): GetConnectParamsByDataSourceIdResult
   def createDataSource(action: CreateDataSourceAction): CreateDataSourceResult
diff --git a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/config/DatasourceClientConfig.scala b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/config/DatasourceClientConfig.scala
index c347edb59..015dcd88f 100644
--- a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/config/DatasourceClientConfig.scala
+++ b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/config/DatasourceClientConfig.scala
@@ -24,4 +24,16 @@ object DatasourceClientConfig {
 
   var DATA_SOURCE_SERVICE_MODULE: CommonVars[String] = CommonVars.apply("wds.linkis.server.dsm.module.name", "data-source-manager")
 
+  val AUTH_TOKEN_KEY: CommonVars[String] = CommonVars[String]("wds.linkis.server.dsm.auth.token.key", "Token-Code")
+
+  val AUTH_TOKEN_VALUE: CommonVars[String] = CommonVars[String]("wds.linkis.server.dsm.auth.token.value", "DSM-AUTH")
+
+  val DATA_SOURCE_SERVICE_CLIENT_NAME: CommonVars[String] = CommonVars[String]("wds.linkis.server.dsm.client.name", "DataSource-Client")
+
+  val CONNECTION_MAX_SIZE: CommonVars[Int] = CommonVars[Int]("wds.linkis.server.dsm.connection.max.size", 10)
+
+  val CONNECTION_TIMEOUT: CommonVars[Int] = CommonVars[Int]("wds.linkis.server.dsm.connection.timeout", 30000)
+
+  val CONNECTION_READ_TIMEOUT: CommonVars[Int] = CommonVars[Int]("wds.linkis.server.dsm.connection.read.timeout", 10 * 60 * 1000)
+
 }
diff --git a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/impl/LinkisDataSourceRemoteClient.scala b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/impl/LinkisDataSourceRemoteClient.scala
index 98f38c02b..2e5969ea3 100644
--- a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/impl/LinkisDataSourceRemoteClient.scala
+++ b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/impl/LinkisDataSourceRemoteClient.scala
@@ -17,15 +17,54 @@
 
 package org.apache.linkis.datasource.client.impl
 
+import org.apache.commons.lang.StringUtils
+import org.apache.linkis.common.conf.Configuration
+import org.apache.linkis.datasource.client.config.DatasourceClientConfig._
+import org.apache.linkis.datasource.client.exception.DataSourceClientBuilderException
 import org.apache.linkis.datasource.client.request._
 import org.apache.linkis.datasource.client.response._
 import org.apache.linkis.datasource.client.{AbstractRemoteClient, DataSourceRemoteClient}
+import org.apache.linkis.httpclient.authentication.AuthenticationStrategy
 import org.apache.linkis.httpclient.dws.DWSHttpClient
-import org.apache.linkis.httpclient.dws.config.DWSClientConfig
-
-
-class LinkisDataSourceRemoteClient(clientConfig: DWSClientConfig) extends AbstractRemoteClient with DataSourceRemoteClient {
-  protected override val dwsHttpClient = new DWSHttpClient(clientConfig, "DataSource-Client")
+import org.apache.linkis.httpclient.dws.authentication.TokenAuthenticationStrategy
+import org.apache.linkis.httpclient.dws.config.{DWSClientConfig, DWSClientConfigBuilder}
+
+import java.util.concurrent.TimeUnit
+
+
+class LinkisDataSourceRemoteClient(clientConfig: DWSClientConfig, clientName: String) extends AbstractRemoteClient with DataSourceRemoteClient {
+  def this() = this(null, null)
+
+  def this(clientConfig: DWSClientConfig) = this(clientConfig, null)
+
+  protected override val dwsHttpClient: DWSHttpClient = new DWSHttpClient(if (clientConfig != null) clientConfig else createClientConfig(), if (StringUtils.isEmpty(clientName)) DATA_SOURCE_SERVICE_CLIENT_NAME.getValue else clientName)
+
+  def createClientConfig(): DWSClientConfig = {
+    val serverUrl = Configuration.getGateWayURL()
+    if(StringUtils.isEmpty(serverUrl)) throw new DataSourceClientBuilderException("serverUrl cannot be null.")
+
+    val maxConnection: Int = CONNECTION_MAX_SIZE.getValue
+    val connectTimeout: Int = CONNECTION_TIMEOUT.getValue
+    val readTimeout: Int = CONNECTION_READ_TIMEOUT.getValue
+    val tokenKey: String = AUTH_TOKEN_KEY.getValue
+    val tokenValue: String = AUTH_TOKEN_VALUE.getValue
+
+    val authenticationStrategy: AuthenticationStrategy = new TokenAuthenticationStrategy()
+    DWSClientConfigBuilder.newBuilder()
+      .addServerUrl(serverUrl)
+      .connectionTimeout(connectTimeout)
+      .discoveryEnabled(false)
+      .discoveryFrequency(1, TimeUnit.MINUTES)
+      .loadbalancerEnabled(true)
+      .maxConnectionSize(maxConnection)
+      .retryEnabled(false)
+      .readTimeout(readTimeout)
+      .setAuthenticationStrategy(authenticationStrategy)
+      .setAuthTokenKey(tokenKey)
+      .setAuthTokenValue(tokenValue)
+      .setDWSVersion(Configuration.LINKIS_WEB_VERSION.getValue)
+      .build()
+  }
 
   override def getAllDataSourceTypes(action: GetAllDataSourceTypesAction): GetAllDataSourceTypesResult = execute(action).asInstanceOf[GetAllDataSourceTypesResult]
 
@@ -33,6 +72,8 @@ class LinkisDataSourceRemoteClient(clientConfig: DWSClientConfig) extends Abstra
 
   override def getInfoByDataSourceId(action: GetInfoByDataSourceIdAction): GetInfoByDataSourceIdResult = execute(action).asInstanceOf[GetInfoByDataSourceIdResult]
 
+  override def getInfoByDataSourceName(action: GetInfoByDataSourceNameAction): GetInfoByDataSourceNameResult = execute(action).asInstanceOf[GetInfoByDataSourceNameResult]
+
   override def queryDataSource(action: QueryDataSourceAction): QueryDataSourceResult = execute(action).asInstanceOf[QueryDataSourceResult]
 
   override def getConnectParams(action: GetConnectParamsByDataSourceIdAction): GetConnectParamsByDataSourceIdResult = execute(action).asInstanceOf[GetConnectParamsByDataSourceIdResult]
diff --git a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/request/GetConnectParamsByDataSourceNameAction.scala b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/request/GetConnectParamsByDataSourceNameAction.scala
index cade0d582..c698552f4 100644
--- a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/request/GetConnectParamsByDataSourceNameAction.scala
+++ b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/request/GetConnectParamsByDataSourceNameAction.scala
@@ -62,7 +62,7 @@ object GetConnectParamsByDataSourceNameAction{
     }
 
     def build(): GetConnectParamsByDataSourceNameAction = {
-      if (dataSourceName == null) throw new DataSourceClientBuilderException("dataSourceId is needed!")
+      if (dataSourceName == null) throw new DataSourceClientBuilderException("dataSourceName is needed!")
       if(system == null) throw new DataSourceClientBuilderException("system is needed!")
       if(user == null) throw new DataSourceClientBuilderException("user is needed!")
       // Use URIEncoder to encode the datSourceName
diff --git a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/request/GetConnectParamsByDataSourceNameAction.scala b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/request/GetInfoByDataSourceNameAction.scala
similarity index 55%
copy from linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/request/GetConnectParamsByDataSourceNameAction.scala
copy to linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/request/GetInfoByDataSourceNameAction.scala
index cade0d582..860ab359a 100644
--- a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/request/GetConnectParamsByDataSourceNameAction.scala
+++ b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/request/GetInfoByDataSourceNameAction.scala
@@ -17,31 +17,27 @@
 
 package org.apache.linkis.datasource.client.request
 
-import java.net.URLEncoder
-import java.nio.charset.StandardCharsets
-
-import org.apache.linkis.datasource.client.exception.DataSourceClientBuilderException
 import org.apache.linkis.datasource.client.config.DatasourceClientConfig.DATA_SOURCE_SERVICE_MODULE
+import org.apache.linkis.datasource.client.exception.DataSourceClientBuilderException
 import org.apache.linkis.httpclient.request.GetAction
-/**
-  * Get version parameters from data source
- */
-class GetConnectParamsByDataSourceNameAction extends GetAction with DataSourceAction{
+
+
+class GetInfoByDataSourceNameAction extends GetAction with DataSourceAction {
   private var dataSourceName: String = _
 
-  private var user: String = _
+  override def suffixURLs: Array[String] = Array(DATA_SOURCE_SERVICE_MODULE.getValue, "info", "name", dataSourceName)
 
-  override def suffixURLs: Array[String] = Array(DATA_SOURCE_SERVICE_MODULE.getValue, "name", dataSourceName, "connect-params")
+  private var user: String = _
 
   override def setUser(user: String): Unit = this.user = user
 
-  override def getUser: String = user
+  override def getUser: String = this.user
 }
 
-object GetConnectParamsByDataSourceNameAction{
+object GetInfoByDataSourceNameAction {
   def builder(): Builder = new Builder
 
-  class Builder private[GetConnectParamsByDataSourceNameAction]() {
+  class Builder private[GetInfoByDataSourceNameAction]() {
     private var dataSourceName: String = _
     private var system: String = _
     private var user: String = _
@@ -61,23 +57,19 @@ object GetConnectParamsByDataSourceNameAction{
       this
     }
 
-    def build(): GetConnectParamsByDataSourceNameAction = {
-      if (dataSourceName == null) throw new DataSourceClientBuilderException("dataSourceId is needed!")
-      if(system == null) throw new DataSourceClientBuilderException("system is needed!")
-      if(user == null) throw new DataSourceClientBuilderException("user is needed!")
-      // Use URIEncoder to encode the datSourceName
-      var requestDataSourceName = this.dataSourceName
-      try {
-        requestDataSourceName = URLEncoder.encode(dataSourceName, StandardCharsets.UTF_8.name())
-      } catch {
-        case e: Exception =>
-          throw new DataSourceClientBuilderException(s"Cannot encode the name of data source:[$dataSourceName] for request", e)
-      }
-      val getConnectParamsByDataSourceNameAction = new GetConnectParamsByDataSourceNameAction
-      getConnectParamsByDataSourceNameAction.dataSourceName = requestDataSourceName
-      getConnectParamsByDataSourceNameAction.setParameter("system", system)
-      getConnectParamsByDataSourceNameAction.setUser(user)
-      getConnectParamsByDataSourceNameAction
+    def build(): GetInfoByDataSourceNameAction = {
+      if (dataSourceName == null) throw new DataSourceClientBuilderException("dataSourceName is needed!")
+      if (system == null) throw new DataSourceClientBuilderException("system is needed!")
+      if (user == null) throw new DataSourceClientBuilderException("user is needed!")
+
+      val getInfoByDataSourceNameAction = new GetInfoByDataSourceNameAction
+      getInfoByDataSourceNameAction.dataSourceName = this.dataSourceName
+      getInfoByDataSourceNameAction.setParameter("system", system)
+      getInfoByDataSourceNameAction.setUser(user)
+      getInfoByDataSourceNameAction
     }
   }
+
 }
+
+
diff --git a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/config/DatasourceClientConfig.scala b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/response/GetInfoByDataSourceNameResult.scala
similarity index 53%
copy from linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/config/DatasourceClientConfig.scala
copy to linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/response/GetInfoByDataSourceNameResult.scala
index c347edb59..6ea4fb3c2 100644
--- a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/config/DatasourceClientConfig.scala
+++ b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/main/scala/org/apache/linkis/datasource/client/response/GetInfoByDataSourceNameResult.scala
@@ -15,13 +15,21 @@
  * limitations under the License.
  */
 
-package org.apache.linkis.datasource.client.config
+package org.apache.linkis.datasource.client.response
 
-import org.apache.linkis.common.conf.CommonVars
+import org.apache.linkis.datasourcemanager.common.domain.DataSource
+import org.apache.linkis.httpclient.dws.DWSHttpClient
+import org.apache.linkis.httpclient.dws.annotation.DWSHttpMessageResult
+import org.apache.linkis.httpclient.dws.response.DWSResult
 
-object DatasourceClientConfig {
-  var METADATA_SERVICE_MODULE: CommonVars[String] = CommonVars.apply("wds.linkis.server.mdm.module.name", "metadatamanager")
+import scala.beans.BeanProperty
 
-  var DATA_SOURCE_SERVICE_MODULE: CommonVars[String] = CommonVars.apply("wds.linkis.server.dsm.module.name", "data-source-manager")
+@DWSHttpMessageResult("/api/rest_j/v\\d+/data-source-manager/info/name/(\\S+)")
+class GetInfoByDataSourceNameResult extends DWSResult {
+  @BeanProperty var info: java.util.Map[String, Any] = _
 
+  def getDataSource: DataSource = {
+    val str = DWSHttpClient.jacksonJson.writeValueAsString(info)
+    DWSHttpClient.jacksonJson.readValue(str, classOf[DataSource])
+  }
 }
diff --git a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/test/java/org/apache/linkis/datasource/client/TestDataSourceClient.scala b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/test/java/org/apache/linkis/datasource/client/TestDataSourceClient.scala
index 574c42c37..595e046a9 100644
--- a/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/test/java/org/apache/linkis/datasource/client/TestDataSourceClient.scala
+++ b/linkis-public-enhancements/linkis-datasource/linkis-datasource-client/src/test/java/org/apache/linkis/datasource/client/TestDataSourceClient.scala
@@ -19,7 +19,7 @@ package org.apache.linkis.datasource.client
 
 import org.apache.linkis.datasource.client.impl.LinkisDataSourceRemoteClient
 import org.apache.linkis.datasource.client.request._
-import org.apache.linkis.httpclient.dws.authentication.StaticAuthenticationStrategy
+import org.apache.linkis.httpclient.dws.authentication.{StaticAuthenticationStrategy, TokenAuthenticationStrategy}
 import org.apache.linkis.httpclient.dws.config.DWSClientConfigBuilder
 
 import java.util.concurrent.TimeUnit
@@ -27,7 +27,22 @@ import java.util.concurrent.TimeUnit
 object TestDataSourceClient {
   def main(args: Array[String]): Unit = {
     val clientConfig = DWSClientConfigBuilder.newBuilder()
-      .addServerUrl("http://127.0.0.1:9001")
+      .addServerUrl("http://127.0.0.1:9001") //set linkis-mg-gateway url: http://{ip}:{port}
+      .connectionTimeout(30000) //connection timtout
+      .discoveryEnabled(false) //disable discovery
+      .discoveryFrequency(1, TimeUnit.MINUTES)  // discovery frequency
+      .loadbalancerEnabled(false) // enable loadbalance
+      .maxConnectionSize(5) // set max Connection
+      .retryEnabled(false) // set retry
+      .readTimeout(30000) //set read timeout
+      .setAuthenticationStrategy(new TokenAuthenticationStrategy()) //AuthenticationStrategy Linkis authen suppory static and Token
+      .setAuthTokenKey("Token-Code")  // set submit user
+      .setAuthTokenValue("DSM-AUTH") // set passwd or token
+      .setDWSVersion("v1") //linkis rest version v1
+      .build()
+
+    /*val clientConfig = DWSClientConfigBuilder.newBuilder()
+      .addServerUrl("http://192.168.28.98:9001")
       .connectionTimeout(30000)
       .discoveryEnabled(false)
       .discoveryFrequency(1, TimeUnit.MINUTES)
@@ -36,14 +51,19 @@ object TestDataSourceClient {
       .retryEnabled(false)
       .readTimeout(30000)
       .setAuthenticationStrategy(new StaticAuthenticationStrategy())
-      .setAuthTokenKey("hadoop")
-      .setAuthTokenValue("hadoop")
+      .setAuthTokenKey("linkis")
+      .setAuthTokenValue("123456")
       .setDWSVersion("v1")
-      .build()
+      .build()*/
 
     val dataSourceClient = new LinkisDataSourceRemoteClient(clientConfig)
 
-    val getAllDataSourceTypesResult = dataSourceClient.getAllDataSourceTypes(GetAllDataSourceTypesAction.builder().setUser("hadoop").build()).getAllDataSourceType
+    val getDataSourceByName = dataSourceClient.getInfoByDataSourceName(GetInfoByDataSourceNameAction.builder()
+    .setDataSourceName("test_mysql")
+    .setUser("linkis")
+    .setSystem("").build()).getDataSource
+
+    val getAllDataSourceTypesResult = dataSourceClient.getAllDataSourceTypes(GetAllDataSourceTypesAction.builder().setUser("linkis").build()).getAllDataSourceType
 
     val queryDataSourceEnvResult = dataSourceClient.queryDataSourceEnv(
                                         QueryDataSourceEnvAction.builder()


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@linkis.apache.org
For additional commands, e-mail: commits-help@linkis.apache.org