def _execute(blocking, *args): global CONNECTION, _USER if CONNECTION is None: raise TrytonServerError('403') key = False model = args[1] method = args[2] if not CONFIG['dev']: if method == 'fields_view_get': key = str(args) if key in _VIEW_CACHE: return _VIEW_CACHE[key] elif method == 'view_toolbar_get': key = str(args) if key in _TOOLBAR_CACHE: return _TOOLBAR_CACHE[key] elif model == 'ir.action.keyword' and method == 'get_keyword': key = str(args) if key in _KEYWORD_CACHE: return _KEYWORD_CACHE[key] try: name = '.'.join(args[:3]) args = args[3:] logging.getLogger(__name__).info('%s%s' % (name, args)) with CONNECTION() as conn: result = getattr(conn, name)(*args) except (httplib.CannotSendRequest, socket.error), exception: raise TrytonServerUnavailable(*exception.args)
def _execute(blocking, *args): global CONNECTION, _USER if CONNECTION is None: raise TrytonServerError('403') try: name = '.'.join(args[:3]) args = args[3:] logging.getLogger(__name__).info('%s%s' % (name, args)) with CONNECTION() as conn: result = getattr(conn, name)(*args) except (http.client.CannotSendRequest, socket.error) as exception: raise TrytonServerUnavailable(*exception.args) logging.getLogger(__name__).debug(repr(result)) return result