public void Start(IStartupSettings startupSettings) { const int consumers = 4; CancellationTokenSource tokenSource = new CancellationTokenSource(); Enumerable.Range(0, consumers).Iter(x => { Task.Factory.StartNew(() => ProcessLetter(tokenSource.Token), tokenSource.Token); }); _tokenSource = tokenSource.ToOption(); }
public void Load(IStartupSettings startupSettings) { var queueSettings = QueueSettings.Create(startupSettings); Logger.Info("Connecting to queue..."); IConnection connection = new RabbitConnectionFactory() .LinkTo(queueSettings.RabbitAmqpUri) .Create(); Logger.Info("Connected to queue {0}", connection.Endpoint); _connection = connection.ToOption(); }
public void Load(IStartupSettings settings) { // http://www.rabbitmq.com/uri-spec.html // http://lostechies.com/derekgreer/2012/03/18/rabbitmq-for-windows-hello-world-review/ // amqp://guest:guest@localhost:5672/%2f var connectionUri = settings.GetValue <string>(UriStartupKey); _connectionFactory = new ConnectionFactory { Uri = connectionUri, Protocol = Protocols.DefaultProtocol }.ToOption(); }
public static QueueSettings Create(IStartupSettings settings) { try { return(new QueueSettings { RabbitAmqpUri = settings.GetValue <string>(RabbitMqAmqpUriKey) }); } catch (Exception e) { Logger.Error("Loading settings failed", e); throw new StartupConfigurationException(string.Format("Startup Settings corrupted: {0}", RabbitMqAmqpUriKey)); } }
public static HostSettings Create(IStartupSettings settings) { try { return(new HostSettings { ServiceHostUri = new Uri(settings.GetValue <string>(ServiceServiceHostUriKey)) }); } catch (Exception e) { Logger.Error("Loading settings failed", e); throw new StartupConfigurationException(string.Format("Startup Settings corrupted: {0}", ServiceServiceHostUriKey)); } }
public void Load(IStartupSettings startupSettings) { IConnection connection = _manager.GetConnection(); IMessageEnqueuer <IncomingChildLetter> letterEnqueuer = RabbitQueue.Producer() .UseExchange(x => { x.Name = QueueKeys.IncomingLetters.ExchangeName; x.Type = RabbitExchangeType.Direct; }) .Queue(x => { x.Name = QueueKeys.IncomingLetters.QueueName; x.Durable = true; x.PrefetchCount = 16 * 1000; x.RoutingKey = QueueKeys.IncomingLetters.RoutingKey; }) .Create <IncomingChildLetter>(connection); _letterEnqueuer = letterEnqueuer.ToOption(); }
public abstract void Start(IStartupSettings startupSettings);
public void Load(IStartupSettings startupSettings) { }
public override void Start(IStartupSettings startupSettings) { var hostSettings = HostSettings.Create(startupSettings); OpenServiceHost(hostSettings); }
public void Load(IStartupSettings settings) { var connectionUri = settings.GetValue <string>(UriStartupKey); _redis = ConnectionMultiplexer.Connect(connectionUri); }
public void Load(IStartupSettings startupSettings) { _connectionFactory = new RabbitConnectionFactory().LinkTo("").ToOption(); _connection = _connectionFactory.Map(x => x.Create()); }
public void Start(IStartupSettings startupSettings) { _toyOrderProcessors.ExecuteAllOrRollback(x => x.Start(), x => x.Stop()); }