diff options
author | Paul "LeoNerd" Evans <paul@matrix.org> | 2014-11-20 19:33:45 +0000 |
---|---|---|
committer | Paul "LeoNerd" Evans <paul@matrix.org> | 2014-11-20 19:33:45 +0000 |
commit | 5f19c55731deef0381338fcab9847f5c762a36c8 (patch) | |
tree | 6a0b7682f52962612329161bef9333603222094f /synapse | |
parent | Fix pep8 and pyflakes warnings (diff) | |
download | synapse-5f19c55731deef0381338fcab9847f5c762a36c8.tar.xz |
SYN-58: Allow passing explicit limit=0 to initialSync to request no messages at all; missing still implies default 10
Diffstat (limited to 'synapse')
-rw-r--r-- | synapse/handlers/message.py | 2 | ||||
-rw-r--r-- | synapse/streams/config.py | 12 |
2 files changed, 7 insertions, 7 deletions
diff --git a/synapse/handlers/message.py b/synapse/handlers/message.py index 06a4e173f6..ae0fc43ca2 100644 --- a/synapse/handlers/message.py +++ b/synapse/handlers/message.py @@ -243,7 +243,7 @@ class MessageHandler(BaseHandler): public_room_ids = [r["room_id"] for r in public_rooms] limit = pagin_config.limit - if not limit: + if limit is None: limit = 10 for event in room_list: diff --git a/synapse/streams/config.py b/synapse/streams/config.py index 527507e5cd..0317e78c08 100644 --- a/synapse/streams/config.py +++ b/synapse/streams/config.py @@ -28,11 +28,11 @@ class SourcePaginationConfig(object): specific event source.""" def __init__(self, from_key=None, to_key=None, direction='f', - limit=0): + limit=None): self.from_key = from_key self.to_key = to_key self.direction = 'f' if direction == 'f' else 'b' - self.limit = int(limit) + self.limit = int(limit) if limit is not None else None class PaginationConfig(object): @@ -40,11 +40,11 @@ class PaginationConfig(object): """A configuration object which stores pagination parameters.""" def __init__(self, from_token=None, to_token=None, direction='f', - limit=0): + limit=None): self.from_token = from_token self.to_token = to_token self.direction = 'f' if direction == 'f' else 'b' - self.limit = int(limit) + self.limit = int(limit) if limit is not None else None @classmethod def from_request(cls, request, raise_invalid_params=True): @@ -80,8 +80,8 @@ class PaginationConfig(object): except: raise SynapseError(400, "'to' paramater is invalid") - limit = get_param("limit", "0") - if not limit.isdigit(): + limit = get_param("limit", None) + if limit is not None and not limit.isdigit(): raise SynapseError(400, "'limit' parameter must be an integer.") try: |