public void Post([FromBody] string value) { try { var eventMessage = new TemplateAddedIntegrationEvent() { Message = value, Names = new List <string> { "BDName1", "BDName2" }, Quantity = 1, PrePosition = false, TranQType = "TQ", ConnectionResetMinutes = null }; //Before publish, saving the response into DB if (ModelState.IsValid) { var kafkaResponse = new KafkaResponse { ResponseType = "Publisher", EventMessage = eventMessage.Message, Names = eventMessage.Names.ToArray(), Quantity = eventMessage.Quantity, TranQType = eventMessage.TranQType, ConnectionResetMinutes = eventMessage.ConnectionResetMinutes, CreationDate = DateTime.Now, Topic = "bddev" }; _kafkaResponseRepository.InsertAsync(kafkaResponse); } var headers = Request.Headers.ToDictionary <KeyValuePair <string, StringValues>, string, string>(item => item.Key, item => item.Value); _eventBus.Publish("bddev", eventMessage, headers); //Before publish, saving the response into DB if (ModelState.IsValid) { var kafkaResponse = new KafkaResponse { ResponseType = "Publisher After", EventMessage = eventMessage.Message, Names = eventMessage.Names.ToArray(), Quantity = eventMessage.Quantity, TranQType = eventMessage.TranQType, ConnectionResetMinutes = eventMessage.ConnectionResetMinutes, CreationDate = DateTime.Now, Topic = "bddev" }; _kafkaResponseRepository.InsertAsync(kafkaResponse); } } catch (Exception ex) { _logger.LogError(ex.Message); } }
/// <summary> /// /// </summary> /// <param name="event"></param> /// <returns></returns> public async Task Handle(TemplateAddedIntegrationEvent @event) { try { var context = _httpContextAccessor.HttpContext; if (context != null) { foreach (var keyValuePair in @event.Headers) { context.Request.Headers[keyValuePair.Key] = keyValuePair.Value; } } KafkaResponse kafkaResponse = new KafkaResponse { ResponseType = "Subscriber", EventMessage = @event.Message, Names = @event.Names.ToArray(), Quantity = @event.Quantity, TranQType = @event.TranQType, ConnectionResetMinutes = @event.ConnectionResetMinutes, CreationDate = DateTime.Now, Topic = "bddev" }; await _kafkaResponseRepository.InsertAsync(kafkaResponse); //@event.Headers // YOOO //Event sampleEvent = new Event(); //_eventBus.Publish(sampleEvent); await Task.CompletedTask; } catch (Exception ex) { _logger.LogError(ex.Message); } }