public async Task Send(SagaConsumeContext <TSaga, TMessage> context) { var instance = context.Saga; if (Log.IsDebugEnabled) { Log.DebugFormat("SAGA:{0}:{1} Added {2}", TypeMetadataCache <TSaga> .ShortName, instance.CorrelationId, TypeMetadataCache <TMessage> .ShortName); } SagaConsumeContext <TSaga, TMessage> proxy = new DynamoDbEventStoreSagaConsumeContext <TSaga, TMessage>(_connection, context, instance); await _next.Send(proxy).ConfigureAwait(false); if (!proxy.IsCompleted) { var changes = instance.GetChanges(); await _connection.SaveEvensAsync(instance.CorrelationId, changes, _configuration); } }