public ServiceLifetimeManager( IServiceConnectionManager <THub> serviceConnectionManager, IClientConnectionManager clientConnectionManager, IHubProtocolResolver protocolResolver, ILogger <ServiceLifetimeManager <THub> > logger, AzureSignalRMarkerService marker, IOptions <HubOptions> globalHubOptions, IOptions <HubOptions <THub> > hubOptions, IBlazorDetector blazorDetector) : base( serviceConnectionManager, protocolResolver, globalHubOptions, hubOptions, logger) { // after core 3.0 UseAzureSignalR() is not required. #if NETSTANDARD2_0 if (!marker.IsConfigured) { throw new InvalidOperationException(MarkerNotConfiguredError); } #endif _clientConnectionManager = clientConnectionManager; if (hubOptions.Value.SupportedProtocols != null && hubOptions.Value.SupportedProtocols.Any(x => x.Equals(Constants.Protocol.BlazorPack, StringComparison.OrdinalIgnoreCase))) { blazorDetector?.TrySetBlazor(typeof(THub).Name, true); } }
public NegotiateHandler( IOptions <HubOptions> globalHubOptions, IOptions <HubOptions <THub> > hubOptions, IServiceEndpointManager endpointManager, IEndpointRouter router, IUserIdProvider userIdProvider, IServerNameProvider nameProvider, IConnectionRequestIdProvider connectionRequestIdProvider, IOptions <ServiceOptions> options, IBlazorDetector blazorDetector, ILogger <NegotiateHandler <THub> > logger) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _endpointManager = endpointManager ?? throw new ArgumentNullException(nameof(endpointManager)); _router = router ?? throw new ArgumentNullException(nameof(router)); _serverName = nameProvider?.GetName(); _userIdProvider = userIdProvider ?? throw new ArgumentNullException(nameof(userIdProvider)); _connectionRequestIdProvider = connectionRequestIdProvider ?? throw new ArgumentNullException(nameof(connectionRequestIdProvider)); _claimsProvider = options?.Value?.ClaimsProvider; _diagnosticClientFilter = options?.Value?.DiagnosticClientFilter; _blazorDetector = blazorDetector ?? new DefaultBlazorDetector(); _mode = options.Value.ServerStickyMode; _enableDetailedErrors = globalHubOptions.Value.EnableDetailedErrors == true; _endpointsCount = options.Value.Endpoints.Length; _maxPollInterval = options.Value.MaxPollIntervalInSeconds; _transportTypeDetector = options.Value.TransportTypeDetector; _customHandshakeTimeout = GetCustomHandshakeTimeout(hubOptions.Value.HandshakeTimeout ?? globalHubOptions.Value.HandshakeTimeout); _hubName = typeof(THub).Name; }
public NegotiateHandler( IOptions <HubOptions> hubOptions, IServiceEndpointManager endpointManager, IEndpointRouter router, IUserIdProvider userIdProvider, IServerNameProvider nameProvider, IConnectionRequestIdProvider connectionRequestIdProvider, IOptions <ServiceOptions> options, IBlazorDetector blazorDetector) { _endpointManager = endpointManager ?? throw new ArgumentNullException(nameof(endpointManager)); _router = router ?? throw new ArgumentNullException(nameof(router)); _serverName = nameProvider?.GetName(); _userIdProvider = userIdProvider ?? throw new ArgumentNullException(nameof(userIdProvider)); _connectionRequestIdProvider = connectionRequestIdProvider ?? throw new ArgumentNullException(nameof(connectionRequestIdProvider)); _claimsProvider = options?.Value?.ClaimsProvider; _diagnosticClientFilter = options?.Value?.DiagnosticClientFilter; _blazorDetector = blazorDetector ?? new DefaultBlazorDetector(); _mode = options.Value.ServerStickyMode; _enableDetailedErrors = hubOptions.Value.EnableDetailedErrors == true; _endpointsCount = options.Value.Endpoints.Length; _maxPollInterval = options.Value.MaxPollIntervalInSeconds; }
private HubLifetimeManager <TestHub> MockLifetimeManager(IServiceConnectionManager <TestHub> serviceConnectionManager, IClientConnectionManager clientConnectionManager = null, IBlazorDetector blazorDetector = null) { clientConnectionManager ??= new ClientConnectionManager(); var protocolResolver = new DefaultHubProtocolResolver(new IHubProtocol[] { new JsonHubProtocol(), new MessagePackHubProtocol(), new CustomHubProtocol(), }, NullLogger <DefaultHubProtocolResolver> .Instance ); IOptions <HubOptions> globalHubOptions = Options.Create(new HubOptions() { SupportedProtocols = new List <string>() { MockProtocol } }); IOptions <HubOptions <TestHub> > localHubOptions = Options.Create(new HubOptions <TestHub>() { SupportedProtocols = new List <string>() { MockProtocol } }); return(new ServiceLifetimeManager <TestHub>( serviceConnectionManager, clientConnectionManager, protocolResolver, Logger, Marker, globalHubOptions, localHubOptions, blazorDetector )); }