public static THub CreateHub <THub, TClient, TMulti>(this MultiHubBase <TMulti> src) where TMulti : class where TClient : class where THub : Hub <TClient> { return((THub)CreateHubHelper <THub, TClient, TMulti> .CreateHub(src, src)); }
/// <summary> /// //USE SCOPED HUB ACTIVATOR ???? /// </summary> /// <typeparam name="THub"></typeparam> /// <typeparam name="TClient"></typeparam> /// <typeparam name="TMultiClient"></typeparam> /// <param name="src"></param> /// <returns></returns> private THub CreateHubFrom <THub, TClient, TMultiClient>(MultiHubBase <TMultiClient> src) where THub : Hub <TClient> where TClient : class where TMultiClient : class, TClient { _logger.LogDebug($"****** CreateHubFrom {typeof(THub).Name}"); src.CheckHub <THub>(); var hub = _provider.GetRequiredService <THub>(); hub.Groups = src.Groups; hub.Context = src.Context; hub.Clients = new MultiHubCallerClientsToConcrete <TMultiClient, TClient>(src.Clients); return(hub); }
public static THub CreateHub <THub, TMulti>(this MultiHubBase <TMulti> src) where TMulti : class where THub : Hub { return((THub)CreateHub <TMulti>(src, typeof(THub))); }
public static Hub CreateHub <TMulti>(this MultiHubBase <TMulti> src, Type hub) where TMulti : class { return(CreateHubHelper <TMulti> .CreateHub(hub)(src, src)); }