DD.WellWorkover.Cloud/AsbCloudWebApi/SignalR/ConnectionManager/ConnectionManager.cs

25 lines
565 B
C#

using System.Collections.Concurrent;
namespace AsbCloudWebApi.SignalR.ConnectionManager;
public class ConnectionManager : IConnectionManager
{
private readonly ConcurrentDictionary<int, string> _connections = new();
public void AddConnection(int userId,
string connectionId)
{
_connections.TryAdd(userId, connectionId);
}
public void RemoveConnection(int userId)
{
_connections.TryRemove(userId, out _);
}
public string? GetConnectionIdByUserId(int userId)
{
_connections.TryGetValue(userId, out var connectionId);
return connectionId;
}
}