|
@@ -3,6 +3,7 @@
|
3
|
3
|
import re
|
4
|
4
|
import copy
|
5
|
5
|
import inspect
|
|
6
|
+import warnings
|
6
|
7
|
|
7
|
8
|
from .exceptions import *
|
8
|
9
|
from lodel.plugin.hooks import LodelHook
|
|
@@ -35,18 +36,18 @@ class LeQuery(object):
|
35
|
36
|
# @return the query result
|
36
|
37
|
# @see LeQuery._query()
|
37
|
38
|
#
|
38
|
|
- def execute(self, **datas):
|
|
39
|
+ def execute(self, datas):
|
39
|
40
|
if not datas is None:
|
40
|
41
|
self._target_class.check_datas_value(
|
41
|
|
- datas['datas'],
|
|
42
|
+ datas,
|
42
|
43
|
**self._data_check_args)
|
43
|
|
- self._target_class.prepare_datas(datas['datas']) #not yet implemented
|
|
44
|
+ self._target_class.prepare_datas(datas) #not yet implemented
|
44
|
45
|
if self._hook_prefix is None:
|
45
|
46
|
raise NotImplementedError("Abstract method")
|
46
|
47
|
LodelHook.call_hook( self._hook_prefix+'_pre',
|
47
|
48
|
self._target_class,
|
48
|
49
|
datas)
|
49
|
|
- ret = self._query(**datas)
|
|
50
|
+ ret = self._query(datas = datas)
|
50
|
51
|
ret = LodelHook.call_hook( self._hook_prefix+'_post',
|
51
|
52
|
self._target_class,
|
52
|
53
|
ret)
|
|
@@ -119,7 +120,6 @@ class LeFilteredQuery(LeQuery):
|
119
|
120
|
try:
|
120
|
121
|
|
121
|
122
|
filters, rel_filters = self._query_filter
|
122
|
|
- #res = super().execute(filters = filters, rel_filters = rel_filters)
|
123
|
123
|
res = super().execute(datas)
|
124
|
124
|
except Exception as e:
|
125
|
125
|
#restoring filters even if an exception is raised
|
|
@@ -213,7 +213,7 @@ class LeFilteredQuery(LeQuery):
|
213
|
213
|
|
214
|
214
|
def __repr__(self):
|
215
|
215
|
res = "<{classname} target={target_class} query_filter={query_filter}"
|
216
|
|
- res = ret.format(
|
|
216
|
+ res = res.format(
|
217
|
217
|
classname=self.__class__.__name__,
|
218
|
218
|
query_filter = self._query_filter,
|
219
|
219
|
target_class = self._target_class)
|
|
@@ -571,14 +571,15 @@ class LeDeleteQuery(LeFilteredQuery):
|
571
|
571
|
super().__init__(target_class, query_filter)
|
572
|
572
|
|
573
|
573
|
## @brief Execute the delete query
|
574
|
|
- def execute(self):
|
|
574
|
+ def execute(self, datas = None):
|
575
|
575
|
return super().execute()
|
576
|
576
|
|
577
|
577
|
##@brief Implements delete query operations
|
578
|
578
|
#@param filters list : see @ref LeFilteredQuery
|
579
|
579
|
#@param rel_filters list : see @ref LeFilteredQuery
|
580
|
580
|
#@returns the number of deleted items
|
581
|
|
- def _query(self, filters, rel_filters):
|
|
581
|
+ def _query(self, datas = None):
|
|
582
|
+ filters, rel_filters = self._query_filter
|
582
|
583
|
nb_deleted = self._rw_datasource.delete(
|
583
|
584
|
self._target_class, filters, rel_filters)
|
584
|
585
|
return nb_deleted
|
|
@@ -664,7 +665,7 @@ class LeGetQuery(LeFilteredQuery):
|
664
|
665
|
self.__field_list = list(set(field_list))
|
665
|
666
|
|
666
|
667
|
##@brief Execute the get query
|
667
|
|
- def execute(self):
|
|
668
|
+ def execute(self, datas = None):
|
668
|
669
|
return super().execute()
|
669
|
670
|
|
670
|
671
|
##@brief Implements select query operations
|