diff --git a/src/NebulaBus/INebulaBus.cs b/src/NebulaBus/INebulaBus.cs index a64dcef1e25677e0f9a80b97245fce54c5246bde..d8dfe533d282ce39b1bb70145b6081cd1652ecd4 100644 --- a/src/NebulaBus/INebulaBus.cs +++ b/src/NebulaBus/INebulaBus.cs @@ -6,10 +6,10 @@ namespace NebulaBus { public interface INebulaBus { - Task PublishAsync(string name, T message) where T : class, new(); - Task PublishAsync(string name, T message, IDictionary headers) where T : class, new(); - Task PublishAsync(TimeSpan delay, string name, T message) where T : class, new(); - Task PublishAsync(TimeSpan delay, string name, T message, IDictionary headers) + Task PublishAsync(string nameOrGroup, T message) where T : class, new(); + Task PublishAsync(string nameOrGroup, T message, IDictionary headers) where T : class, new(); + Task PublishAsync(TimeSpan delay, string nameOrGroup, T message) where T : class, new(); + Task PublishAsync(TimeSpan delay, string nameOrGroup, T message, IDictionary headers) where T : class, new(); } } \ No newline at end of file diff --git a/src/NebulaBus/NebulaBusService.cs b/src/NebulaBus/NebulaBusService.cs index b8383af12c12bd0d6a984e75bfcbf44b94c036af..8fe9200af978128f2fd2bcc2bece35fb7d2096fe 100644 --- a/src/NebulaBus/NebulaBusService.cs +++ b/src/NebulaBus/NebulaBusService.cs @@ -23,52 +23,52 @@ namespace NebulaBus _idWorker = new IdWorker(result, 1); } - public async Task PublishAsync(string group, T message) + public async Task PublishAsync(string nameOrGroup, T message) where T : class, new() { - var header = BuildNebulaHeader(group); + var header = BuildNebulaHeader(nameOrGroup); foreach (var processor in _processors) { - await processor.Publish(group, JsonConvert.SerializeObject(message), header); + await processor.Publish(nameOrGroup, JsonConvert.SerializeObject(message), header); } } - public async Task PublishAsync(string group, T message, IDictionary headers) + public async Task PublishAsync(string nameOrGroup, T message, IDictionary headers) where T : class, new() { - var header = BuildNebulaHeader(group, headers); + var header = BuildNebulaHeader(nameOrGroup, headers); foreach (var processor in _processors) { - await processor.Publish(group, JsonConvert.SerializeObject(message), header); + await processor.Publish(nameOrGroup, JsonConvert.SerializeObject(message), header); } } - public async Task PublishAsync(TimeSpan delay, string group, T message) + public async Task PublishAsync(TimeSpan delay, string nameOrGroup, T message) where T : class, new() { - var header = BuildNebulaHeader(group); + var header = BuildNebulaHeader(nameOrGroup); await _delayMessageScheduler.Schedule(new DelayStoreMessage() { MessageId = header[NebulaHeader.MessageId]!, - Group = group, + Group = nameOrGroup, Header = header, Message = JsonConvert.SerializeObject(message), - Name = group, + Name = nameOrGroup, TriggerTime = DateTimeOffset.Now.AddSeconds(delay.TotalSeconds) }); } - public async Task PublishAsync(TimeSpan delay, string group, T message, IDictionary headers) + public async Task PublishAsync(TimeSpan delay, string nameOrGroup, T message, IDictionary headers) where T : class, new() { - var header = BuildNebulaHeader(group, headers); + var header = BuildNebulaHeader(nameOrGroup, headers); await _delayMessageScheduler.Schedule(new DelayStoreMessage() { MessageId = header[NebulaHeader.MessageId]!, - Group = group, + Group = nameOrGroup, Header = header, Message = JsonConvert.SerializeObject(message), - Name = group, + Name = nameOrGroup, TriggerTime = DateTimeOffset.Now.AddSeconds(delay.TotalSeconds) }); } diff --git a/src/NebulaBus/NebulaHandler.cs b/src/NebulaBus/NebulaHandler.cs index 9186d2ac4d343116e158982d8020a1231c0cee41..086fae7e00a425749c6d4672449c724efb49675e 100644 --- a/src/NebulaBus/NebulaHandler.cs +++ b/src/NebulaBus/NebulaHandler.cs @@ -36,9 +36,6 @@ namespace NebulaBus public abstract class NebulaHandler : NebulaHandler { - public override string Name => this.GetType().Name; - public override string Group => typeof(T).Name; - internal override async Task Subscribe(IProcessor processor, IDelayMessageScheduler delayMessageScheduler, string message, NebulaHeader header) { diff --git a/src/NebulaBus/Rabbitmq/RabbitmqProcessor.cs b/src/NebulaBus/Rabbitmq/RabbitmqProcessor.cs index 1fa6977c015be49e4ae187203f1e43efacd93710..572d43ac2b8cf846cd3fdbb68f87fc6e19653cd0 100644 --- a/src/NebulaBus/Rabbitmq/RabbitmqProcessor.cs +++ b/src/NebulaBus/Rabbitmq/RabbitmqProcessor.cs @@ -64,7 +64,7 @@ namespace NebulaBus.Rabbitmq foreach (var handler in _nebulaHandlers) { var channel = await _connection.CreateChannelAsync(); - + //Create Exchange await channel.ExchangeDeclareAsync(_rabbitmqOptions.ExchangeName, ExchangeType.Direct); await channel.QueueDeclareAsync(handler.Name, false, false, false, null); diff --git a/src/WebApplicationSample/Controllers/WeatherForecastController.cs b/src/WebApplicationSample/Controllers/TestController.cs similarity index 93% rename from src/WebApplicationSample/Controllers/WeatherForecastController.cs rename to src/WebApplicationSample/Controllers/TestController.cs index 4d73e9ac210d80792b93af747d8ec1ed3f26452f..ca7e2d39f24ee9da3f8a32ac9d22f961f93d2913 100644 --- a/src/WebApplicationSample/Controllers/WeatherForecastController.cs +++ b/src/WebApplicationSample/Controllers/TestController.cs @@ -6,17 +6,17 @@ namespace WebApplicationSample.Controllers { [ApiController] [Route("[controller]")] - public class WeatherForecastController : ControllerBase + public class TestController : ControllerBase { private static readonly string[] Summaries = new[] { "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching" }; - private readonly ILogger _logger; + private readonly ILogger _logger; private readonly INebulaBus _bus; - public WeatherForecastController(ILogger logger, INebulaBus nebulaBus) + public TestController(ILogger logger, INebulaBus nebulaBus) { _logger = logger; _bus = nebulaBus;