internal static async Task ProcessMessage(IDemoMessage message, TimeSpan processTime, Priority?priority) { string priorityStr = priority.HasValue ? priority.ToString() : string.Empty; Helper.WriteLine($"Received message: {message.Value}, priority = {priorityStr}", ConsoleColor.White); await Task.Delay(processTime); }
public static Message CreateAzureMessage(TimeSpan?timeToLive = null) { IDemoMessage demoMsg = CreateMessage(); return(new Message(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(demoMsg))) { ContentType = "application/json", MessageId = demoMsg.Id, TimeToLive = timeToLive ?? Consts.DefaultMessageTimeToLive }); }
public async Task SendMessagesAsync(CancellationToken token) { _bus = await Helper.StartBusControlFluent(); Helper.WriteLine("Started sending messages.", ConsoleColor.Magenta); while (!token.IsCancellationRequested) { Priority priority = Program.GetPriority(); IDemoMessage message = Helper.CreateMessage(); await _bus.Publish <IDemoMessage>(message, ctx => { ctx.TimeToLive = Consts.DefaultMessageTimeToLive; ctx.Headers.Set(Helper.PriorityKey, priority.ToString()); }); Helper.WriteLine($"Message sent: Id = {message.Id}, Priority = {priority}", ConsoleColor.Yellow); await Task.Delay(_options.ProcessTime); } }
internal static async Task ProcessMessage(IDemoMessage message, TimeSpan processTime) { Helper.WriteLine($"Received message: {message.Id} | {message.Value}", ConsoleColor.White); await Task.Delay(processTime); }