/// <summary> /// Create instance by creating client host and starting it. /// </summary> /// <param name="endpointUrl"></param> /// <param name="hubName"></param> /// <param name="userId"></param> /// <param name="logger"></param> /// <returns></returns> internal static async Task <SignalRClientRegistrar> CreateAsync(string endpointUrl, string hubName, string userId, ILogger logger) { if (string.IsNullOrEmpty(endpointUrl)) { throw new ArgumentException(nameof(endpointUrl)); } if (string.IsNullOrEmpty(userId)) { throw new ArgumentException(nameof(userId)); } var host = new SignalRClientHost(endpointUrl, hubName, userId, logger.ForContext <SignalRClientHost>()); await host.StartAsync().ConfigureAwait(false); return(new SignalRClientRegistrar(host)); }
private SignalRClientRegistrar(SignalRClientHost client) { _client = client; _handles = new HashSet <SignalRRegistrarHandle>(); }