From 9d609dd5ace40b5dc2ac8fe5a80831ce708afdb0 Mon Sep 17 00:00:00 2001 From: Developer 02 Date: Tue, 4 Feb 2025 19:40:09 +0100 Subject: [PATCH] feat(ISenderHandler): Erstellt um Absenderaktionen an den Hub zu behandeln - Eingebaut in AuthHub und AuthClient --- DigitalData.Auth.Abstractions/IAuthClient.cs | 2 +- DigitalData.Auth.Abstractions/ISenderHandler.cs | 6 ++++++ DigitalData.Auth.Client/AuthClient.cs | 2 ++ src/DigitalData.Auth.API/Hubs/AuthHub.cs | 4 ++-- 4 files changed, 11 insertions(+), 3 deletions(-) create mode 100644 DigitalData.Auth.Abstractions/ISenderHandler.cs diff --git a/DigitalData.Auth.Abstractions/IAuthClient.cs b/DigitalData.Auth.Abstractions/IAuthClient.cs index cf9f6ff..526496a 100644 --- a/DigitalData.Auth.Abstractions/IAuthClient.cs +++ b/DigitalData.Auth.Abstractions/IAuthClient.cs @@ -1,6 +1,6 @@ namespace DigitalData.Auth.Abstractions; -public interface IAuthClient : IAuthClientHandler +public interface IAuthClient : IAuthClientHandler, ISenderHandler { bool IsConnected { get; } diff --git a/DigitalData.Auth.Abstractions/ISenderHandler.cs b/DigitalData.Auth.Abstractions/ISenderHandler.cs new file mode 100644 index 0000000..da455ab --- /dev/null +++ b/DigitalData.Auth.Abstractions/ISenderHandler.cs @@ -0,0 +1,6 @@ +namespace DigitalData.Auth.Abstractions; + +public interface ISenderHandler +{ + Task SendMessageAsync(string user, string message); +} \ No newline at end of file diff --git a/DigitalData.Auth.Client/AuthClient.cs b/DigitalData.Auth.Client/AuthClient.cs index ccedada..9f272f0 100644 --- a/DigitalData.Auth.Client/AuthClient.cs +++ b/DigitalData.Auth.Client/AuthClient.cs @@ -62,4 +62,6 @@ public class AuthClient : IAuthClient } public Task ReceiveMessageAsync(string user, string message) => Task.Run(() => _params.Events.OnMessageReceived(user, message, _logger)); + + public Task SendMessageAsync(string user, string message) => _connection.InvokeAsync(nameof(SendMessageAsync), user, message); } \ No newline at end of file diff --git a/src/DigitalData.Auth.API/Hubs/AuthHub.cs b/src/DigitalData.Auth.API/Hubs/AuthHub.cs index 10583bc..c10eaa5 100644 --- a/src/DigitalData.Auth.API/Hubs/AuthHub.cs +++ b/src/DigitalData.Auth.API/Hubs/AuthHub.cs @@ -3,9 +3,9 @@ using Microsoft.AspNetCore.SignalR; namespace DigitalData.Auth.API.Hubs; -public class AuthHub : Hub +public class AuthHub : Hub, ISenderHandler { - public async Task SendMessage(string user, string message) + public async Task SendMessageAsync(string user, string message) => await Clients.All.ReceiveMessageAsync(user, message); public async Task SendMessageToCaller(string user, string message)