pair request cleanup with refactoring

This commit is contained in:
choco
2025-10-16 14:08:37 +02:00
parent 10336a829a
commit b9030549a7
4 changed files with 18 additions and 15 deletions

View File

@@ -49,6 +49,7 @@ public class NotificationService : DisposableMediatorSubscriberBase, IHostedServ
{
Mediator.Subscribe<NotificationMessage>(this, HandleNotificationMessage);
Mediator.Subscribe<PairRequestsUpdatedMessage>(this, HandlePairRequestsUpdated);
Mediator.Subscribe<PairRequestReceivedMessage>(this, HandlePairRequestReceived);
Mediator.Subscribe<PerformanceNotificationMessage>(this, HandlePerformanceNotification);
Mediator.Subscribe<BroadcastExpiredMessage>(this, HandleBroadcastExpired);
return Task.CompletedTask;
@@ -585,6 +586,16 @@ public class NotificationService : DisposableMediatorSubscriberBase, IHostedServ
_chatGui.Print(se.BuiltString);
}
private void HandlePairRequestReceived(PairRequestReceivedMessage msg)
{
ShowPairRequestNotification(
msg.SenderName,
msg.SenderId,
() => _pairRequestService.AcceptPairRequest(msg.SenderId, msg.SenderName),
() => _pairRequestService.DeclinePairRequest(msg.SenderId)
);
}
private void HandlePairRequestsUpdated(PairRequestsUpdatedMessage _)
{
var activeRequests = _pairRequestService.GetActiveRequests();
@@ -602,16 +613,10 @@ public class NotificationService : DisposableMediatorSubscriberBase, IHostedServ
_shownPairRequestNotifications.Remove(hashedCid);
}
// Show/update notifications for all active requests
// Track active requests
foreach (var request in activeRequests)
{
_shownPairRequestNotifications.Add(request.HashedCid);
ShowPairRequestNotification(
request.DisplayName,
request.HashedCid,
() => _pairRequestService.AcceptPairRequest(request.HashedCid, request.DisplayName),
() => _pairRequestService.DeclinePairRequest(request.HashedCid)
);
}
}