diff options
author | Joshua Marshall <catchjosh@gmail.com> | 2015-12-14 17:40:41 -0600 |
---|---|---|
committer | Joshua Marshall <catchjosh@gmail.com> | 2015-12-14 17:40:41 -0600 |
commit | 749c262c9864247617f2240921fb5efc25e52cda (patch) | |
tree | 8b174943711d385aa032f1072d70fc9d2326ad25 /jsonrpclib | |
parent | e7cb8ba791bd89109022ff7b516787f16922a39b (diff) | |
download | jsonrpclib-749c262c9864247617f2240921fb5efc25e52cda.tar.gz |
Adding history configuration.truncate-history
Truncating request and response history to 20 entries by default,
allowing history.size to specify a discrete number of entries (positive),
unlimited entries (less than 0), or no history (zero).
Diffstat (limited to 'jsonrpclib')
-rw-r--r-- | jsonrpclib/history.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/jsonrpclib/history.py b/jsonrpclib/history.py index f052baa..090f996 100644 --- a/jsonrpclib/history.py +++ b/jsonrpclib/history.py @@ -5,6 +5,7 @@ class History(object): each request cycle in order to keep it from clogging memory. """ + size = 20 requests = [] responses = [] _instance = None @@ -16,10 +17,18 @@ class History(object): return cls._instance def add_response(self, response_obj): + if self.size == 0: + return self.responses.append(response_obj) + if self.size > 0: + self.responses = self.responses[0 - self.size:] def add_request(self, request_obj): + if self.size == 0: + return self.requests.append(request_obj) + if self.size > 0: + self.requests = self.requests[0 - self.size:] @property def request(self): |