예제 #1
0
        public async Task <Transaction> CreateTransaction(Wallet wallet, string electionAddress, string candidateAddress)
        {
            Transaction transaction = await _transactionPool.ExistingTransaction(wallet.PublicKey);

            if (transaction == null)
            {
                transaction = _transactionService.NewTransaction(wallet, electionAddress, candidateAddress);
            }
            else
            {
                _transactionService.UpdateTransaction(transaction, wallet, electionAddress, candidateAddress);
            }

            await _transactionPool.UpdateOrAddTransactionAsync(transaction);

            return(transaction);
        }