Beispiel #1
0
        public override void Initialize(IDependencyResolver resolver)
        {
            _proxyGenerator = resolver.Resolve <IJavaScriptProxyGenerator>();
            _manager        = resolver.Resolve <IHubManager>();
            _binder         = resolver.Resolve <IParameterResolver>();
            _requestParser  = resolver.Resolve <IHubRequestParser>();

            base.Initialize(resolver);
        }
Beispiel #2
0
        public override void Initialize(IDependencyResolver resolver, HostContext context)
        {
            if (resolver == null)
            {
                throw new ArgumentNullException("resolver");
            }

            if (context == null)
            {
                throw new ArgumentNullException("context");
            }

            _proxyGenerator  = resolver.Resolve <IJavaScriptProxyGenerator>();
            _manager         = resolver.Resolve <IHubManager>();
            _binder          = resolver.Resolve <IParameterResolver>();
            _requestParser   = resolver.Resolve <IHubRequestParser>();
            _pipelineInvoker = resolver.Resolve <IHubPipelineInvoker>();

            _counters = resolver.Resolve <IPerformanceCounterManager>();

            // Call base initializer before populating _hubs so the _jsonSerializer is initialized
            base.Initialize(resolver, context);

            // Populate _hubs
            string data = context.Request.QueryStringOrForm("connectionData");

            if (!String.IsNullOrEmpty(data))
            {
                var clientHubInfo = JsonSerializer.Parse <IEnumerable <ClientHubInfo> >(data);
                if (clientHubInfo != null)
                {
                    foreach (var hubInfo in clientHubInfo)
                    {
                        // Try to find the associated hub type
                        HubDescriptor hubDescriptor = _manager.EnsureHub(hubInfo.Name,
                                                                         _counters.ErrorsHubResolutionTotal,
                                                                         _counters.ErrorsHubResolutionPerSec,
                                                                         _counters.ErrorsAllTotal,
                                                                         _counters.ErrorsAllPerSec);

                        if (_pipelineInvoker.AuthorizeConnect(hubDescriptor, context.Request))
                        {
                            // Add this to the list of hub descriptors this connection is interested in
                            _hubs.Add(hubDescriptor);
                        }
                    }
                }
            }
        }
Beispiel #3
0
 public HubDispatcher(IHubFactory hubFactory,
                      IMessageStore store,
                      Signaler signaler,
                      IActionResolver actionResolver,
                      IJavaScriptProxyGenerator proxyGenerator,
                      IJsonStringifier jsonStringifier,
                      string url)
     : base(signaler, store, jsonStringifier)
 {
     _hubFactory = hubFactory;
     _store = store;
     _signaler = signaler;
     _actionResolver = actionResolver;
     _proxyGenerator = proxyGenerator;
     _url = VirtualPathUtility.ToAbsolute(url);
 }
Beispiel #4
0
        public override void Initialize(IDependencyResolver resolver)
        {
            _proxyGenerator = resolver.Resolve <IJavaScriptProxyGenerator>();
            _manager        = resolver.Resolve <IHubManager>();
            _binder         = resolver.Resolve <IParameterResolver>();
            _requestParser  = resolver.Resolve <IHubRequestParser>();

            var counters = resolver.Resolve <IPerformanceCounterWriter>();

            _allErrorsTotalCounter            = counters.GetCounter(PerformanceCounters.ErrorsAllTotal);
            _allErrorsPerSecCounter           = counters.GetCounter(PerformanceCounters.ErrorsAllPerSec);
            _hubInvocationErrorsTotalCounter  = counters.GetCounter(PerformanceCounters.ErrorsHubInvocationTotal);
            _hubInvocationErrorsPerSecCounter = counters.GetCounter(PerformanceCounters.ErrorsHubInvocationPerSec);
            _hubResolutionErrorsTotalCounter  = counters.GetCounter(PerformanceCounters.ErrorsHubResolutionTotal);
            _hubResolutionErrorsPerSecCounter = counters.GetCounter(PerformanceCounters.ErrorsHubResolutionPerSec);

            base.Initialize(resolver);
        }
