class LESSubprotocol : SubProtocol
(source)
The LES subprotocol entry point class, to be used in conjunction with RLPxService
This subprotocol is implemented after the specification presented on the * Ethereum wiki.
coroutineContext
- the Kotlin coroutine context
blockchainInfo
- blockchain information to send to peers
serveHeaders
- whether to serve headers
serveChainSince
- block number at which to start serving blocks
serveStateSince
- block number at which to start serving state
flowControlBufferLimit
- limit of bytes to send
flowControlMaximumRequestCostTable
- cost table for control flow
flowControlMinimumRateOfRecharge
- rate of recharge for cost
repo
- the blockchain repository this subprotocol will serve data from
listener
- a listener for new connections when a status message is provided
See Also
org.apache.tuweni.rlpx.RLPxService
<init> |
The LES subprotocol entry point class, to be used in conjunction with RLPxService LESSubprotocol(coroutineContext: CoroutineContext = Dispatchers.Default, blockchainInfo: BlockchainInformation, serveHeaders: Boolean, serveChainSince: UInt256, serveStateSince: UInt256, flowControlBufferLimit: UInt256, flowControlMaximumRequestCostTable: UInt256, flowControlMinimumRateOfRecharge: UInt256, repo: BlockchainRepository, pendingTransactionsPool: TransactionPool, connectionSelectionStrategy: ConnectionSelectionStrategy, listener: (WireConnection, Status) -> Unit = { _, _ -> }) |
createClient |
fun createClient(service: RLPxService, subProtocolIdentifier: SubProtocolIdentifier): SubProtocolClient |
createHandler |
fun createHandler(service: RLPxService, client: SubProtocolClient): SubProtocolHandler |
id |
fun id(): SubProtocolIdentifier |
supports |
fun supports(subProtocolIdentifier: SubProtocolIdentifier): Boolean |