Skip to content

Commit cb4c1b1

Browse files
committed
[FIX]: add method to close all connections created by ServerProxy tinyerp#7
1 parent 59d95ec commit cb4c1b1

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

odooly.py

+7
Original file line numberDiff line numberDiff line change
@@ -1015,6 +1015,7 @@ class Client(object):
10151015
def __init__(
10161016
self, server, db=None, user=None, password=None, transport=None, verbose=False
10171017
):
1018+
self.connections = list()
10181019
self._set_services(server, transport, verbose)
10191020
self.env = Env(self)
10201021
if db: # Try to login
@@ -1067,6 +1068,7 @@ def _proxy_xmlrpc(self, name):
10671068
proxy = ServerProxy(
10681069
self._server + "/" + name, transport=self._transport, allow_none=True
10691070
)
1071+
self.connections.append(proxy)
10701072
return proxy._ServerProxy__request
10711073

10721074
def _proxy_jsonrpc(self, name):
@@ -1088,6 +1090,11 @@ def from_config(cls, environment, user=None, verbose=False):
10881090
client.login(user or conf_user, password=password, database=db)
10891091
return client
10901092

1093+
def close(self):
1094+
for conn in self.connections:
1095+
conn.__exit__()
1096+
return True
1097+
10911098
def __repr__(self):
10921099
return "<Client '%s#%s'>" % (self._server, self.env.db_name)
10931100

0 commit comments

Comments
 (0)