Transaction Manager¶
-
class
TransactionManager
(wallet)¶ exported from
managers/transaction-manager
- Extends:
utils.PausableTypedEventEmitter
TransactionManager manages and tracks single transactions
Arguments: - wallet (wallet.Wallet) –
-
TransactionManager.
wallet
¶ type: wallet.Wallet
-
TransactionManager.
addTransaction
(transaction)¶ Arguments: - transaction (models/transaction.SignedTransaction) –
Returns: Promise<void> –
-
TransactionManager.
fetchAccountTransactions
(account)¶ Arguments: - account (models/account.Account) –
Returns: Promise<models/transaction.SignedTransaction[]> –
-
TransactionManager.
fetchAccountTransactionsAfter
(account, blockno, limit)¶ Arguments: - account (models/account.Account) –
- blockno (number) –
- limit (undefined|number) –
Returns: Promise<models/transaction.SignedTransaction[]> –
-
TransactionManager.
fetchAccountTransactionsBefore
(account, blockno, limit)¶ Arguments: - account (models/account.Account) –
- blockno (number) –
- limit (undefined|number) –
Returns: Promise<models/transaction.SignedTransaction[]> –
-
TransactionManager.
getAccountTransactions
(accountOrSpec)¶ Returns transactions stored for an account
Arguments: - accountOrSpec (models/account.AccountSpec|models/account.Account) –
Returns: Promise<models/transaction.Transaction[]> –
-
TransactionManager.
pause
()¶
-
TransactionManager.
resume
()¶
-
TransactionManager.
sendTransaction
(transaction)¶ Sends prepared and signed transaction to the Aergo client. Adds transaction to the manager and starts a tracker.
Arguments: - transaction (models/transaction.SignedTransaction) –
Returns: Promise<managers/transaction-manager.TransactionTracker> – transaction tracker
-
TransactionManager.
trackAccount
(account)¶ Track transactions for account. There is no default implementation for this. The only generally available method would be to scan the entire blockchain which is highly inefficient. If you want that, use your own full node and add the data source using wallet.use(NodeTransactionScanner);
Arguments: - account (models/account.Account) –
Returns: managers/transaction-manager.AccountTransactionTracker –
-
TransactionManager.
trackTransaction
(transaction)¶ Arguments: - transaction (models/transaction.SignedTransaction) –
Returns: Promise<managers/transaction-manager.TransactionTracker> –
-
class
TransactionTracker
(manager, transaction)¶ exported from
managers/transaction-manager
- Extends:
utils.PausableTypedEventEmitter
Arguments: - manager (managers/transaction-manager.TransactionManager) –
- transaction (models/transaction.SignedTransaction) –
-
TransactionTracker.
hash
¶ type: string
-
TransactionTracker.
transaction
¶ type: models/transaction.SignedTransaction
-
TransactionTracker.
cancel
()¶ Cancels transaction tracker. This does not cancel sending the transaction.
-
TransactionTracker.
getReceipt
()¶ Returns a promise that resolves when the transaction is confirmed and the receipt is available and rejects when an error or timeout occurs.
Returns: Promise<managers/transaction-manager.GetReceiptResult> –
-
TransactionTracker.
load
()¶ Attempt to retrieve transaction data from node. Emits events according to changed status.
Returns: Promise<void> –
-
TransactionTracker.
retryLoad
()¶ Repeatedly tries loading transaction status. This uses an exponential backoff in case the transaction is not confirmed yet.
-
class
AccountTransactionTracker
(manager, account)¶ - Extends:
utils.PausableTypedEventEmitter
Arguments: - manager (managers/transaction-manager.TransactionManager) –
- account (models/account.Account) –
-
AccountTransactionTracker.
load
()¶ Returns: Promise<models/account.Account> –
-
AccountTransactionTracker.
pause
()¶
-
AccountTransactionTracker.
resume
()¶