mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-02 12:56:02 -04:00
Implement full_state incremental sync
A hopefully-complete implementation of the full_state incremental sync, as specced at https://github.com/matrix-org/matrix-doc/pull/133. This actually turns out to be a relatively simple modification to the initial sync implementation.
This commit is contained in:
parent
3f0a57eb9b
commit
c79c4f9b14
2 changed files with 38 additions and 19 deletions
|
@ -16,7 +16,7 @@
|
|||
from twisted.internet import defer
|
||||
|
||||
from synapse.http.servlet import (
|
||||
RestServlet, parse_string, parse_integer
|
||||
RestServlet, parse_string, parse_integer, parse_boolean
|
||||
)
|
||||
from synapse.handlers.sync import SyncConfig
|
||||
from synapse.types import StreamToken
|
||||
|
@ -90,6 +90,7 @@ class SyncRestServlet(RestServlet):
|
|||
allowed_values=self.ALLOWED_PRESENCE
|
||||
)
|
||||
filter_id = parse_string(request, "filter", default=None)
|
||||
full_state = parse_boolean(request, "full_state", default=False)
|
||||
|
||||
logger.info(
|
||||
"/sync: user=%r, timeout=%r, since=%r,"
|
||||
|
@ -120,7 +121,8 @@ class SyncRestServlet(RestServlet):
|
|||
|
||||
try:
|
||||
sync_result = yield self.sync_handler.wait_for_sync_for_user(
|
||||
sync_config, since_token=since_token, timeout=timeout
|
||||
sync_config, since_token=since_token, timeout=timeout,
|
||||
full_state=full_state
|
||||
)
|
||||
finally:
|
||||
if set_presence == "online":
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue