in foreign/csharp/Iggy_Sample_Consumer/Program.cs [120:164]
void HandleMessage(MessageResponse<Envelope> messageResponse)
{
Console.Write(
$"Handling message type: {messageResponse.Message.MessageType} with state {messageResponse.State.ToString()}, checksum: {messageResponse.Checksum}, at offset: {messageResponse.Offset} with message Id:{messageResponse.Id.ToString()} ");
Console.WriteLine();
Console.WriteLine("---------------------------MESSAGE-----------------------------------");
Console.WriteLine();
switch (messageResponse.Message.MessageType)
{
case "order_created":
{
var orderCreated = JsonSerializer.Deserialize<OrderCreated>(messageResponse.Message.Payload, jsonOptions);
Console.WriteLine(orderCreated);
break;
}
case "order_confirmed":
{
var orderConfirmed =
JsonSerializer.Deserialize<OrderConfirmed>(messageResponse.Message.Payload, jsonOptions);
Console.WriteLine(orderConfirmed);
break;
}
case "order_rejected":
{
var orderRejected = JsonSerializer.Deserialize<OrderRejected>(messageResponse.Message.Payload, jsonOptions);
Console.WriteLine(orderRejected);
break;
}
}
if (messageResponse.Headers is not null)
{
Console.WriteLine();
Console.WriteLine("---------------------------HEADERS-----------------------------------");
Console.WriteLine();
foreach (var (headerKey, headerValue) in messageResponse.Headers)
{
Console.WriteLine("Found Header: {0} with value: {1}, ", headerKey.ToString(), headerValue.ToString());
}
Console.WriteLine();
}
//await Task.Delay(1000);
}