From de759e417d1046306372bf47a12f513b112dc6de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABl=20Kervella?= Date: Thu, 24 May 2018 22:31:55 +0000 Subject: [PATCH] Add support for params in query and page_size optimizqtion --- re2oapi/client.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/re2oapi/client.py b/re2oapi/client.py index 084ddc0..54c28df 100644 --- a/re2oapi/client.py +++ b/re2oapi/client.py @@ -73,9 +73,10 @@ class Re2oAPIClient: def __getattr__(self, item): if item.startswith('list_'): - def f(max_results=None, **kwargs): + def f(max_results=None, params={}, **kwargs): response = self.get( self.get_url_for('%s-list' % item[len('list_'):], **kwargs), + params=params ) results = response['results'] while response['next'] is not None and \ @@ -85,15 +86,18 @@ class Re2oAPIClient: return results[:max_results] if max_results else results return f elif item.startswith('count_'): - def f(**kwargs): + def f(params={}, **kwargs): + params.update({'page_size': 1}) return self.get( self.get_url_for('%s-list' % item[len('count_'):], **kwargs), + params=params )['count'] return f elif item.startswith('view_'): - def f(**kwargs): + def f(params={}, **kwargs): return self.get( self.get_url_for('%s-details' % item[len('view_'):], **kwargs), + params=params ) return f else: