public RabbitMqMessageBus( IDependencyResolver resolver, RabbitMqScaleoutConfiguration configuration, RabbitConnectionBase advancedConnectionInstance = null) : base(resolver, configuration) { if (configuration == null) { throw new ArgumentNullException("configuration"); } _configuration = configuration; if (advancedConnectionInstance != null) { advancedConnectionInstance.OnDisconnectionAction = OnConnectionLost; advancedConnectionInstance.OnReconnectionAction = ConnectToRabbit; advancedConnectionInstance.OnMessageRecieved = wrapper => OnReceived(0, wrapper.Id, wrapper.ScaleoutMessage); _rabbitConnectionBase = advancedConnectionInstance; } else { _rabbitConnectionBase = new EasyNetQRabbitConnection(_configuration) { OnDisconnectionAction = OnConnectionLost, OnReconnectionAction = ConnectToRabbit, OnMessageRecieved = ForwardOnReceivedMessage }; } _messageIdentifierGenerator = new UniqueMessageIdentifierGenerator(); ConnectToRabbit(); }
public RabbitMqMessageBus( IDependencyResolver resolver, RabbitMqScaleoutConfiguration configuration, RabbitConnectionBase advancedConnectionInstance = null) : base(resolver, configuration) { if (configuration == null) { throw new ArgumentNullException("configuration"); } _rabbitConnectionBase = advancedConnectionInstance ?? new EasyNetQRabbitConnection(configuration); _rabbitConnectionBase.OnDisconnectionAction = OnConnectionLost; _rabbitConnectionBase.OnReconnectionAction = ConnectToRabbit; _rabbitConnectionBase.OnMessageReceived = wrapper => Receivingbuffer.Add(wrapper); ConnectToRabbit(); Task.Factory.StartNew(()=> { while (true) { foreach (var message in Receivingbuffer.GetConsumingEnumerable()) { try { OnReceived(0, message.Id, message.ScaleoutMessage); } catch { OnConnectionLost(); } } } }); }
public RabbitMqMessageBus(IDependencyResolver resolver, RabbitMqScaleoutConfiguration configuration, RabbitConnectionBase advancedConnectionInstance = null) : base(resolver, configuration) { if (configuration == null) { throw new ArgumentNullException("configuration"); } _rabbitConnectionBase = advancedConnectionInstance ?? new RabbitConnection(configuration); _rabbitConnectionBase.OnDisconnectionAction = OnConnectionLost; _rabbitConnectionBase.OnReconnectionAction = ConnectToRabbit; _rabbitConnectionBase.OnMessageReceived = wrapper => Receivingbuffer.Add(wrapper); ConnectToRabbit(); Task.Factory.StartNew(() => { while (true) { foreach (var message in Receivingbuffer.GetConsumingEnumerable()) { try { OnReceived(0, message.Id, message.ScaleoutMessage); } catch { OnConnectionLost(); } } } }); }
public RabbitConnectionBase(RabbitMqScaleoutConfiguration configuration) { if (configuration == null) { throw new ArgumentNullException("configuration"); } Configuration = configuration; }
public RabbitConnectionBase(RabbitMqScaleoutConfiguration configuration) { if(configuration == null) { throw new ArgumentNullException("configuration"); } Configuration = configuration; }
private static IDependencyResolver RegisterBus(IDependencyResolver resolver, RabbitMqScaleoutConfiguration configuration, RabbitConnectionBase advancedConnectionInstance = null) { RabbitMqMessageBus bus = null; var initialized = false; var syncLock = new object(); Func <RabbitMqMessageBus> busFactory = () => new RabbitMqMessageBus(resolver, configuration, advancedConnectionInstance); resolver.Register(typeof(IMessageBus), () => LazyInitializer.EnsureInitialized(ref bus, ref initialized, ref syncLock, busFactory)); return(resolver); }
public RabbitMqMessageBus(IDependencyResolver resolver, RabbitMqScaleoutConfiguration configuration, RabbitConnectionBase advancedConnectionInstance = null) : base(resolver, configuration) { if (configuration == null) { throw new ArgumentNullException("configuration"); } _configuration = configuration; var traceManager = resolver.Resolve <ITraceManager>(); _trace = traceManager["SignalR.RabbitMQ." + typeof(RabbitMqMessageBus).Name]; if (advancedConnectionInstance != null) { advancedConnectionInstance.OnDisconnectionAction = OnConnectionLost; advancedConnectionInstance.OnReconnectionAction = ConnectToRabbit; advancedConnectionInstance.OnMessageRecieved = wrapper => _recievingbuffer.Add(wrapper); _rabbitConnectionBase = advancedConnectionInstance; } else { _rabbitConnectionBase = new EasyNetQRabbitConnection(_configuration) { OnDisconnectionAction = OnConnectionLost, OnReconnectionAction = ConnectToRabbit, OnMessageRecieved = wrapper => _recievingbuffer.Add(wrapper) }; } ConnectToRabbit(); _recievingworkerTask = Task.Factory.StartNew(() => { while (true) { foreach (var message in _recievingbuffer.GetConsumingEnumerable()) { try { OnReceived(0, message.Id, message.ScaleoutMessage); } catch { OnConnectionLost(); } } } }); }
private static IDependencyResolver RegisterBus(IDependencyResolver resolver, RabbitMqScaleoutConfiguration configuration, RabbitConnectionBase advancedConnectionInstance = null) { RabbitMqMessageBus bus = null; var initialized = false; var syncLock = new object(); Func<RabbitMqMessageBus> busFactory = () => new RabbitMqMessageBus(resolver, configuration, advancedConnectionInstance); resolver.Register(typeof (IMessageBus), () => LazyInitializer.EnsureInitialized(ref bus, ref initialized, ref syncLock, busFactory)); return resolver; }
public RabbitMqMessageBus( IDependencyResolver resolver, RabbitMqScaleoutConfiguration configuration, RabbitConnectionBase advancedConnectionInstance = null) : base(resolver, configuration) { if (configuration == null) { throw new ArgumentNullException("configuration"); } _configuration = configuration; var traceManager = resolver.Resolve<ITraceManager>(); _trace = traceManager["SignalR.RabbitMQ." + typeof(RabbitMqMessageBus).Name]; if (advancedConnectionInstance != null) { advancedConnectionInstance.OnDisconnectionAction = OnConnectionLost; advancedConnectionInstance.OnReconnectionAction = ConnectToRabbit; advancedConnectionInstance.OnMessageRecieved = wrapper => _recievingbuffer.Add(wrapper); _rabbitConnectionBase = advancedConnectionInstance; } else { _rabbitConnectionBase = new EasyNetQRabbitConnection(_configuration) { OnDisconnectionAction = OnConnectionLost, OnReconnectionAction = ConnectToRabbit, OnMessageRecieved = wrapper => _recievingbuffer.Add(wrapper) }; } ConnectToRabbit(); _recievingworkerTask = Task.Factory.StartNew(()=> { while (true) { foreach (var message in _recievingbuffer.GetConsumingEnumerable()) { try { OnReceived(0, message.Id, message.ScaleoutMessage); } catch { OnConnectionLost(); } } } }); }
public static IDependencyResolver UseRabbitMq(this IDependencyResolver resolver, RabbitMqScaleoutConfiguration configuration) { if(configuration == null) { throw new ArgumentNullException("configuration"); } var bus = new Lazy<RabbitMqMessageBus>(() => new RabbitMqMessageBus(resolver, configuration)); resolver.Register(typeof(IMessageBus), () => bus.Value); return resolver; }
public EasyNetQRabbitConnection(RabbitMqScaleoutConfiguration configuration) : base(configuration) { _bus = configuration.Bus != null ? configuration.Bus.Advanced : RabbitHutch.CreateBus(configuration.AmpqConnectionString).Advanced; //wire up the reconnection handler _bus.Connected += OnReconnection; //wire up the disconnection handler _bus.Disconnected += OnDisconnection; }
public EasyNetQRabbitConnection(RabbitMqScaleoutConfiguration configuration) : base(configuration) { _bus = configuration.Bus != null ? configuration.Bus.Advanced : RabbitHutch.CreateBus(configuration.AmpqConnectionString).Advanced; //wire up the reconnection handler _bus.Connected += OnReconnection; //wire up the disconnection handler _bus.Disconnected += OnDisconnection; }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); RegisterGlobalFilters(GlobalFilters.Filters); RegisterRoutes(RouteTable.Routes); BundleTable.Bundles.RegisterTemplateBundles(); var factory = new ConnectionFactory { UserName = "******", Password = "******" }; var exchangeName = "SignalR.RabbitMQ-Example"; var configuration = new RabbitMqScaleoutConfiguration(factory, exchangeName); GlobalHost.DependencyResolver.UseRabbitMq(configuration); }
public RabbitConnection(RabbitMqScaleoutConfiguration configuration) : base(configuration) { }
public RabbitConnection(RabbitMqScaleoutConfiguration configuration) : base(configuration) {}
public static IDependencyResolver UseRabbitMq(this IDependencyResolver resolver, RabbitMqScaleoutConfiguration configuration) { return RegisterBus(resolver, configuration); }
public static IDependencyResolver UseRabbitMqAdvanced(this IDependencyResolver resolver, RabbitConnectionBase myConnection, RabbitMqScaleoutConfiguration configuration) { return(RegisterBus(resolver, configuration, myConnection)); }
public static IDependencyResolver UseRabbitMq(this IDependencyResolver resolver, RabbitMqScaleoutConfiguration configuration) { return(RegisterBus(resolver, configuration)); }
public static IDependencyResolver UseRabbitMq(this IDependencyResolver resolver, RabbitMqScaleoutConfiguration configuration) { if (configuration == null) { throw new ArgumentNullException("configuration"); } var bus = new Lazy <RabbitMqMessageBus>(() => new RabbitMqMessageBus(resolver, configuration)); resolver.Register(typeof(IMessageBus), () => bus.Value); return(resolver); }
public static IDependencyResolver UseRabbitMqAdvanced(this IDependencyResolver resolver, RabbitConnectionBase myConnection, RabbitMqScaleoutConfiguration configuration) { return RegisterBus(resolver, configuration, myConnection); }