summary refs log tree commit diff
path: root/synapse/handlers
diff options
context:
space:
mode:
authorMark Haines <mjark@negativecurvature.net>2016-07-19 10:48:58 +0100
committerGitHub <noreply@github.com>2016-07-19 10:48:58 +0100
commit0c62c958fd10802c4c148d8d88b3a76c8441b363 (patch)
treeed89108ff64ec940f659582e18d7b24918c08ed1 /synapse/handlers
parentMerge pull request #928 from matrix-org/rav/refactor_login (diff)
parentSummary line (diff)
downloadsynapse-0c62c958fd10802c4c148d8d88b3a76c8441b363.tar.xz
Merge pull request #930 from matrix-org/markjh/handlers
Update docstring on Handlers.
Diffstat (limited to 'synapse/handlers')
-rw-r--r--synapse/handlers/__init__.py17
1 files changed, 14 insertions, 3 deletions
diff --git a/synapse/handlers/__init__.py b/synapse/handlers/__init__.py
index d28e07f0d9..1a50a2ec98 100644
--- a/synapse/handlers/__init__.py
+++ b/synapse/handlers/__init__.py
@@ -31,10 +31,21 @@ from .search import SearchHandler
 
 class Handlers(object):
 
-    """ A collection of all the event handlers.
+    """ Deprecated. A collection of handlers.
 
-    There's no need to lazily create these; we'll just make them all eagerly
-    at construction time.
+    At some point most of the classes whose name ended "Handler" were
+    accessed through this class.
+
+    However this makes it painful to unit test the handlers and to run cut
+    down versions of synapse that only use specific handlers because using a
+    single handler required creating all of the handlers. So some of the
+    handlers have been lifted out of the Handlers object and are now accessed
+    directly through the homeserver object itself.
+
+    Any new handlers should follow the new pattern of being accessed through
+    the homeserver object and should not be added to the Handlers object.
+
+    The remaining handlers should be moved out of the handlers object.
     """
 
     def __init__(self, hs):