diff --git a/synapse/server.py b/synapse/server.py
index 5b6effbe31..43c6e0a6d6 100644
--- a/synapse/server.py
+++ b/synapse/server.py
@@ -32,8 +32,10 @@ from synapse.appservice.scheduler import ApplicationServiceScheduler
from synapse.crypto.keyring import Keyring
from synapse.events.builder import EventBuilderFactory
from synapse.events.spamcheck import SpamChecker
-from synapse.federation import initialize_http_replication
+from synapse.federation.federation_client import FederationClient
+from synapse.federation.federation_server import FederationServer
from synapse.federation.send_queue import FederationRemoteSendQueue
+from synapse.federation.federation_server import FederationHandlerRegistry
from synapse.federation.transport.client import TransportLayerClient
from synapse.federation.transaction_queue import TransactionQueue
from synapse.handlers import Handlers
@@ -99,7 +101,8 @@ class HomeServer(object):
DEPENDENCIES = [
'http_client',
'db_pool',
- 'replication_layer',
+ 'federation_client',
+ 'federation_server',
'handlers',
'v1auth',
'auth',
@@ -147,6 +150,7 @@ class HomeServer(object):
'groups_attestation_renewer',
'spam_checker',
'room_member_handler',
+ 'federation_registry',
]
def __init__(self, hostname, **kwargs):
@@ -195,8 +199,11 @@ class HomeServer(object):
def get_ratelimiter(self):
return self.ratelimiter
- def build_replication_layer(self):
- return initialize_http_replication(self)
+ def build_federation_client(self):
+ return FederationClient(self)
+
+ def build_federation_server(self):
+ return FederationServer(self)
def build_handlers(self):
return Handlers(self)
@@ -387,6 +394,9 @@ class HomeServer(object):
def build_room_member_handler(self):
return RoomMemberHandler(self)
+ def build_federation_registry(self):
+ return FederationHandlerRegistry()
+
def remove_pusher(self, app_id, push_key, user_id):
return self.get_pusherpool().remove_pusher(app_id, push_key, user_id)
|