TransactionQueue
Class to manage procedural transaction queues
▪ ProcedureReturnType
▪ ReturnType
▪ TransactionArgs: unknown[][]
- TransactionQueue
Create a transaction queue
Parameters:
▪ args: object
Name | Type | Description |
---|---|---|
procedureResult | MaybePostTransactionValue‹ProcedureReturnType› | value that will be returned by the queue after it is run. It can be a {@link PostTransactionValue} |
transactions | PolymeshTransactionArray‹TransactionArgs› | list of transactions to be run in this queue |
transformer? | undefined | function | function that transforms the procedure's return value before returning it after the queue is run |
▪ context: Context
optional error information
status of the queue
• transactions: PolymeshTransactionArray‹TransactionArgs›
transactions that will be run in the queue
Retrieve a lower bound of the fees required to execute this transaction queue. Transaction fees can be higher at execution time for three reasons:
- One or more transaction arguments depend on the result of another transaction in the queue. This means fees can't be calculated for said transaction until previous transactions in the queue have run
- Protocol or gas fees may vary between when this value is fetched and when the transaction is actually executed because of a governance vote
Transaction fees are broken down between those that have to be paid by the signing Account and those that will be paid by third parties. In most cases, the entirety of the fees will be paid by either the signing Account or a single third party Account
▸ onProcessedByMiddleware(
listener
: function): functionSubscribe to the results of this queue being processed by the harvester (and as such, available to the middleware)
note
this event will be fired even if the queue failsthrows
if the middleware wasn't enabled when instantiating the SDK clientParameters:
▪ listener: function
callback function that will be called whenever the middleware is updated with the latest data. If there is an error (timeout or middleware offline) it will be passed to this callback
Parameters:
Name | Type |
---|---|
err? |
Returns: function
unsubscribe function
▸ (): void
▸ onStatusChange(
listener
: function): functionSubscribe to status changes on the Transaction Queue
Parameters:
▪ listener: function
callback function that will be called whenever the Transaction Queue's status changes
Parameters:
Name | Type |
---|---|
transactionQueue | this |
err? |
Returns: function
unsubscribe function
▸ (): void
▸ onTransactionStatusChange‹Values›(
listener
: function): functionSubscribe to status changes on individual transactions
Type parameters:
▪ Values: unknown[]
Parameters:
▪ listener: function
callback function that will be called whenever the individual transaction's status changes
Parameters:
Name | Type |
---|---|
transaction | |
transactionQueue | this |
Returns: function
unsubscribe function
▸ (): void
▸ run(): Promise‹ReturnType›
Run the transactions in the queue in sequential order. If a transaction fails or the user refuses to sign it, one of two things can happen:
- 1.If
transaction.isCritical === true
, the entire queue fails and the corresponding error is stored inthis.error
as well as thrown - 2.Otherwise, the queue continues executing and the error is stored in
transaction.error
Returns: Promise‹ReturnType›
Last modified 1yr ago