public SubscriptionObserver Create(IServiceBus bus, SubscriptionRouter router) { string path = bus.ControlBus.Endpoint.Address.Uri.AbsolutePath; Uri uri = new UriBuilder("msmq-pgm", _multicastAddress.Address.ToString(), _multicastAddress.Port, path).Uri; Uri clientUri = uri.AppendToPath("_subscriptions"); var builder = new ControlBusBuilderImpl(new ServiceBusSettings { ConcurrentConsumerLimit = 1, ConcurrentReceiverLimit = 1, EndpointCache = bus.EndpointCache, InputAddress = clientUri, ReceiveTimeout = 3.Seconds(), Network = router.Network, AutoStart = true, }); _subscriptionBus = builder.Build(); var service = new MulticastSubscriptionClient(_subscriptionBus, router, _group ?? router.PeerId.ToString()); return service; }
public IBusService Create(IServiceBus bus) { string path = bus.ControlBus.Endpoint.Address.Uri.AbsolutePath; Uri uri = new UriBuilder("msmq-pgm", _multicastAddress.Address.ToString(), _multicastAddress.Port, path).Uri; Uri clientUri = uri.AppendToPath("_subscriptions"); var builder = new ControlBusBuilderImpl(new ServiceBusSettings { ConcurrentConsumerLimit = 1, ConcurrentReceiverLimit = 1, // REVIEW get rid of this damn thing (what thing, I don't get it, if Dru doesn't than remove this todo) AutoStart = true, EndpointCache = bus.EndpointCache, InputAddress = clientUri, ReceiveTimeout = 3.Seconds(), }); IControlBus subscriptionBus = builder.Build(); var service = new MulticastSubscriptionClient(subscriptionBus, clientUri, _networkKey); return service; }