Skip to content

Commit 0e214d5

Browse files
committed
return_tuple set by connections flag
1 parent 859e03a commit 0e214d5

File tree

1 file changed

+20
-7
lines changed

1 file changed

+20
-7
lines changed

src/tarantool/connection.py

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@ def __init__(self, host, port,
5252
reconnect_max_attempts=RECONNECT_MAX_ATTEMPTS,
5353
reconnect_delay=RECONNECT_DELAY,
5454
connect_now=True,
55-
schema = None):
55+
schema=None,
56+
return_tuple=True):
5657
'''\
5758
Initialize a connection to the server.
5859
@@ -68,6 +69,7 @@ def __init__(self, host, port,
6869
self.socket_timeout = socket_timeout
6970
self.reconnect_delay = reconnect_delay
7071
self.reconnect_max_attempts = reconnect_max_attempts
72+
self.return_tuple = return_tuple
7173
if isinstance(schema, Schema):
7274
self.schema = schema
7375
else:
@@ -217,8 +219,9 @@ def call(self, func_name, *args, **kwargs):
217219
field_defs = kwargs.get("field_defs", None)
218220
default_type = kwargs.get("default_type", None)
219221
space_name = kwargs.get("space_name", None)
222+
return_tuple = kwargs.get("return_tuple", self.return_tuple)
220223

221-
request = RequestCall(self, func_name, args, return_tuple=True)
224+
request = RequestCall(self, func_name, args, return_tuple)
222225
response = self._send_request(request, space_name = space_name,
223226
field_defs = field_defs,
224227
default_type = default_type)
@@ -231,7 +234,7 @@ def _insert(self, space_name, values, flags):
231234
request = RequestInsert(self, space_name, values, flags)
232235
return self._send_request(request, space_name)
233236

234-
def replace(self, space_name, values, return_tuple=True):
237+
def replace(self, space_name, values, return_tuple=None):
235238
'''
236239
Execute REPLACE request.
237240
It will throw error if there's no tuple with this PK exists
@@ -245,9 +248,11 @@ def replace(self, space_name, values, return_tuple=True):
245248
246249
:rtype: `Response` instance
247250
'''
251+
if return_tuple is None:
252+
return_tuple = self.return_tuple
248253
self._insert(space_name, values, (BOX_RETURN_TUPLE if return_tuple else 0) | BOX_REPLACE)
249254

250-
def store(self, space_name, values, return_tuple=True):
255+
def store(self, space_name, values, return_tuple=None):
251256
'''
252257
Execute STORE request.
253258
It will overwrite tuple with the same PK, if it exists, or inserts if not
@@ -261,9 +266,11 @@ def store(self, space_name, values, return_tuple=True):
261266
262267
:rtype: `Response` instance
263268
'''
269+
if return_tuple is None:
270+
return_tuple = self.return_tuple
264271
self._insert(space_name, values, (BOX_RETURN_TUPLE if return_tuple else 0))
265272

266-
def insert(self, space_name, values, return_tuple=True):
273+
def insert(self, space_name, values, return_tuple=None):
267274
'''
268275
Execute INSERT request.
269276
It will throw error if there's tuple with same PK exists.
@@ -277,9 +284,11 @@ def insert(self, space_name, values, return_tuple=True):
277284
278285
:rtype: `Response` instance
279286
'''
287+
if return_tuple is None:
288+
return_tuple = self.return_tuple
280289
self._insert(space_name, values, (BOX_RETURN_TUPLE if return_tuple else 0) | BOX_ADD)
281290

282-
def delete(self, space_name, key, return_tuple=True):
291+
def delete(self, space_name, key, return_tuple=None):
283292
'''\
284293
Execute DELETE request.
285294
Delete single record identified by `key` (using primary index).
@@ -295,10 +304,12 @@ def delete(self, space_name, key, return_tuple=True):
295304
'''
296305
assert isinstance(key, (int, long, basestring))
297306

307+
if return_tuple is None:
308+
return_tuple = self.return_tuple
298309
request = RequestDelete(self, space_name, key, return_tuple)
299310
return self._send_request(request, space_name)
300311

301-
def update(self, space_name, key, op_list, return_tuple=True):
312+
def update(self, space_name, key, op_list, return_tuple=None):
302313
'''\
303314
Execute UPDATE request.
304315
Update single record identified by `key` (using primary index).
@@ -318,6 +329,8 @@ def update(self, space_name, key, op_list, return_tuple=True):
318329
'''
319330
assert isinstance(key, (int, basestring))
320331

332+
if return_tuple is None:
333+
return_tuple = self.return_tuple
321334
request = RequestUpdate(self, space_name, key, op_list, return_tuple)
322335
return self._send_request(request, space_name)
323336

0 commit comments

Comments
 (0)