Beispiel #5
0
        public override void Initialize(IDependencyResolver resolver)
        {
            if (resolver == null)
            {
                throw new ArgumentNullException("resolver");
            }

            _proxyGenerator = _enableJavaScriptProxies ? resolver.Resolve <IJavaScriptProxyGenerator>()
                                                       : new EmptyJavaScriptProxyGenerator();

            _manager         = resolver.Resolve <IHubManager>();
            _binder          = resolver.Resolve <IParameterResolver>();
            _requestParser   = resolver.Resolve <IHubRequestParser>();
            _serializer      = resolver.Resolve <JsonSerializer>();
            _pipelineInvoker = resolver.Resolve <IHubPipelineInvoker>();
            _counters        = resolver.Resolve <IPerformanceCounterManager>();

            base.Initialize(resolver);
        }
Beispiel #6
0
 public HubDispatcher(IHubFactory hubFactory,
                      IMessageStore store,
                      Signaler signaler,
                      IClientIdFactory clientIdFactory,
                      IActionResolver actionResolver,
                      IJavaScriptProxyGenerator proxyGenerator,
                      IJsonStringifier jsonStringifier,
                      IHubLocator hubLocator,
                      string url)
     : base(signaler, clientIdFactory, store, jsonStringifier)
 {
     _hubFactory     = hubFactory;
     _store          = store;
     _signaler       = signaler;
     _actionResolver = actionResolver;
     _proxyGenerator = proxyGenerator;
     _hubLocator     = hubLocator;
     _url            = VirtualPathUtility.ToAbsolute(url);
 }
Beispiel #7
0
        public override void Initialize(IServiceProvider serviceProvider)
        {
            if (serviceProvider == null)
            {
                throw new ArgumentNullException(nameof(serviceProvider));
            }

            _proxyGenerator = _enableJavaScriptProxies ? serviceProvider.GetRequiredService <IJavaScriptProxyGenerator>()
                                                       : new EmptyJavaScriptProxyGenerator();

            _manager         = serviceProvider.GetRequiredService <IHubManager>();
            _binder          = serviceProvider.GetRequiredService <IParameterResolver>();
            _requestParser   = serviceProvider.GetRequiredService <IHubRequestParser>();
            _serializer      = serviceProvider.GetRequiredService <JsonSerializer>();
            _pipelineInvoker = serviceProvider.GetRequiredService <IHubPipelineInvoker>();
            _counters        = serviceProvider.GetRequiredService <IPerformanceCounterManager>();

            base.Initialize(serviceProvider);
        }
Beispiel #8
0
 public HubDispatcher(IHubFactory hubFactory,
                      IMessageStore store,
                      Signaler signaler,
                      IConnectionIdFactory connectionIdFactory,
                      IActionResolver actionResolver,
                      IJavaScriptProxyGenerator proxyGenerator,
                      IJsonSerializer jsonSerializer,
                      IHubLocator hubLocator,
                      IHubTypeResolver hubTypeResolver,
                      string url)
     : base(signaler, connectionIdFactory, store, jsonSerializer)
 {
     _hubFactory = hubFactory;
     _store = store;
     _jsonSerializer = jsonSerializer;
     _signaler = signaler;
     _actionResolver = actionResolver;
     _proxyGenerator = proxyGenerator;
     _hubLocator = hubLocator;
     _hubTypeResolver = hubTypeResolver;
     _url = VirtualPathUtility.ToAbsolute(url);
 }
Beispiel #9
0
 public HubDispatcher(IHubFactory hubFactory,
                      IMessageStore store,
                      Signaler signaler,
                      IConnectionIdFactory connectionIdFactory,
                      IActionResolver actionResolver,
                      IJavaScriptProxyGenerator proxyGenerator,
                      IJsonSerializer jsonSerializer,
                      IHubLocator hubLocator,
                      IHubTypeResolver hubTypeResolver,
                      string url)
     : base(signaler, connectionIdFactory, store, jsonSerializer)
 {
     _hubFactory      = hubFactory;
     _store           = store;
     _jsonSerializer  = jsonSerializer;
     _signaler        = signaler;
     _actionResolver  = actionResolver;
     _proxyGenerator  = proxyGenerator;
     _hubLocator      = hubLocator;
     _hubTypeResolver = hubTypeResolver;
     _url             = url;
 }