32 lines
822 B
C#
32 lines
822 B
C#
using System.Collections.Generic;
|
|
using System.Linq;
|
|
|
|
namespace MxGateway.Worker.MxAccess;
|
|
|
|
public sealed class MxAccessHandleRegistry
|
|
{
|
|
private readonly Dictionary<int, RegisteredServerHandle> serverHandles = new();
|
|
|
|
public IReadOnlyList<RegisteredServerHandle> ServerHandles => serverHandles
|
|
.Values
|
|
.OrderBy(handle => handle.ServerHandle)
|
|
.ToArray();
|
|
|
|
public void RegisterServerHandle(
|
|
int serverHandle,
|
|
string clientName)
|
|
{
|
|
serverHandles[serverHandle] = new RegisteredServerHandle(serverHandle, clientName);
|
|
}
|
|
|
|
public void UnregisterServerHandle(int serverHandle)
|
|
{
|
|
serverHandles.Remove(serverHandle);
|
|
}
|
|
|
|
public bool ContainsServerHandle(int serverHandle)
|
|
{
|
|
return serverHandles.ContainsKey(serverHandle);
|
|
}
|
|
}
|