private void CurrentHost(Action <IConfigureHost> cfg) { cfg.MustNotBeNull(); _host = new ConfigureHost(); cfg(_host); RegisterTypesInContainer(_host.ContainerBuilder); }
internal void Init(DispatcherClient client, ConfigureHost host, IReceiveServerMessages receiver) { _client = client; _host = host; _receiver = receiver; _endpoints = host.Endpoints; }
internal ServiceBus(IContainerScope container,DispatcherClient client, ConfigureHost host,IReceiveServerMessages receiver) { Container = container; _client = client; _host = host; _receiver = receiver; _endpoints = host.Endpoints; }
public MessageHandlersNexus(IContainerScope container,BusAuditor auditor,ConfigureHost host) { container.MustNotBeNull(); _container = container; _auditor = auditor; _host = host; _error = host.GetStorage<IFailedMessagesQueue>(); }
internal EndpointConfig[] Build(ConfigureHost host, IContainerScope container, BusAuditor auditor) => _points.Select(ec => { var ep = ec.Key; var nexus = new MessageHandlersNexus(container,auditor,host); nexus.Add(host.Handlers.Where(ep.CanHandle).ToArray()); var processor = new ProcessingService(host.GetStorage<IStoreUnhandledMessages>(), () => new MessageProcessor(nexus), auditor,host.GetStorage<IFailedMessagesQueue>()); ec.Value(processor); var config = new EndpointConfig(processor); config.Id = new EndpointId(ep.Name, host.HostName); config.HandledMessagesTypes = nexus.GetMessageTypes().ToArray(); processor.Name = config.Id; return config; }).ToArray();