tuwunel_admin/query/room_state_cache/user_memberships.rs
1use futures::StreamExt;
2use ruma::OwnedUserId;
3use tuwunel_core::Result;
4
5use crate::admin_command;
6
7#[admin_command]
8pub(super) async fn user_memberships(&self, user_id: OwnedUserId) -> Result {
9 let query = self
10 .services
11 .state_cache
12 .all_user_memberships(&user_id)
13 .map(|(membership, room_id)| (membership, room_id.to_owned()))
14 .collect::<Vec<_>>();
15
16 self.write_timed_query(query).await
17}