Merge pull request #232 from matrix-org/erikj/appservice_joined_rooms
Don't get apservice interested rooms in RoomHandler.get_joined_rooms_for_userspull/235/head
						commit
						09d23b6209
					
				|  | @ -70,7 +70,15 @@ class EventStreamHandler(BaseHandler): | |||
|                 self._streams_per_user[auth_user] += 1 | ||||
| 
 | ||||
|             rm_handler = self.hs.get_handlers().room_member_handler | ||||
|             room_ids = yield rm_handler.get_joined_rooms_for_user(auth_user) | ||||
| 
 | ||||
|             app_service = yield self.store.get_app_service_by_user_id( | ||||
|                 auth_user.to_string() | ||||
|             ) | ||||
|             if app_service: | ||||
|                 rooms = yield self.store.get_app_service_rooms(app_service) | ||||
|                 room_ids = set(r.room_id for r in rooms) | ||||
|             else: | ||||
|                 room_ids = yield rm_handler.get_joined_rooms_for_user(auth_user) | ||||
| 
 | ||||
|             if timeout: | ||||
|                 # If they've set a timeout set a minimum limit. | ||||
|  |  | |||
|  | @ -557,15 +557,9 @@ class RoomMemberHandler(BaseHandler): | |||
|         """Returns a list of roomids that the user has any of the given | ||||
|         membership states in.""" | ||||
| 
 | ||||
|         app_service = yield self.store.get_app_service_by_user_id( | ||||
|             user.to_string() | ||||
|         rooms = yield self.store.get_rooms_for_user( | ||||
|             user.to_string(), | ||||
|         ) | ||||
|         if app_service: | ||||
|             rooms = yield self.store.get_app_service_rooms(app_service) | ||||
|         else: | ||||
|             rooms = yield self.store.get_rooms_for_user( | ||||
|                 user.to_string(), | ||||
|             ) | ||||
| 
 | ||||
|         # For some reason the list of events contains duplicates | ||||
|         # TODO(paul): work out why because I really don't think it should | ||||
|  |  | |||
|  | @ -96,9 +96,18 @@ class SyncHandler(BaseHandler): | |||
|                 return self.current_sync_for_user(sync_config, since_token) | ||||
| 
 | ||||
|             rm_handler = self.hs.get_handlers().room_member_handler | ||||
|             room_ids = yield rm_handler.get_joined_rooms_for_user( | ||||
|                 sync_config.user | ||||
| 
 | ||||
|             app_service = yield self.store.get_app_service_by_user_id( | ||||
|                 sync_config.user.to_string() | ||||
|             ) | ||||
|             if app_service: | ||||
|                 rooms = yield self.store.get_app_service_rooms(app_service) | ||||
|                 room_ids = set(r.room_id for r in rooms) | ||||
|             else: | ||||
|                 room_ids = yield rm_handler.get_joined_rooms_for_user( | ||||
|                     sync_config.user | ||||
|                 ) | ||||
| 
 | ||||
|             result = yield self.notifier.wait_for_events( | ||||
|                 sync_config.user, room_ids, | ||||
|                 sync_config.filter, timeout, current_sync_callback | ||||
|  | @ -229,7 +238,16 @@ class SyncHandler(BaseHandler): | |||
|         logger.debug("Typing %r", typing_by_room) | ||||
| 
 | ||||
|         rm_handler = self.hs.get_handlers().room_member_handler | ||||
|         room_ids = yield rm_handler.get_joined_rooms_for_user(sync_config.user) | ||||
|         app_service = yield self.store.get_app_service_by_user_id( | ||||
|             sync_config.user.to_string() | ||||
|         ) | ||||
|         if app_service: | ||||
|             rooms = yield self.store.get_app_service_rooms(app_service) | ||||
|             room_ids = set(r.room_id for r in rooms) | ||||
|         else: | ||||
|             room_ids = yield rm_handler.get_joined_rooms_for_user( | ||||
|                 sync_config.user | ||||
|             ) | ||||
| 
 | ||||
|         # TODO (mjark): Does public mean "published"? | ||||
|         published_rooms = yield self.store.get_rooms(is_public=True) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Erik Johnston
						Erik Johnston