public MessageHub(IInternalRegistrationService internalRegistrationService, ILocalSocketFactory localSocketFactory, IMessageRouter messageRouter, ISecurityProvider securityProvider, ICallbackHandlerStack callbackHandlers) { ReceiverIdentifier = ReceiverIdentifier.Create(ReceiverKind.MessageHub); this.internalRegistrationService = internalRegistrationService; this.messageRouter = messageRouter; this.securityProvider = securityProvider; this.callbackHandlers = callbackHandlers; socket = localSocketFactory.Create(DispatchMessage); }
public MessageHub(ISocketFactory socketFactory, ICallbackHandlerStack callbackHandlers, MessageHubConfiguration config, IMessageTracer messageTracer, ILogger logger) { this.logger = logger; this.messageTracer = messageTracer; this.socketFactory = socketFactory; this.config = config; receivingSocketIdentityPromise = new TaskCompletionSource<byte[]>(); hubRegistered = new ManualResetEventSlim(); this.callbackHandlers = callbackHandlers; registrationsQueue = new BlockingCollection<CallbackRegistration>(new ConcurrentQueue<CallbackRegistration>()); cancellationTokenSource = new CancellationTokenSource(); }
public MessageHub(ICallbackHandlerStack callbackHandlers, ILocalSocket <IMessage> localRouterSocket, ILocalSendingSocket <InternalRouteRegistration> internalRegistrationsSender, ILocalSocketFactory localSocketFactory, IScaleOutConfigurationProvider scaleOutConfigurationProvider, ISecurityProvider securityProvider, ILogger logger, bool keepRegistrationLocal = false) { this.logger = logger; this.localRouterSocket = localRouterSocket; this.internalRegistrationsSender = internalRegistrationsSender; this.scaleOutConfigurationProvider = scaleOutConfigurationProvider; this.securityProvider = securityProvider; this.keepRegistrationLocal = keepRegistrationLocal; this.callbackHandlers = callbackHandlers; registrationsQueue = new BlockingCollection <CallbackRegistration>(new ConcurrentQueue <CallbackRegistration>()); receivingSocket = localSocketFactory.Create <IMessage>(); ReceiverIdentifier = ReceiverIdentities.CreateForMessageHub(); }