diff --git a/synapse/handlers/message.py b/synapse/handlers/message.py
index 38b71a2c96..f377769071 100644
--- a/synapse/handlers/message.py
+++ b/synapse/handlers/message.py
@@ -84,8 +84,8 @@ class MessageHandler:
self.clock = hs.get_clock()
self.state = hs.get_state_handler()
self.store = hs.get_datastores().main
- self.storage = hs.get_storage()
- self.state_storage = self.storage.state
+ self._storage_controllers = hs.get_storage_controllers()
+ self._state_storage_controller = self._storage_controllers.state
self._event_serializer = hs.get_event_client_serializer()
self._ephemeral_events_enabled = hs.config.server.enable_ephemeral_messages
@@ -132,7 +132,7 @@ class MessageHandler:
assert (
membership_event_id is not None
), "check_user_in_room_or_world_readable returned invalid data"
- room_state = await self.state_storage.get_state_for_events(
+ room_state = await self._state_storage_controller.get_state_for_events(
[membership_event_id], StateFilter.from_types([key])
)
data = room_state[membership_event_id].get(key)
@@ -193,7 +193,7 @@ class MessageHandler:
# check whether the user is in the room at that time to determine
# whether they should be treated as peeking.
- state_map = await self.state_storage.get_state_for_event(
+ state_map = await self._state_storage_controller.get_state_for_event(
last_event.event_id,
StateFilter.from_types([(EventTypes.Member, user_id)]),
)
@@ -206,7 +206,7 @@ class MessageHandler:
is_peeking = not joined
visible_events = await filter_events_for_client(
- self.storage,
+ self._storage_controllers,
user_id,
[last_event],
filter_send_to_client=False,
@@ -214,8 +214,10 @@ class MessageHandler:
)
if visible_events:
- room_state_events = await self.state_storage.get_state_for_events(
- [last_event.event_id], state_filter=state_filter
+ room_state_events = (
+ await self._state_storage_controller.get_state_for_events(
+ [last_event.event_id], state_filter=state_filter
+ )
)
room_state: Mapping[Any, EventBase] = room_state_events[
last_event.event_id
@@ -244,8 +246,10 @@ class MessageHandler:
assert (
membership_event_id is not None
), "check_user_in_room_or_world_readable returned invalid data"
- room_state_events = await self.state_storage.get_state_for_events(
- [membership_event_id], state_filter=state_filter
+ room_state_events = (
+ await self._state_storage_controller.get_state_for_events(
+ [membership_event_id], state_filter=state_filter
+ )
)
room_state = room_state_events[membership_event_id]
@@ -402,7 +406,7 @@ class EventCreationHandler:
self.auth = hs.get_auth()
self._event_auth_handler = hs.get_event_auth_handler()
self.store = hs.get_datastores().main
- self.storage = hs.get_storage()
+ self._storage_controllers = hs.get_storage_controllers()
self.state = hs.get_state_handler()
self.clock = hs.get_clock()
self.validator = EventValidator()
@@ -1032,7 +1036,7 @@ class EventCreationHandler:
# after it is created
if builder.internal_metadata.outlier:
event.internal_metadata.outlier = True
- context = EventContext.for_outlier(self.storage)
+ context = EventContext.for_outlier(self._storage_controllers)
elif (
event.type == EventTypes.MSC2716_INSERTION
and state_event_ids
@@ -1445,7 +1449,7 @@ class EventCreationHandler:
"""
extra_users = extra_users or []
- assert self.storage.persistence is not None
+ assert self._storage_controllers.persistence is not None
assert self._events_shard_config.should_handle(
self._instance_name, event.room_id
)
@@ -1679,7 +1683,7 @@ class EventCreationHandler:
event,
event_pos,
max_stream_token,
- ) = await self.storage.persistence.persist_event(
+ ) = await self._storage_controllers.persistence.persist_event(
event, context=context, backfilled=backfilled
)
|