diff options
author | Neil Johnson <neil@matrix.org> | 2019-01-02 10:42:01 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-02 10:42:01 +0000 |
commit | f95581332f629b14eda19e8f2f66eb3d81593905 (patch) | |
tree | 81906805f8dc2d7d2e0bd79420154f4ca02d6fa5 /synapse | |
parent | Update docker-compose.yml (#4282) (diff) | |
parent | Ensure synchrotrons can access is_support_user in the storage layer (diff) | |
download | synapse-f95581332f629b14eda19e8f2f66eb3d81593905.tar.xz |
Merge pull request #4344 from matrix-org/neilj/fix_synchrotron_fix_4312
Ensure synchrotrons can access is_support_user in the storage layer
Diffstat (limited to 'synapse')
-rw-r--r-- | synapse/storage/registration.py | 50 |
1 files changed, 25 insertions, 25 deletions
diff --git a/synapse/storage/registration.py b/synapse/storage/registration.py index 10c3b9757f..c9e11c3135 100644 --- a/synapse/storage/registration.py +++ b/synapse/storage/registration.py @@ -114,6 +114,31 @@ class RegistrationWorkerStore(SQLBaseStore): return None + @cachedInlineCallbacks() + def is_support_user(self, user_id): + """Determines if the user is of type UserTypes.SUPPORT + + Args: + user_id (str): user id to test + + Returns: + Deferred[bool]: True if user is of type UserTypes.SUPPORT + """ + res = yield self.runInteraction( + "is_support_user", self.is_support_user_txn, user_id + ) + defer.returnValue(res) + + def is_support_user_txn(self, txn, user_id): + res = self._simple_select_one_onecol_txn( + txn=txn, + table="users", + keyvalues={"name": user_id}, + retcol="user_type", + allow_none=True, + ) + return True if res == UserTypes.SUPPORT else False + class RegistrationStore(RegistrationWorkerStore, background_updates.BackgroundUpdateStore): @@ -465,31 +490,6 @@ class RegistrationStore(RegistrationWorkerStore, defer.returnValue(res if res else False) - @cachedInlineCallbacks() - def is_support_user(self, user_id): - """Determines if the user is of type UserTypes.SUPPORT - - Args: - user_id (str): user id to test - - Returns: - Deferred[bool]: True if user is of type UserTypes.SUPPORT - """ - res = yield self.runInteraction( - "is_support_user", self.is_support_user_txn, user_id - ) - defer.returnValue(res) - - def is_support_user_txn(self, txn, user_id): - res = self._simple_select_one_onecol_txn( - txn=txn, - table="users", - keyvalues={"name": user_id}, - retcol="user_type", - allow_none=True, - ) - return True if res == UserTypes.SUPPORT else False - @defer.inlineCallbacks def user_add_threepid(self, user_id, medium, address, validated_at, added_at): yield self._simple_upsert("user_threepids", { |