consensus

package
v0.0.0-...-05bc493 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 20, 2023 License: MIT Imports: 23 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ReadyNetwork = Mode(iota)
	Joiner
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Controller

type Controller interface {
	AddJoinCandidate(candidate profiles.CandidateProfile) error

	Abort()

	ChangePower(level capacity.Level)
	PrepareLeave() <-chan struct{}
	Leave(leaveReason uint32) <-chan struct{}

	RegisterFinishedNotifier(fn network.OnConsensusFinished)

	Chronicles() api.ConsensusChronicles
}

type Dep

type Dep struct {
	KeyProcessor          cryptography.KeyProcessor
	CertificateManager    nodeinfo.CertificateManager
	KeyStore              cryptography.KeyStore
	TransportCryptography transport2.CryptographyAssistant

	NodeKeeper        beat.NodeKeeper
	DatagramTransport transport.DatagramTransport

	StateGetter         adapters.NodeStater
	PulseChanger        adapters.BeatChanger
	StateUpdater        adapters.StateUpdater
	EphemeralController adapters.EphemeralController

	LocalNodeProfile profiles.StaticProfile
}

type Installer

type Installer struct {
	// contains filtered or unexported fields
}

func New

func New(ctx context.Context, dep Dep) Installer

func (Installer) ControllerFor

func (c Installer) ControllerFor(mode Mode, setters ...packetProcessorSetter) Controller

type Mode

type Mode uint

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL