Fix grammar and document get_current_users_in_room (#4998)
This commit is contained in:
parent
e4d473d855
commit
4a4d5c4fd6
|
@ -0,0 +1 @@
|
||||||
|
Fix grammar in get_current_users_in_room and give it a docstring.
|
|
@ -68,7 +68,7 @@ class DirectoryHandler(BaseHandler):
|
||||||
# TODO(erikj): Add transactions.
|
# TODO(erikj): Add transactions.
|
||||||
# TODO(erikj): Check if there is a current association.
|
# TODO(erikj): Check if there is a current association.
|
||||||
if not servers:
|
if not servers:
|
||||||
users = yield self.state.get_current_user_in_room(room_id)
|
users = yield self.state.get_current_users_in_room(room_id)
|
||||||
servers = set(get_domain_from_id(u) for u in users)
|
servers = set(get_domain_from_id(u) for u in users)
|
||||||
|
|
||||||
if not servers:
|
if not servers:
|
||||||
|
@ -268,7 +268,7 @@ class DirectoryHandler(BaseHandler):
|
||||||
Codes.NOT_FOUND
|
Codes.NOT_FOUND
|
||||||
)
|
)
|
||||||
|
|
||||||
users = yield self.state.get_current_user_in_room(room_id)
|
users = yield self.state.get_current_users_in_room(room_id)
|
||||||
extra_servers = set(get_domain_from_id(u) for u in users)
|
extra_servers = set(get_domain_from_id(u) for u in users)
|
||||||
servers = set(extra_servers) | set(servers)
|
servers = set(extra_servers) | set(servers)
|
||||||
|
|
||||||
|
|
|
@ -102,7 +102,7 @@ class EventStreamHandler(BaseHandler):
|
||||||
# Send down presence.
|
# Send down presence.
|
||||||
if event.state_key == auth_user_id:
|
if event.state_key == auth_user_id:
|
||||||
# Send down presence for everyone in the room.
|
# Send down presence for everyone in the room.
|
||||||
users = yield self.state.get_current_user_in_room(event.room_id)
|
users = yield self.state.get_current_users_in_room(event.room_id)
|
||||||
states = yield presence_handler.get_states(
|
states = yield presence_handler.get_states(
|
||||||
users,
|
users,
|
||||||
as_event=True,
|
as_event=True,
|
||||||
|
|
|
@ -192,7 +192,7 @@ class MessageHandler(object):
|
||||||
"Getting joined members after leaving is not implemented"
|
"Getting joined members after leaving is not implemented"
|
||||||
)
|
)
|
||||||
|
|
||||||
users_with_profile = yield self.state.get_current_user_in_room(room_id)
|
users_with_profile = yield self.state.get_current_users_in_room(room_id)
|
||||||
|
|
||||||
# If this is an AS, double check that they are allowed to see the members.
|
# If this is an AS, double check that they are allowed to see the members.
|
||||||
# This can either be because the AS user is in the room or because there
|
# This can either be because the AS user is in the room or because there
|
||||||
|
|
|
@ -883,7 +883,7 @@ class PresenceHandler(object):
|
||||||
# TODO: Check that this is actually a new server joining the
|
# TODO: Check that this is actually a new server joining the
|
||||||
# room.
|
# room.
|
||||||
|
|
||||||
user_ids = yield self.state.get_current_user_in_room(room_id)
|
user_ids = yield self.state.get_current_users_in_room(room_id)
|
||||||
user_ids = list(filter(self.is_mine_id, user_ids))
|
user_ids = list(filter(self.is_mine_id, user_ids))
|
||||||
|
|
||||||
states = yield self.current_state_for_users(user_ids)
|
states = yield self.current_state_for_users(user_ids)
|
||||||
|
|
|
@ -167,7 +167,7 @@ class RoomListHandler(BaseHandler):
|
||||||
if not latest_event_ids:
|
if not latest_event_ids:
|
||||||
return
|
return
|
||||||
|
|
||||||
joined_users = yield self.state_handler.get_current_user_in_room(
|
joined_users = yield self.state_handler.get_current_users_in_room(
|
||||||
room_id, latest_event_ids,
|
room_id, latest_event_ids,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -1049,11 +1049,11 @@ class SyncHandler(object):
|
||||||
# TODO: Be more clever than this, i.e. remove users who we already
|
# TODO: Be more clever than this, i.e. remove users who we already
|
||||||
# share a room with?
|
# share a room with?
|
||||||
for room_id in newly_joined_rooms:
|
for room_id in newly_joined_rooms:
|
||||||
joined_users = yield self.state.get_current_user_in_room(room_id)
|
joined_users = yield self.state.get_current_users_in_room(room_id)
|
||||||
newly_joined_users.update(joined_users)
|
newly_joined_users.update(joined_users)
|
||||||
|
|
||||||
for room_id in newly_left_rooms:
|
for room_id in newly_left_rooms:
|
||||||
left_users = yield self.state.get_current_user_in_room(room_id)
|
left_users = yield self.state.get_current_users_in_room(room_id)
|
||||||
newly_left_users.update(left_users)
|
newly_left_users.update(left_users)
|
||||||
|
|
||||||
# TODO: Check that these users are actually new, i.e. either they
|
# TODO: Check that these users are actually new, i.e. either they
|
||||||
|
@ -1213,7 +1213,7 @@ class SyncHandler(object):
|
||||||
|
|
||||||
extra_users_ids = set(newly_joined_users)
|
extra_users_ids = set(newly_joined_users)
|
||||||
for room_id in newly_joined_rooms:
|
for room_id in newly_joined_rooms:
|
||||||
users = yield self.state.get_current_user_in_room(room_id)
|
users = yield self.state.get_current_users_in_room(room_id)
|
||||||
extra_users_ids.update(users)
|
extra_users_ids.update(users)
|
||||||
extra_users_ids.discard(user.to_string())
|
extra_users_ids.discard(user.to_string())
|
||||||
|
|
||||||
|
@ -1855,7 +1855,7 @@ class SyncHandler(object):
|
||||||
extrems = yield self.store.get_forward_extremeties_for_room(
|
extrems = yield self.store.get_forward_extremeties_for_room(
|
||||||
room_id, stream_ordering,
|
room_id, stream_ordering,
|
||||||
)
|
)
|
||||||
users_in_room = yield self.state.get_current_user_in_room(
|
users_in_room = yield self.state.get_current_users_in_room(
|
||||||
room_id, extrems,
|
room_id, extrems,
|
||||||
)
|
)
|
||||||
if user_id in users_in_room:
|
if user_id in users_in_room:
|
||||||
|
|
|
@ -218,7 +218,7 @@ class TypingHandler(object):
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def _push_remote(self, member, typing):
|
def _push_remote(self, member, typing):
|
||||||
try:
|
try:
|
||||||
users = yield self.state.get_current_user_in_room(member.room_id)
|
users = yield self.state.get_current_users_in_room(member.room_id)
|
||||||
self._member_last_federation_poke[member] = self.clock.time_msec()
|
self._member_last_federation_poke[member] = self.clock.time_msec()
|
||||||
|
|
||||||
now = self.clock.time_msec()
|
now = self.clock.time_msec()
|
||||||
|
@ -261,7 +261,7 @@ class TypingHandler(object):
|
||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
users = yield self.state.get_current_user_in_room(room_id)
|
users = yield self.state.get_current_users_in_room(room_id)
|
||||||
domains = set(get_domain_from_id(u) for u in users)
|
domains = set(get_domain_from_id(u) for u in users)
|
||||||
|
|
||||||
if self.server_name in domains:
|
if self.server_name in domains:
|
||||||
|
|
|
@ -276,7 +276,7 @@ class UserDirectoryHandler(StateDeltasHandler):
|
||||||
# ignore the change
|
# ignore the change
|
||||||
return
|
return
|
||||||
|
|
||||||
users_with_profile = yield self.state.get_current_user_in_room(room_id)
|
users_with_profile = yield self.state.get_current_users_in_room(room_id)
|
||||||
|
|
||||||
# Remove every user from the sharing tables for that room.
|
# Remove every user from the sharing tables for that room.
|
||||||
for user_id in iterkeys(users_with_profile):
|
for user_id in iterkeys(users_with_profile):
|
||||||
|
@ -325,7 +325,7 @@ class UserDirectoryHandler(StateDeltasHandler):
|
||||||
room_id
|
room_id
|
||||||
)
|
)
|
||||||
# Now we update users who share rooms with users.
|
# Now we update users who share rooms with users.
|
||||||
users_with_profile = yield self.state.get_current_user_in_room(room_id)
|
users_with_profile = yield self.state.get_current_users_in_room(room_id)
|
||||||
|
|
||||||
if is_public:
|
if is_public:
|
||||||
yield self.store.add_users_in_public_rooms(room_id, (user_id,))
|
yield self.store.add_users_in_public_rooms(room_id, (user_id,))
|
||||||
|
|
|
@ -499,7 +499,7 @@ class ShutdownRoomRestServlet(ClientV1RestServlet):
|
||||||
# desirable in case the first attempt at blocking the room failed below.
|
# desirable in case the first attempt at blocking the room failed below.
|
||||||
yield self.store.block_room(room_id, requester_user_id)
|
yield self.store.block_room(room_id, requester_user_id)
|
||||||
|
|
||||||
users = yield self.state.get_current_user_in_room(room_id)
|
users = yield self.state.get_current_users_in_room(room_id)
|
||||||
kicked_users = []
|
kicked_users = []
|
||||||
failed_to_kick_users = []
|
failed_to_kick_users = []
|
||||||
for user_id in users:
|
for user_id in users:
|
||||||
|
|
|
@ -161,10 +161,21 @@ class StateHandler(object):
|
||||||
defer.returnValue(state)
|
defer.returnValue(state)
|
||||||
|
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def get_current_user_in_room(self, room_id, latest_event_ids=None):
|
def get_current_users_in_room(self, room_id, latest_event_ids=None):
|
||||||
|
"""
|
||||||
|
Get the users who are currently in a room.
|
||||||
|
|
||||||
|
Args:
|
||||||
|
room_id (str): The ID of the room.
|
||||||
|
latest_event_ids (List[str]|None): Precomputed list of latest
|
||||||
|
event IDs. Will be computed if None.
|
||||||
|
Returns:
|
||||||
|
Deferred[Dict[str,ProfileInfo]]: Dictionary of user IDs to their
|
||||||
|
profileinfo.
|
||||||
|
"""
|
||||||
if not latest_event_ids:
|
if not latest_event_ids:
|
||||||
latest_event_ids = yield self.store.get_latest_event_ids_in_room(room_id)
|
latest_event_ids = yield self.store.get_latest_event_ids_in_room(room_id)
|
||||||
logger.debug("calling resolve_state_groups from get_current_user_in_room")
|
logger.debug("calling resolve_state_groups from get_current_users_in_room")
|
||||||
entry = yield self.resolve_state_groups_for_events(room_id, latest_event_ids)
|
entry = yield self.resolve_state_groups_for_events(room_id, latest_event_ids)
|
||||||
joined_users = yield self.store.get_joined_users_from_state(room_id, entry)
|
joined_users = yield self.store.get_joined_users_from_state(room_id, entry)
|
||||||
defer.returnValue(joined_users)
|
defer.returnValue(joined_users)
|
||||||
|
|
|
@ -194,7 +194,7 @@ class UserDirectoryStore(StateDeltasStore, BackgroundUpdateStore):
|
||||||
room_id
|
room_id
|
||||||
)
|
)
|
||||||
|
|
||||||
users_with_profile = yield state.get_current_user_in_room(room_id)
|
users_with_profile = yield state.get_current_users_in_room(room_id)
|
||||||
user_ids = set(users_with_profile)
|
user_ids = set(users_with_profile)
|
||||||
|
|
||||||
# Update each user in the user directory.
|
# Update each user in the user directory.
|
||||||
|
|
|
@ -121,9 +121,9 @@ class TypingNotificationsTestCase(unittest.HomeserverTestCase):
|
||||||
|
|
||||||
self.datastore.get_joined_hosts_for_room = get_joined_hosts_for_room
|
self.datastore.get_joined_hosts_for_room = get_joined_hosts_for_room
|
||||||
|
|
||||||
def get_current_user_in_room(room_id):
|
def get_current_users_in_room(room_id):
|
||||||
return set(str(u) for u in self.room_members)
|
return set(str(u) for u in self.room_members)
|
||||||
hs.get_state_handler().get_current_user_in_room = get_current_user_in_room
|
hs.get_state_handler().get_current_users_in_room = get_current_users_in_room
|
||||||
|
|
||||||
self.datastore.get_user_directory_stream_pos.return_value = (
|
self.datastore.get_user_directory_stream_pos.return_value = (
|
||||||
# we deliberately return a non-None stream pos to avoid doing an initial_spam
|
# we deliberately return a non-None stream pos to avoid doing an initial_spam
|
||||||
|
|
Loading…
Reference in New Issue