BugWASMI18N/BlazorWebassemblyI18n/SessionManager.cs

30 lines
772 B
C#
Raw Permalink Normal View History

using System;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace BlazorWebassemblyI18n
{
public sealed class SessionManager : IMessage
{
private readonly List<IMessage> receivers = new();
internal SessionManager()
{
this.Register(this);
}
public void Register(IMessage receiver) => this.receivers.Add(receiver);
public async Task SendMessage(string content)
{
foreach (var receiver in this.receivers)
await receiver.ReceiveMessage(content);
}
public Task ReceiveMessage(string message)
{
Console.WriteLine($"sending message: '{message}'");
return Task.CompletedTask;
}
}
}