public IBusControl CreateBus(IBusServiceConfigurator busServiceConfigurator, string serviceName) { serviceName = serviceName.ToLowerInvariant().Trim().Replace(" ", "_"); var hostSettings = new SettingsAdapter(_settings, serviceName); if (hostSettings.ServiceUri == null) { throw new ConfigurationException("The ServiceBus ServiceUri setting has not been configured"); } return(AzureBusFactory.CreateUsingServiceBus(configurator => { var host = configurator.Host(hostSettings.ServiceUri, h => { h.SharedAccessSignature(s => { s.KeyName = hostSettings.KeyName; s.SharedAccessKey = hostSettings.SharedAccessKey; s.TokenTimeToLive = hostSettings.TokenTimeToLive; s.TokenScope = hostSettings.TokenScope; }); }); if (_log.IsInfoEnabled) { _log.Info($"Configuring Host: {hostSettings.ServiceUri}"); } var serviceConfigurator = new ServiceBusServiceConfigurator(configurator, host); busServiceConfigurator.Configure(serviceConfigurator); })); }
private void Run() { this.bus = AzureBusFactory.CreateBus("Endpoint=sb://servicebus/ServiceBusDefaultNamespace;StsEndpoint=https://servicebus:10355/ServiceBusDefaultNamespace;RuntimePort=10354;ManagementPort=10355"); this.bus.SubscribeAsync( typeof(TestMessage), obj => Task.Factory.StartNew(() => Console.WriteLine("Handler Received message: {0}", ((TestMessage)obj).Text))); Console.WriteLine("Type a message or 'q' to quit."); string text = null; while ((text = Console.ReadLine()) != "q") { this.bus.Publish( typeof(TestMessage), new TestMessage { Text = text }, DateTime.Now.AddMinutes(1)); } this.bus.Dispose(); }
public static void Main(string[] args) { var bus = AzureBusFactory.CreateBus( new AzureNetQSettings { Logger = () => new NoDebugLogger(), ConnectionConfiguration = new ConnectionConfiguration { PrefetchCount = 200, MaxConcurrentCalls = 100, BatchingInterval = TimeSpan.FromMilliseconds(50) } }); bus.RespondAsync <TestAsyncRequestMessage, TestAsyncResponseMessage>(HandleAsyncRequest); Console.WriteLine("Waiting to service requests"); Console.WriteLine("Ctrl-C to exit"); Console.CancelKeyPress += (source, cancelKeyPressArgs) => { bus.Dispose(); Console.WriteLine("Shut down complete"); }; Thread.Sleep(Timeout.Infinite); }
static IBusControl ConfigureBus() { return(AzureBusFactory.CreateUsingServiceBus(cfg => { cfg.Message <IContrato>(x => x.SetEntityName(TopicName)); var host = cfg.Host(ServiceBusConnectionString, h => { h.RetryLimit = 3; h.OperationTimeout = TimeSpan.FromSeconds(30); }); cfg.ReceiveEndpoint("masstransitsender", c => { EndpointConvention.Map <IContrato>(c.InputAddress); }); })); }
public IBusControl CreateBus(IBusServiceConfigurator busServiceConfigurator, string serviceName) { if (string.IsNullOrEmpty(_hostSettings.Namespace)) { throw new ConfigurationException("The ServiceBus Namespace setting has not been configured"); } if (string.IsNullOrEmpty(_hostSettings.KeyName)) { throw new ConfigurationException("The ServiceBus KeyName setting has not been configured"); } if (string.IsNullOrEmpty(_hostSettings.SharedAccessKey)) { throw new ConfigurationException("The ServiceBus SharedAccessKey setting has not been configured"); } return(AzureBusFactory.CreateUsingServiceBus(configurator => { serviceName = serviceName.ToLowerInvariant().Trim().Replace(" ", "_"); _hostSettings.ServiceUri = ServiceBusEnvironment.CreateServiceUri("sb", _hostSettings.Namespace, serviceName); var host = configurator.Host(_hostSettings.ServiceUri, h => { h.SharedAccessSignature(s => { s.KeyName = _hostSettings.KeyName; s.SharedAccessKey = _hostSettings.SharedAccessKey; s.TokenTimeToLive = _hostSettings.TokenTimeToLive; s.TokenScope = _hostSettings.TokenScope; }); }); if (_log.IsInfoEnabled) { _log.Info($"Configuring Host: { _hostSettings.ServiceUri}"); } var serviceConfigurator = new ServiceBusServiceConfigurator(configurator, host); busServiceConfigurator.Configure(serviceConfigurator); })); }
public IBusControl CreateBus(IBusServiceConfigurator busServiceConfigurator, string serviceName) { serviceName = serviceName.ToLowerInvariant().Trim().Replace(" ", "_"); var hostSettings = new SettingsAdapter(_settings, serviceName); if (hostSettings.ServiceUri == null) { throw new ConfigurationException("The ServiceBus ServiceUri setting has not been configured"); } return(AzureBusFactory.CreateUsingServiceBus(configurator => { var host = configurator.Host(hostSettings.ServiceUri, h => { if (!string.IsNullOrWhiteSpace(hostSettings.ConnectionString)) { h.TokenProvider = hostSettings.TokenProvider; } else { h.SharedAccessSignature(s => { s.KeyName = hostSettings.KeyName; s.SharedAccessKey = hostSettings.SharedAccessKey; s.TokenTimeToLive = hostSettings.TokenTimeToLive; s.TokenScope = hostSettings.TokenScope; }); } }); LogContext.Info?.Log("Configuring Host: {Host}", hostSettings.ServiceUri); var serviceConfigurator = new ServiceBusServiceConfigurator(configurator); busServiceConfigurator.Configure(serviceConfigurator); })); }
private void Run() { this.bus = AzureBusFactory.CreateBus(); this.bus.Receive( SendReceiveQueue, handlers => handlers .Add <TestSendMessage>(msg => Console.WriteLine("Handler 1 Received message: {0}", msg.Text)) .Add <TestSendMessage2>(msg => Console.WriteLine("Handler 2 Received message: {0}", msg.Text))); this.bus.Receive <TestSendMessageBase>(AuditQueue, msg => Console.WriteLine("Auditor Received message: {0}", msg.Text)); Console.WriteLine("Type a message or 'q' to quit."); string text = null; while ((text = Console.ReadLine()) != "q") { foreach (var queue in new[] { SendReceiveQueue, AuditQueue }) { this.bus.Send( queue, new TestSendMessage { Text = text }); this.bus.Send( queue, new TestSendMessage2 { Text = text }); } } this.bus.Dispose(); }
public static void AddMassTransitAzureServiceBus(this IServiceCollection services, IConfiguration configuration) { services.AddMassTransit(masstransit => { masstransit.AddConsumer <ContractConsumer>(); masstransit.AddBus(provider => AzureBusFactory.CreateUsingServiceBus(cfg => { cfg.UseExtensionsLogging(provider.GetRequiredService <ILoggerFactory>()); cfg.Message <IContrato>(m => m.SetEntityName(configuration.GetValue <string>("Bus:Topic"))); var host = cfg.Host(configuration.GetValue <string>("Bus:ConnectionString"), h => { h.RetryLimit = 3; h.OperationTimeout = TimeSpan.FromSeconds(30); }); cfg.ReceiveEndpoint("masstransitreceiver", c => { c.Consumer <ContractConsumer>(provider); }); })); }); }
/// <summary> /// Configure and create a bus for Azure Service Bus /// </summary> /// <param name="selector">Hang off the selector interface for visibility</param> /// <param name="configure">The configuration callback to configure the bus</param> /// <returns></returns> public static IBusControl CreateUsingAzureServiceBus(this IBusFactorySelector selector, Action <IServiceBusBusFactoryConfigurator> configure) { return(AzureBusFactory.CreateUsingServiceBus(configure)); }