Interface PluginTransactionSelectorFactory
public interface PluginTransactionSelectorFactory
Interface for a factory that creates transaction selector and propose pending transaction for
block inclusion
-
Method Summary
Modifier and TypeMethodDescriptiondefault PluginTransactionSelectorcreate(ProcessableBlockHeader pendingBlockHeader, SelectorsStateManager selectorsStateManager) Create a plugin transaction selector, that can be used during block creation to apply custom filters to proposed pending transactionsdefault PluginTransactionSelectorcreate(SelectorsStateManager selectorsStateManager) Deprecated, for removal: This API element is subject to removal in a future version.default voidselectPendingTransactions(BlockTransactionSelectionService blockTransactionSelectionService, ProcessableBlockHeader pendingBlockHeader, List<? extends org.hyperledger.besu.datatypes.PendingTransaction> candidatePendingTransactions) Called during the block creation to allow plugins to propose their own pending transactions for block inclusion
-
Method Details
-
create
@Deprecated(forRemoval=true) default PluginTransactionSelector create(SelectorsStateManager selectorsStateManager) Deprecated, for removal: This API element is subject to removal in a future version.Create a plugin transaction selector, that can be used during block creation to apply custom filters to proposed pending transactions- Parameters:
selectorsStateManager- the selectors state manager- Returns:
- the transaction selector
-
create
default PluginTransactionSelector create(ProcessableBlockHeader pendingBlockHeader, SelectorsStateManager selectorsStateManager) Create a plugin transaction selector, that can be used during block creation to apply custom filters to proposed pending transactions- Parameters:
pendingBlockHeader- the header of the block being createdselectorsStateManager- the selectors state manager- Returns:
- the transaction selector
-
selectPendingTransactions
default void selectPendingTransactions(BlockTransactionSelectionService blockTransactionSelectionService, ProcessableBlockHeader pendingBlockHeader, List<? extends org.hyperledger.besu.datatypes.PendingTransaction> candidatePendingTransactions) Called during the block creation to allow plugins to propose their own pending transactions for block inclusion- Parameters:
blockTransactionSelectionService- the service used by the plugin to evaluate pending transactions and commit or rollback changespendingBlockHeader- the header of the block being createdcandidatePendingTransactions- the unmodifiable list of candidate pending transactions from the public pool, in the order they will be evaluated
-
create(ProcessableBlockHeader, SelectorsStateManager)instead