فهرست منبع

HUE-8758 [ksql] Pickup API url via the connector config

Romain 5 سال پیش
والد
کامیت
a75b35ce48

+ 3 - 4
desktop/libs/kafka/src/kafka/ksql_client.py

@@ -27,7 +27,6 @@ from desktop.lib.i18n import smart_unicode
 from desktop.lib.rest.http_client import RestException
 from desktop.conf import has_channels
 
-from kafka.conf import KAFKA
 
 if has_channels():
   from notebook.consumer import _send_to_channel
@@ -58,15 +57,15 @@ class KSqlApi(object):
   - https://github.com/bryanyang0528/ksql-python/issues/57
   """
 
-  def __init__(self, user=None, security_enabled=False, ssl_cert_ca_verify=False):
+  def __init__(self, user=None, url=None, security_enabled=False, ssl_cert_ca_verify=False):
     try:
       from ksql import KSQLAPI
     except ImportError:
       raise KSqlApiException('Module missing: pip install ksql')
 
-    self._api_url = KAFKA.KSQL_API_URL.get().strip('/') if KAFKA.KSQL_API_URL.get() else ''
-
+    self._api_url = url.strip('/')
     self.user = user
+
     self.client = client = KSQLAPI(self._api_url)
 
 

+ 1 - 1
desktop/libs/notebook/src/notebook/connectors/base.py

@@ -398,7 +398,7 @@ def get_api(request, snippet):
     return HBaseApi(request.user)
   elif interface == 'ksql':
     from notebook.connectors.ksql import KSqlApi
-    return KSqlApi(request.user)
+    return KSqlApi(request.user, interpreter=interpreter)
   elif interface == 'flink':
     from notebook.connectors.flink import FlinkSqlApi
     return FlinkSqlApi(request.user, interpreter=interpreter)

+ 3 - 1
desktop/libs/notebook/src/notebook/connectors/ksql.py

@@ -46,7 +46,9 @@ class KSqlApi(Api):
   def __init__(self, user, interpreter=None):
     Api.__init__(self, user, interpreter=interpreter)
 
-    self.db = KSqlClientApi(user=user)
+    self.options = interpreter['options']
+
+    self.db = KSqlClientApi(user=user, url=self.options['url'])
 
 
   @query_error_handler