Skip to content

Instantly share code, notes, and snippets.

@dcomartin
Created April 6, 2022 21:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dcomartin/d258a0b6ace703651b0e435d956efb3c to your computer and use it in GitHub Desktop.
Save dcomartin/d258a0b6ace703651b0e435d956efb3c to your computer and use it in GitHub Desktop.
public class ExternalOrderIntegration
{
private readonly IMessageSession _messageSession;
private readonly HttpClient _httpClient;
public ExternalOrderIntegration(IMessageSession messageSession, HttpClient httpClient)
{
_messageSession = messageSession;
_httpClient = httpClient;
}
public async Task PlaceOrder()
{
var response = await _httpClient.GetAsync("http://external.com/newOrders");
var externalOrder = await response.Deserialize<ExternalOrder>();
var placeOrder = new PlaceOrder
{
OrderId = externalOrder!.Id,
// Translation to convert an external order or PlaceOrder command
};
await _messageSession.Send(placeOrder);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment