|
42 | 42 | from synapse.storage.databases.main.cache import CacheInvalidationWorkerStore
|
43 | 43 | from synapse.storage.engines._base import IsolationLevel
|
44 | 44 | from synapse.storage.types import Connection
|
45 |
| -from synapse.storage.util.id_generators import ( |
46 |
| - AbstractStreamIdGenerator, |
47 |
| - MultiWriterIdGenerator, |
48 |
| -) |
| 45 | +from synapse.storage.util.id_generators import MultiWriterIdGenerator |
49 | 46 | from synapse.util.caches.descriptors import cached, cachedList
|
50 | 47 | from synapse.util.caches.stream_change_cache import StreamChangeCache
|
51 | 48 | from synapse.util.iterutils import batch_iter
|
@@ -83,7 +80,7 @@ def __init__(
|
83 | 80 | super().__init__(database, db_conn, hs)
|
84 | 81 |
|
85 | 82 | self._instance_name = hs.get_instance_name()
|
86 |
| - self._presence_id_gen: AbstractStreamIdGenerator |
| 83 | + self._presence_id_gen: MultiWriterIdGenerator |
87 | 84 |
|
88 | 85 | self._can_persist_presence = (
|
89 | 86 | self._instance_name in hs.config.worker.writers.presence
|
@@ -455,6 +452,9 @@ async def get_presence_for_all_users(
|
455 | 452 | def get_current_presence_token(self) -> int:
|
456 | 453 | return self._presence_id_gen.get_current_token()
|
457 | 454 |
|
| 455 | + def get_presence_stream_id_gen(self) -> MultiWriterIdGenerator: |
| 456 | + return self._presence_id_gen |
| 457 | + |
458 | 458 | def _get_active_presence(self, db_conn: Connection) -> List[UserPresenceState]:
|
459 | 459 | """Fetch non-offline presence from the database so that we can register
|
460 | 460 | the appropriate time outs.
|
|
0 commit comments