public void Report(T obj, string reportId) { var options = PublishOptions .RoutingTo(_routingKey) .WithReportId(reportId); _producer.Publish(obj, options); }
public ActionResult Post() { var data = new BackgroundJobData { Id = 1, Name = Guid.NewGuid().ToString() }; _producer.Publish(data, PublishOptions.RoutingTo("BackgroundJob").WithReportId(Request)); return(Ok()); }
public async Task Consume(SomeData obj, MessageContext context, CancellationToken cancellationToken) { var randomDelay = _random.Next(50); await Task.Delay(randomDelay, cancellationToken); _logger.LogInformation("Received message {text} at {date}", obj.Text, obj.Date); var otherData = new OtherData { Date = DateTime.Now }; _producer.Publish(otherData, PublishOptions.RoutingTo("test2")); }
protected override async Task ExecuteAsync(CancellationToken stoppingToken) { const string RountingKey = "test"; while (!stoppingToken.IsCancellationRequested) { var number = _random.Next(); var data = new SomeData( id: number, name: $"Some Name {number}" ); _producer.Publish(data, PublishOptions.RoutingTo(RountingKey)); await Task.Delay(1000, stoppingToken); } }
public ActionResult <SomeData> Get(string text) { if (string.IsNullOrEmpty(text)) { text = "empty text"; } var message = new SomeData { Date = DateTime.Now, Text = text }; _producer.Publish(message, PublishOptions.RoutingTo("test")); return(message); }