diff options
author | Erik Johnston <erik@matrix.org> | 2015-03-09 14:25:06 +0000 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2015-03-09 14:25:06 +0000 |
commit | d5174065af7bf0f5ce0bf608c28d835bd8f6ddab (patch) | |
tree | b0bfcbe05c92427c307095971f52e92b9ec48ee0 /synapse/rest/appservice/v1/register.py | |
parent | Merge pull request #98 from matrix-org/hotfixes-v0.7.1-r4 (diff) | |
parent | D'oh: underscore, not hyphen (diff) | |
download | synapse-d5174065af7bf0f5ce0bf608c28d835bd8f6ddab.tar.xz |
Merge branch 'release-v0.8.0' of github.com:matrix-org/synapse v0.8.0
Diffstat (limited to 'synapse/rest/appservice/v1/register.py')
-rw-r--r-- | synapse/rest/appservice/v1/register.py | 35 |
1 files changed, 6 insertions, 29 deletions
diff --git a/synapse/rest/appservice/v1/register.py b/synapse/rest/appservice/v1/register.py index 3bd0c1220c..a4f6159773 100644 --- a/synapse/rest/appservice/v1/register.py +++ b/synapse/rest/appservice/v1/register.py @@ -48,18 +48,12 @@ class RegisterRestServlet(AppServiceRestServlet): 400, "Missed required keys: as_token(str) / url(str)." ) - namespaces = { - "users": [], - "rooms": [], - "aliases": [] - } - - if "namespaces" in params: - self._parse_namespace(namespaces, params["namespaces"], "users") - self._parse_namespace(namespaces, params["namespaces"], "rooms") - self._parse_namespace(namespaces, params["namespaces"], "aliases") - - app_service = ApplicationService(as_token, as_url, namespaces) + try: + app_service = ApplicationService( + as_token, as_url, params["namespaces"] + ) + except ValueError as e: + raise SynapseError(400, e.message) app_service = yield self.handler.register(app_service) hs_token = app_service.hs_token @@ -68,23 +62,6 @@ class RegisterRestServlet(AppServiceRestServlet): "hs_token": hs_token })) - def _parse_namespace(self, target_ns, origin_ns, ns): - if ns not in target_ns or ns not in origin_ns: - return # nothing to parse / map through to. - - possible_regex_list = origin_ns[ns] - if not type(possible_regex_list) == list: - raise SynapseError(400, "Namespace %s isn't an array." % ns) - - for regex in possible_regex_list: - if not isinstance(regex, basestring): - raise SynapseError( - 400, "Regex '%s' isn't a string in namespace %s" % - (regex, ns) - ) - - target_ns[ns] = origin_ns[ns] - class UnregisterRestServlet(AppServiceRestServlet): """Handles AS registration with the home server. |