Przeglądaj źródła

[api] Port /connector APIs to public

Harshg999 4 lat temu
rodzic
commit
7d8f7389bc

+ 44 - 0
desktop/core/src/desktop/api_public.py

@@ -28,6 +28,7 @@ from notebook.conf import get_ordered_interpreters
 from desktop import api2 as desktop_api
 from desktop.auth.backend import rewrite_user
 from desktop.lib import fsmanager
+from desktop.lib.connectors import api as connector_api
 
 from beeswax import api as beeswax_api
 
@@ -201,6 +202,49 @@ def guess_field_types(request):
   return indexer_api3.guess_field_types(django_request)
 
 
+# Connector API
+
+@api_view(["GET"])
+def get_connector_types(request):
+  django_request = get_django_request(request)
+  return connector_api.get_connector_types(django_request)
+
+@api_view(["GET"])
+def get_connectors_instances(request):
+  django_request = get_django_request(request)
+  return connector_api.get_connectors_instances(django_request)
+
+@api_view(["POST"])
+def new_connector(request, dialect, interface):
+  django_request = get_django_request(request)
+  return connector_api.new_connector(django_request, dialect, interface)
+
+@api_view(["GET"])
+def get_connector(request, id):
+  django_request = get_django_request(request)
+  return connector_api.get_connector(django_request, id)
+
+@api_view(["POST"])
+def update_connector(request):
+  django_request = get_django_request(request)
+  return connector_api.update_connector(django_request)
+
+@api_view(["POST"])
+def delete_connector(request):
+  django_request = get_django_request(request)
+  return connector_api.delete_connector(django_request)
+
+@api_view(["POST"])
+def test_connector(request):
+  django_request = get_django_request(request)
+  return connector_api.test_connector(django_request)
+
+@api_view(["POST"])
+def install_connector_examples(request):
+  django_request = get_django_request(request)
+  return connector_api.install_connector_examples(django_request)
+
+
 # Utils
 
 def _get_interpreter_from_dialect(dialect, user):

+ 13 - 0
desktop/core/src/desktop/api_public_urls.py

@@ -105,3 +105,16 @@ urlpatterns += [
   re_path(r'^indexer/guess_format/?$', api_public.guess_format, name='indexer_guess_format'),
   re_path(r'^indexer/guess_field_types/?$', api_public.guess_field_types, name='indexer_guess_field_types'),
 ]
+
+urlpatterns += [
+  re_path(r'^connector/types/?$', api_public.get_connector_types, name='connector_get_types'),
+  re_path(r'^connector/instances/?$', api_public.get_connectors_instances, name='connector_get_instances'),
+
+  re_path(r'^connector/instance/new/(?P<dialect>[\w\-]+)/(?P<interface>[\w\-]+)$', api_public.new_connector, name='connector_new'),
+  re_path(r'^connector/instance/get/(?P<id>\d+)$', api_public.get_connector, name='connector_get'),
+  re_path(r'^connector/instance/delete/?$', api_public.delete_connector, name='connector_delete'),
+  re_path(r'^connector/instance/update/?$', api_public.update_connector, name='connector_update'),
+  re_path(r'^connector/instance/test/?$', api_public.test_connector, name='connector_test'),
+
+  re_path(r'^connector/examples/install/?$', api_public.install_connector_examples, name='connector_install_examples'),
+]