lesscode-flask 0.0.62__tar.gz → 0.0.64__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/PKG-INFO +1 -1
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/__init__.py +1 -1
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/setup/__init__.py +1 -0
- lesscode-flask-0.0.64/lesscode_flask/utils/thread/thread_utils.py +46 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask.egg-info/PKG-INFO +1 -1
- lesscode_flask-0.0.62/lesscode_flask/utils/thread/thread_utils.py +0 -34
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/README.md +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/app.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/db/__init__.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/db/datasource.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/db/executor.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/log/access_log_handler.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/model/access_log.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/model/auth_client.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/model/auth_permission.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/model/base_model.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/model/parameterized_query.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/model/response_result.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/model/user.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/service/access_log_service.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/service/auth_client_service.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/service/auth_permission_service.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/service/authentication_service.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/service/base_service.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/setting/__init__.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/__init__.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/decorator/__init__.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/decorator/cache.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/decorator/swagger.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/file/file_exporter.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/helpers.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/json/NotSortJSONProvider.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/oss/__init__.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/oss/ks3_oss.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/redis/redis_helper.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/request/request.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/swagger/swagger_template.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/swagger/swagger_util.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/wsgi.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask.egg-info/SOURCES.txt +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask.egg-info/dependency_links.txt +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask.egg-info/requires.txt +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask.egg-info/top_level.txt +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/redash/query_runner/__init__.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/redash/query_runner/clickhouse.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/redash/query_runner/elasticsearch.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/redash/query_runner/kingbase.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/redash/query_runner/mysql.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/redash/query_runner/pg.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/redash/settings/__init__.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/redash/settings/helpers.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/redash/utils/__init__.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/redash/utils/requests_session.py +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/setup.cfg +0 -0
- {lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/setup.py +0 -0
|
@@ -105,6 +105,7 @@ def setup_blueprint(app, path=None, pkg_name="handlers", blueprint_map={}):
|
|
|
105
105
|
if hasattr(obj, "url_prefix") and app.config.get("ROUTE_PREFIX", ""):
|
|
106
106
|
obj.url_prefix = f'{app.config.get("ROUTE_PREFIX")}{obj.url_prefix}'
|
|
107
107
|
blueprint_map[blueprint_name] = obj
|
|
108
|
+
return blueprint_map
|
|
108
109
|
|
|
109
110
|
|
|
110
111
|
def setup_query_runner():
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import threading
|
|
2
|
+
|
|
3
|
+
from flask import copy_current_request_context
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
def run_in_thread(func_list, is_throw_error=False):
|
|
7
|
+
results = []
|
|
8
|
+
threads = []
|
|
9
|
+
result_locks = []
|
|
10
|
+
|
|
11
|
+
def wrapper(_func, _kwargs, _result, _lock, _is_throw_error=True):
|
|
12
|
+
@copy_current_request_context
|
|
13
|
+
def _thread_func():
|
|
14
|
+
try:
|
|
15
|
+
res = func(**kwargs)
|
|
16
|
+
with _lock:
|
|
17
|
+
_result.append(res)
|
|
18
|
+
except Exception as e:
|
|
19
|
+
if _is_throw_error:
|
|
20
|
+
raise e
|
|
21
|
+
else:
|
|
22
|
+
with _lock:
|
|
23
|
+
_result.append(None)
|
|
24
|
+
|
|
25
|
+
return _thread_func
|
|
26
|
+
|
|
27
|
+
for sub_list in func_list:
|
|
28
|
+
func = sub_list[0]
|
|
29
|
+
kwargs = sub_list[1]
|
|
30
|
+
result = []
|
|
31
|
+
lock = threading.Lock()
|
|
32
|
+
result_locks.append(lock)
|
|
33
|
+
thread_func = wrapper(func, kwargs, result, lock, is_throw_error)
|
|
34
|
+
t = threading.Thread(target=thread_func)
|
|
35
|
+
threads.append(t)
|
|
36
|
+
results.append(result)
|
|
37
|
+
t.start()
|
|
38
|
+
|
|
39
|
+
for t in threads:
|
|
40
|
+
t.join()
|
|
41
|
+
|
|
42
|
+
final_results = []
|
|
43
|
+
for result, lock in zip(results, result_locks):
|
|
44
|
+
with lock:
|
|
45
|
+
final_results.append(result[0])
|
|
46
|
+
return final_results
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import threading
|
|
2
|
-
|
|
3
|
-
from flask import copy_current_request_context
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
def run_in_thread(func_list):
|
|
7
|
-
results = []
|
|
8
|
-
threads = []
|
|
9
|
-
|
|
10
|
-
def wrapper(_func, _kwargs, _result, _lock=None):
|
|
11
|
-
@copy_current_request_context
|
|
12
|
-
def _thread_func():
|
|
13
|
-
try:
|
|
14
|
-
res = func(**kwargs)
|
|
15
|
-
_result.append(res)
|
|
16
|
-
except Exception as e:
|
|
17
|
-
_result.append(e)
|
|
18
|
-
|
|
19
|
-
return _thread_func
|
|
20
|
-
|
|
21
|
-
for sub_list in func_list:
|
|
22
|
-
func = sub_list[0]
|
|
23
|
-
kwargs = sub_list[1]
|
|
24
|
-
result = []
|
|
25
|
-
thread_func = wrapper(func, kwargs, result, None)
|
|
26
|
-
t = threading.Thread(target=thread_func)
|
|
27
|
-
threads.append(t)
|
|
28
|
-
results.append(result)
|
|
29
|
-
t.start()
|
|
30
|
-
|
|
31
|
-
for t in threads:
|
|
32
|
-
t.join()
|
|
33
|
-
|
|
34
|
-
return results
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/service/access_log_service.py
RENAMED
|
File without changes
|
{lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/service/auth_client_service.py
RENAMED
|
File without changes
|
{lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/service/auth_permission_service.py
RENAMED
|
File without changes
|
{lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/service/authentication_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/json/NotSortJSONProvider.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/swagger/swagger_template.py
RENAMED
|
File without changes
|
{lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask/utils/swagger/swagger_util.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lesscode_flask-0.0.62 → lesscode-flask-0.0.64}/lesscode_flask.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|