예제 #1
0
        public override async Task DoProcess()
        {
            var txId = await Inbox.TakeAsync();

            try
            {
                if (await _transactionRepository.ContainsAsync(txId))
                {
                    return;
                }
                var tx = await _transactionProvider.GetTransactionByIdAsync(txId);

                await _transactionRepository.SaveAsync(txId, tx);
            }
            catch (Exception)
            {
                Inbox.Send(txId); // retry
            }
        }