public Wallet(BlockChainIdentity activeChain, TransactionSet txSet, Dictionary <Account, AccountProperties> accounts, BlockIdentity chainTip) { if (activeChain == null) { throw new ArgumentNullException(nameof(activeChain)); } if (accounts == null) { throw new ArgumentNullException(nameof(accounts)); } if (chainTip == null) { throw new ArgumentNullException(nameof(chainTip)); } var totalBalance = accounts.Aggregate((Amount)0, (acc, kvp) => acc + kvp.Value.TotalBalance); _transactionCount = txSet.MinedTransactions.Aggregate(0, (acc, b) => acc + b.Transactions.Count) + txSet.UnminedTransactions.Count; _accounts = accounts; ActiveChain = activeChain; RecentTransactions = txSet; TotalBalance = totalBalance; ChainTip = chainTip; }
public Wallet(BlockChainIdentity activeChain, TransactionSet txSet, Dictionary<Account, AccountState> accounts, BlockIdentity chainTip) { if (accounts == null) throw new ArgumentNullException(nameof(accounts)); if (chainTip == null) throw new ArgumentNullException(nameof(chainTip)); var totalBalance = accounts.Aggregate((Amount)0, (acc, kvp) => acc + kvp.Value.TotalBalance); _transactionCount = txSet.MinedTransactions.Aggregate(0, (acc, b) => acc + b.Transactions.Count) + txSet.UnminedTransactions.Count; _accounts = accounts; ActiveChain = activeChain; RecentTransactions = txSet; TotalBalance = totalBalance; ChainTip = chainTip; }