in src/ModernTacoShop/TrackOrder/src/Services/TrackOrderService.cs [52:74]
public override async Task<Empty> StartTrackingOrder(Order order, ServerCallContext serverCallContext)
{
try
{
if (string.IsNullOrEmpty(_tableName))
{
var systemsManagementClient = new AmazonSimpleSystemsManagementClient();
var tableNameParameter = await systemsManagementClient.GetParameterAsync(
new GetParameterRequest { Name = "/ModernTacoShop/TrackOrder/OrderTableName" });
_tableName = tableNameParameter.Parameter.Value;
}
var client = new AmazonDynamoDBClient();
var context = new DynamoDBContext(client);
var record = new TrackOrderDynamoDbRecord(order);
await context.SaveAsync(record, new DynamoDBOperationConfig() { OverrideTableName = _tableName });
}
catch (Exception ex)
{
_logger.LogError(ex, "Error in StartTrackingOrder");
}
return new Empty();
}