Przeglądaj źródła

HUE-3533 [doc2] Refactor dependencies for importing saved beeswax queries

Jenny Kim 9 lat temu
rodzic
commit
03c92f5

+ 2 - 1
apps/beeswax/src/beeswax/management/commands/beeswax_install_examples.py

@@ -26,8 +26,9 @@ from django.utils.translation import ugettext as _
 
 from desktop.lib.exceptions_renderable import PopupException
 from desktop.conf import USE_NEW_EDITOR
-from desktop.models import Directory, Document, Document2, Document2Permission, import_saved_beeswax_query
+from desktop.models import Directory, Document, Document2, Document2Permission
 from hadoop import cluster
+from notebook.models import import_saved_beeswax_query
 from useradmin.models import get_default_user_group, install_sample_user
 
 import beeswax.conf

+ 2 - 1
desktop/core/src/desktop/converters.py

@@ -21,7 +21,8 @@ import logging
 from django.db import transaction
 
 from desktop.models import Document, DocumentPermission, DocumentTag, Document2, Directory, Document2Permission, \
-    FilesystemException, import_saved_beeswax_query
+    FilesystemException
+from notebook.models import import_saved_beeswax_query
 
 
 LOG = logging.getLogger(__name__)

+ 0 - 30
desktop/core/src/desktop/models.py

@@ -1318,33 +1318,3 @@ def get_data_link(meta):
     link = '/metastore/table/%(database)s/%(table)s' % meta # Could also add col=val
 
   return link
-
-
-def import_saved_beeswax_query(bquery):
-  design = bquery.get_design()
-
-  return make_notebook(
-      name=bquery.name,
-      description=bquery.desc,
-      editor_type=_convert_type(bquery.type, bquery.data),
-      statement=design.hql_query,
-      status='ready',
-      files=design.file_resources,
-      functions=design.functions,
-      settings=design.settings
-  )
-
-def _convert_type(btype, bdata):
-  from beeswax.models import HQL, IMPALA, RDBMS, SPARK
-
-  if btype == HQL:
-    return 'hive'
-  elif btype == IMPALA:
-    return 'impala'
-  elif btype == RDBMS:
-    data = json.loads(bdata)
-    return data['query']['server']
-  elif btype == SPARK: # We should not import
-    return 'spark'
-  else:
-    return 'hive'

+ 2 - 2
desktop/core/src/desktop/tests_doc2.py

@@ -17,14 +17,14 @@
 # limitations under the License.
 
 import json
-import re
 
 from nose.tools import assert_equal, assert_false, assert_true
 from django.contrib.auth.models import User
 
 from desktop.lib.django_test_util import make_logged_in_client
 from desktop.lib.test_utils import grant_access
-from desktop.models import import_saved_beeswax_query, Directory, Document2
+from desktop.models import Directory, Document2
+from notebook.models import import_saved_beeswax_query
 
 from beeswax.models import SavedQuery
 from beeswax.design import hql_query

+ 30 - 0
desktop/libs/notebook/src/notebook/models.py

@@ -91,3 +91,33 @@ def make_notebook(name='Browse', description='', editor_type='hive', statement='
   
   return editor
 
+
+def import_saved_beeswax_query(bquery):
+  design = bquery.get_design()
+
+  return make_notebook(
+      name=bquery.name,
+      description=bquery.desc,
+      editor_type=_convert_type(bquery.type, bquery.data),
+      statement=design.hql_query,
+      status='ready',
+      files=design.file_resources,
+      functions=design.functions,
+      settings=design.settings
+  )
+
+
+def _convert_type(btype, bdata):
+  from beeswax.models import HQL, IMPALA, RDBMS, SPARK
+
+  if btype == HQL:
+    return 'hive'
+  elif btype == IMPALA:
+    return 'impala'
+  elif btype == RDBMS:
+    data = json.loads(bdata)
+    return data['query']['server']
+  elif btype == SPARK: # We should not import
+    return 'spark'
+  else:
+    return 'hive'