tuweni / org.apache.tuweni.devp2p

Package org.apache.tuweni.devp2p

Kotlin coroutine based implementation of the Ethereum ÐΞVp2p protocol.

These classes are included in the complete Tuweni distribution, or separately when using the gradle dependency org.apache.tuweni:tuweni-devp2p (tuweni-devp2p.jar).

Types

DevP2PPeerRoutingTable

class DevP2PPeerRoutingTable : PeerRoutingTable

A Peer routing table for the Ethereum ÐΞVp2p network.

DiscoveryService

interface DiscoveryService

An Ethereum ÐΞVp2p discovery service.

Endpoint

data class Endpoint

An Ethereum node endpoint.

EnodeUriComponents

data class EnodeUriComponents

The components of an enode URI.

EphemeralPeerRepository

class EphemeralPeerRepository : PeerRepository

An in-memory peer repository.

EthereumNodeRecord

class EthereumNodeRecord

Ethereum Node Record (ENR) as described in EIP-778.

Peer

interface Peer

An Ethereum P2P network peer.

PeerRepository

interface PeerRepository

A repository of peers in an Ethereum network.

PeerRoutingTable

interface PeerRoutingTable : Set<Peer>

A routing table for ÐΞVp2p peers.

Properties

DEVP2P_BUCKET_SIZE

const val DEVP2P_BUCKET_SIZE: Int

Functions

parseEnodeUri

fun parseEnodeUri(uri: URI): EnodeUriComponents

Parse an enode URI.