All Classes and Interfaces
Class
Description
This class represents an abstract plugin transaction selector which provides methods to manage
the selector state.
Provides context information about a block that has been added to the blockchain.
Defines the different types of block addition events that can occur in the blockchain.
Represents the reason a block is marked as "bad"
An enum representing the reason why a block is marked bad
Generally useful configuration provided by Besu.
This service allows plugins to attach to various events during the normal operation of Besu.
The interface defining bad block listeners
The listener interface for receiving new block added events.
The listener interface for receiving new block propagated events.
The listener interface for receiving new block reorg events.
The interface Initial sync completion listener.
The listener interface for receiving log events.
The listener interface for receiving sync status events.
The listener interface for receiving new transaction added events.
The listener interface for receiving transaction dropped events.
The interface TTD reached listener.
Base interface for Besu plugins.
All services that can be resolved via
ServiceManager.getService(Class) must implement
BesuServiceAllows for the BFT specific aspects of the block chain to be queried.
An extended operation tracer that can trace the start and end of a block.
The parts of a Block not in the
BlockHeader, information corresponding to the comprised
transactions in BlockBody.getTransactions(), and a set of other block headers in BlockBody.getOmmers(), as defined in the Ethereum Yellow Paper.A service that plugins can use to query blocks by number
The minimum set of data for a BlockContext.
The minimum set of data for a BlockHeader, as defined in the Ethereum Yellow Paper.
The Block import tracer provider.
BlockOverrides represents the block overrides for a block.
Builder for BlockOverrides.
This class is a service that simulates the processing of a block
Represents the result of tracing a block, containing information about the transaction traces.
A builder class for constructing a BlockTraceResult.
A service that can be used by plugins to include their pending transactions during block
creation.
A P2P protocol capability for plugin use.
A counter is a metric to track counts of events or running totals etc.
Data storage configuration
Supported database storage format
The interface Enode url.
Record of summary data the is kept outside the metric system.
Represent a single quantile and its value
A histogram samples observations (usually things like request durations or response sizes) and
counts them in configurable buckets.
Responsible for storing values against keys.
Factory for creating key-value storage instances.
A transaction that can atomically commit a sequence of operations to a key-value store.
A metric with labels associated.
The interface Labelled gauge.
The interface Labelled supplied summary.
A Log entry from a transaction execution.
A Log entry from a transaction execution.
A P2P network message received from another peer for plugin use.
A MetricCategory is used to group related metrics.
Allow registration of
MetricCategory instances so they are recognised by the metrics
system and can be enabled.An interface for creating various Metrics components.
The MiningService interface provides methods to start and stop the mining process.
Represents a mutable view of the Ethereum world state, allowing queries and modifications to
account balances, nonces, code, and storage.
Allows you to register a provider that will decide if a peer connection is permitted.
Allows you to register a provider that will decide if a devp2p message is permitted.
A timer metric that records duration of operations for metrics purposes.
An interface for stopping the timer and returning elapsed time.
Service to enable and disable P2P service.
Consumer of network connection events.
Consumer of network disconnection events.
Consumer of network message events.
A P2P peer for plugin use.
A P2P connection to another node for plugin use.
Exception thrown when attempting to send to a disconnected peer.
Peer information for plugin use.
This service allows plugins to decide who you should connect to and what you should send them.
A service that plugins can use to add CLI options and commands to the BesuCommand.
This class represents the result of simulating the processing of a block.
Base exception class for problems encountered in the RpcEndpointService.
The interface Plugin rpc request.
The interface Plugin rpc response.
Interface for the transaction validator plugin for txpool usage
Interface for a factory that creates transaction validators for txpool usage
Interface for the transaction selector
Interface for a factory that creates transaction selector and propose pending transaction for
block inclusion
The interface Plugin versions provider.
Provides methods to query the status of a Proof of Authority (PoA) network.
The minimum set of data for a BlockHeader, as defined in the Ethereum Yellow Paper.
The minimum set of data for a PropagatedBlockContext.
Represents a PublicKey function which provides ECPoint
A request is an operation sent to the Beacon Node
The enum Restriction.
RLP Serialiaztion/Deserialization service.
This service allows you to add functions exposed via RPC endpoints.
The
RpcMethodError interface defines the structure for RPC error handling within the
context of plugins.Represent a Json RPC response
Various types of responses that the RPC component may produce.
Provides a generic interface for classes which wrap/hide a cryptographic private key.
SecurityModuleException can be thrown by operations of SecurityModule
This service allows plugins to register a Security Module, which is abstraction of cryptographic
operations that defer to specific provider (e.g.
Service provided by Besu to facilitate persistent data storage.
record type used to wrap responses from getNearestTo, includes the matched key and the value.
A transaction that can atomically commit a sequence of operations to a segmented key-value store.
A namespace identifier for the storage instance segment, a grouping of data that should be kept
isolated from the data of other segments.
Manages the state of transaction selectors (including the plugin transaction selector
PluginTransactionSelector) during the block creation process.A function that create a duplicate of the input object.
Adds and accesses BesuServices for plugins to provide or use.
A basic implementation of ServiceManager, suitable for tests.
An interface for
Bytes that also represents a signatureRepresents R and S component of a Signature obtained through sign function
The interface Snappable key value storage.
The interface Snapped key value storage.
Strategy for computing the state root hash during block persistence.
Base exception class for problems encountered in the domain for storage.
This service allows plugins to register as an available storage engine.
Synchronization service wraps the sync state and sync event lifecycle.
The interface Sync status.
The Trace service interface
This interface defines the context for evaluating a transaction.
Allows you to register a provider that will decide if a transaction is permitted.
Service to enable and disable the transaction pool.
Transaction validator for addition of transactions to the transaction pool
This interface represents the result of processing a transaction.
A transaction receipt, containing information pertaining to a transaction execution.
Represent the result of the selection process of a candidate transaction, during the block
creation phase.
Represent the status of a transaction selection result.
Transaction selection service interface
Interface for the transaction selector
TransactionSimulationResult
Transaction simulation service interface
Enumeration of simulation parameters that control validation behavior during transaction
simulation.
Represents the result of tracing a transaction, including its status and optional error message.
Enumeration representing the status of the transaction trace.
Allows you to implement a custom transaction validator
Service to add additional transaction validation rules
An interface for interacting with TrieLog objects, which represent changes to accounts, code, and
storage in a blockchain state trie.
An interface representing a tuple of prior and updated values for a specific type T in a log.
Accumulator interface for providing trie updates for creating TrieLogs.
A TrieLog event.
Observer interface for TrieLog events.
The type of the event.
Interface for serializing and deserializing
TrieLog objects.Trielog provider interface for a given block hash.
Block and TrieLog layer composition, used for returning a range of TrieLog layers.
A service interface for registering observers for trie log events.
The interface Unsigned private marker transaction.
This annotation is an indicator that the interface or method may evolve in a way that it not
backwards compatible.
A withdrawal is a system-level operation to support validator withdrawals that are pushed from
the beacon chain to EVM.
Storage interface for Ethereum world state data backed by a key-value store.
Callback interface for observing trie node insertions into world state storage.
A write transaction for batching mutations to world state storage.
Stores and retrieves preimage mappings for the Ethereum world-state trie.
A write transaction for batching preimage insertions into world state preimage storage.
A service that plugin can use to access world state