aboutsummaryrefslogtreecommitdiff
path: root/syncapi/syncapi.go
diff options
context:
space:
mode:
authorKegsay <kegan@matrix.org>2020-07-30 18:00:56 +0100
committerGitHub <noreply@github.com>2020-07-30 18:00:56 +0100
commita7e67e65a8662387f1a5ba6860698743f9dbd60f (patch)
tree90714c83c20fee10ee3c758f3ba00b7f9eee6d1c /syncapi/syncapi.go
parent292a9ddd82a7cfc64ed43b70454040fb009601a7 (diff)
Notify clients when devices are deleted (#1233)
* Recheck device lists when join/leave events come in * Add PerformDeviceDeletion * Notify clients when devices are deleted * Unbreak things * Remove debug logging
Diffstat (limited to 'syncapi/syncapi.go')
-rw-r--r--syncapi/syncapi.go18
1 files changed, 9 insertions, 9 deletions
diff --git a/syncapi/syncapi.go b/syncapi/syncapi.go
index 754cd502..5198d59b 100644
--- a/syncapi/syncapi.go
+++ b/syncapi/syncapi.go
@@ -64,8 +64,16 @@ func AddPublicRoutes(
requestPool := sync.NewRequestPool(syncDB, notifier, userAPI, keyAPI, currentStateAPI)
+ keyChangeConsumer := consumers.NewOutputKeyChangeEventConsumer(
+ cfg.Matrix.ServerName, string(cfg.Kafka.Topics.OutputKeyChangeEvent),
+ consumer, notifier, keyAPI, currentStateAPI, syncDB,
+ )
+ if err = keyChangeConsumer.Start(); err != nil {
+ logrus.WithError(err).Panicf("failed to start key change consumer")
+ }
+
roomConsumer := consumers.NewOutputRoomEventConsumer(
- cfg, consumer, notifier, syncDB, rsAPI,
+ cfg, consumer, notifier, syncDB, rsAPI, keyChangeConsumer,
)
if err = roomConsumer.Start(); err != nil {
logrus.WithError(err).Panicf("failed to start room server consumer")
@@ -92,13 +100,5 @@ func AddPublicRoutes(
logrus.WithError(err).Panicf("failed to start send-to-device consumer")
}
- keyChangeConsumer := consumers.NewOutputKeyChangeEventConsumer(
- cfg.Matrix.ServerName, string(cfg.Kafka.Topics.OutputKeyChangeEvent),
- consumer, notifier, keyAPI, currentStateAPI, syncDB,
- )
- if err = keyChangeConsumer.Start(); err != nil {
- logrus.WithError(err).Panicf("failed to start key change consumer")
- }
-
routing.Setup(router, requestPool, syncDB, userAPI, federation, rsAPI, cfg)
}