summary refs log tree commit diff
diff options
context:
space:
mode:
authorJorik Schellekens <joriks@matrix.org>2019-08-23 18:13:59 +0100
committerJorik Schellekens <joriks@matrix.org>2019-08-28 15:59:54 +0100
commit13ea03ccd68e298b0e2681849bec58edb5cfd950 (patch)
treed10218c14966c0040a1f5d01bdc3f172ad2b2759
parentsome better routing (diff)
downloadsynapse-13ea03ccd68e298b0e2681849bec58edb5cfd950.tar.xz
Cleanup and use new model
-rw-r--r--synapse_topology/server/schemas.py6
-rw-r--r--synapse_topology/server/server.py21
-rw-r--r--synapse_topology/server/utils.py2
3 files changed, 13 insertions, 16 deletions
diff --git a/synapse_topology/server/schemas.py b/synapse_topology/server/schemas.py
index 90cc7a0969..2197b96e24 100644
--- a/synapse_topology/server/schemas.py
+++ b/synapse_topology/server/schemas.py
@@ -49,3 +49,9 @@ PORTS_SCHEMA = {
     "properties": {"ports": {"type": "array"}},
     "required": ["ports"],
 }
+
+SECRET_KEY_SCHEMA = {
+    "type": "object",
+    "properties": {"server_name": {"type": "string", "minlength": "1"}},
+    "required": ["server_name"],
+}
diff --git a/synapse_topology/server/server.py b/synapse_topology/server/server.py
index dd3d3ce4b3..351f7d49e3 100644
--- a/synapse_topology/server/server.py
+++ b/synapse_topology/server/server.py
@@ -1,21 +1,20 @@
 from os.path import abspath, dirname, join
 
 from canonicaljson import json
-from synapse_topology.model import Model
 
 from twisted.web.static import File
 
 from klein import Klein
 
 from .utils import port_checker
-
-from . import error_handlers
+from synapse_topology.model import constants
 from .schemas import (
     BASE_CONFIG_SCHEMA,
     SERVERNAME_SCHEMA,
     CERT_PATHS_SCHEMA,
     CERTS_SCHEMA,
     PORTS_SCHEMA,
+    SECRET_KEY_SCHEMA,
 )
 from .utils import validate_schema, log_body_if_fail
 
@@ -42,23 +41,15 @@ class Server:
     def get_config_setup(self, request):
         return json.dumps(
             {
-                self.model.constants.CONFIG_LOCK: self.model.config_in_use(),
-                "config_dir": self.model.get_config_dir(),
+                constants.CONFIG_LOCK: self.model.config_in_use(),
+                "config_dir": self.model.config_dir,
             }
         )
 
-    @app.route("/servername", methods=["GET"])
-    def get_server_name(self, request):
-        return self.model.get_server_name()
-
-    @app.route("/servername", methods=["POST"])
-    @validate_schema(SERVERNAME_SCHEMA)
-    def set_server_name(self, request, body):
-        self.model.generate_base_config(**body)
-
     @app.route("/secretkey", methods=["GET"])
+    @validate_schema(SECRET_KEY_SCHEMA)
     def get_secret_key(self, request):
-        return json.dumps({"secret_key": self.model.get_secret_key()})
+        return json.dumps({"secret_key": self.model.generate_secret_key()})
 
     @app.route("/config", methods=["GET"])
     def get_config(self, request):
diff --git a/synapse_topology/server/utils.py b/synapse_topology/server/utils.py
index dc4e480431..4b6a115ebb 100644
--- a/synapse_topology/server/utils.py
+++ b/synapse_topology/server/utils.py
@@ -10,7 +10,7 @@ import socket
 def validate_schema(schema):
     def _wrap_validate(func):
         @wraps(func)
-        def _do_validate(request):
+        def _do_validate(self, request):
             body = json.loads(request.content.read())
             validate(instance=body, schema=schema)
             return func(request, body)