1111# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1212# See the License for the specific language governing permissions and
1313# limitations under the License.
14- from typing import Any , Dict , List , Optional
14+ from typing import Optional
1515
1616from synapse .api .errors import StoreError
1717from synapse .storage ._base import SQLBaseStore
18- from synapse .storage .database import LoggingTransaction
1918from synapse .storage .databases .main .roommember import ProfileInfo
2019
2120
@@ -55,17 +54,6 @@ async def get_profile_avatar_url(self, user_localpart: str) -> Optional[str]:
5554 desc = "get_profile_avatar_url" ,
5655 )
5756
58- async def get_from_remote_profile_cache (
59- self , user_id : str
60- ) -> Optional [Dict [str , Any ]]:
61- return await self .db_pool .simple_select_one (
62- table = "remote_profile_cache" ,
63- keyvalues = {"user_id" : user_id },
64- retcols = ("displayname" , "avatar_url" ),
65- allow_none = True ,
66- desc = "get_from_remote_profile_cache" ,
67- )
68-
6957 async def create_profile (self , user_localpart : str ) -> None :
7058 await self .db_pool .simple_insert (
7159 table = "profiles" , values = {"user_id" : user_localpart }, desc = "create_profile"
@@ -91,97 +79,6 @@ async def set_profile_avatar_url(
9179 desc = "set_profile_avatar_url" ,
9280 )
9381
94- async def update_remote_profile_cache (
95- self , user_id : str , displayname : Optional [str ], avatar_url : Optional [str ]
96- ) -> int :
97- return await self .db_pool .simple_update (
98- table = "remote_profile_cache" ,
99- keyvalues = {"user_id" : user_id },
100- updatevalues = {
101- "displayname" : displayname ,
102- "avatar_url" : avatar_url ,
103- "last_check" : self ._clock .time_msec (),
104- },
105- desc = "update_remote_profile_cache" ,
106- )
107-
108- async def maybe_delete_remote_profile_cache (self , user_id : str ) -> None :
109- """Check if we still care about the remote user's profile, and if we
110- don't then remove their profile from the cache
111- """
112- subscribed = await self .is_subscribed_remote_profile_for_user (user_id )
113- if not subscribed :
114- await self .db_pool .simple_delete (
115- table = "remote_profile_cache" ,
116- keyvalues = {"user_id" : user_id },
117- desc = "delete_remote_profile_cache" ,
118- )
119-
120- async def is_subscribed_remote_profile_for_user (self , user_id : str ) -> bool :
121- """Check whether we are interested in a remote user's profile."""
122- res : Optional [str ] = await self .db_pool .simple_select_one_onecol (
123- table = "group_users" ,
124- keyvalues = {"user_id" : user_id },
125- retcol = "user_id" ,
126- allow_none = True ,
127- desc = "should_update_remote_profile_cache_for_user" ,
128- )
129-
130- if res :
131- return True
132-
133- res = await self .db_pool .simple_select_one_onecol (
134- table = "group_invites" ,
135- keyvalues = {"user_id" : user_id },
136- retcol = "user_id" ,
137- allow_none = True ,
138- desc = "should_update_remote_profile_cache_for_user" ,
139- )
140-
141- if res :
142- return True
143- return False
144-
145- async def get_remote_profile_cache_entries_that_expire (
146- self , last_checked : int
147- ) -> List [Dict [str , str ]]:
148- """Get all users who haven't been checked since `last_checked`"""
149-
150- def _get_remote_profile_cache_entries_that_expire_txn (
151- txn : LoggingTransaction ,
152- ) -> List [Dict [str , str ]]:
153- sql = """
154- SELECT user_id, displayname, avatar_url
155- FROM remote_profile_cache
156- WHERE last_check < ?
157- """
158-
159- txn .execute (sql , (last_checked ,))
160-
161- return self .db_pool .cursor_to_dict (txn )
162-
163- return await self .db_pool .runInteraction (
164- "get_remote_profile_cache_entries_that_expire" ,
165- _get_remote_profile_cache_entries_that_expire_txn ,
166- )
167-
16882
16983class ProfileStore (ProfileWorkerStore ):
170- async def add_remote_profile_cache (
171- self , user_id : str , displayname : str , avatar_url : str
172- ) -> None :
173- """Ensure we are caching the remote user's profiles.
174-
175- This should only be called when `is_subscribed_remote_profile_for_user`
176- would return true for the user.
177- """
178- await self .db_pool .simple_upsert (
179- table = "remote_profile_cache" ,
180- keyvalues = {"user_id" : user_id },
181- values = {
182- "displayname" : displayname ,
183- "avatar_url" : avatar_url ,
184- "last_check" : self ._clock .time_msec (),
185- },
186- desc = "add_remote_profile_cache" ,
187- )
84+ pass
0 commit comments