aboutsummaryrefslogtreecommitdiff
path: root/syncapi/notifier
diff options
context:
space:
mode:
Diffstat (limited to 'syncapi/notifier')
-rw-r--r--syncapi/notifier/notifier.go11
-rw-r--r--syncapi/notifier/notifier_test.go2
2 files changed, 12 insertions, 1 deletions
diff --git a/syncapi/notifier/notifier.go b/syncapi/notifier/notifier.go
index d853cc0e..6a641e6f 100644
--- a/syncapi/notifier/notifier.go
+++ b/syncapi/notifier/notifier.go
@@ -217,6 +217,17 @@ func (n *Notifier) OnNewInvite(
n.wakeupUsers([]string{wakeUserID}, nil, n.currPos)
}
+func (n *Notifier) OnNewNotificationData(
+ userID string,
+ posUpdate types.StreamingToken,
+) {
+ n.streamLock.Lock()
+ defer n.streamLock.Unlock()
+
+ n.currPos.ApplyUpdates(posUpdate)
+ n.wakeupUsers([]string{userID}, nil, n.currPos)
+}
+
// GetListener returns a UserStreamListener that can be used to wait for
// updates for a user. Must be closed.
// notify for anything before sincePos
diff --git a/syncapi/notifier/notifier_test.go b/syncapi/notifier/notifier_test.go
index c6d3df7e..60403d5d 100644
--- a/syncapi/notifier/notifier_test.go
+++ b/syncapi/notifier/notifier_test.go
@@ -219,7 +219,7 @@ func TestEDUWakeup(t *testing.T) {
go func() {
pos, err := waitForEvents(n, newTestSyncRequest(bob, bobDev, syncPositionAfter))
if err != nil {
- t.Errorf("TestNewInviteEventForUser error: %w", err)
+ t.Errorf("TestNewInviteEventForUser error: %v", err)
}
mustEqualPositions(t, pos, syncPositionNewEDU)
wg.Done()