handler

package
v1.11.1-rc.2 Latest Latest
Warning

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

Go to latest
Published: Apr 17, 2024 License: BSD-3-Clause Imports: 29 Imported by: 0

Documentation

Overview

Package handler is a generated GoMock package.

Index

Constants

This section is empty.

Variables

View Source
var ErrNotConnectedEnoughStake = errors.New("not connected to enough stake")

Functions

This section is empty.

Types

type Engine added in v1.9.12

type Engine struct {
	StateSyncer  common.StateSyncer
	Bootstrapper common.BootstrapableEngine
	Consensus    common.Engine
}

Engine is a wrapper around a consensus engine's components.

func (*Engine) Get added in v1.9.12

func (e *Engine) Get(state snow.State) (common.Engine, bool)

Get returns the engine corresponding to the provided state, and whether its corresponding engine is initialized (not nil).

type EngineManager added in v1.9.12

type EngineManager struct {
	Avalanche *Engine
	Snowman   *Engine
}

EngineManager resolves the engine that should be used given the current execution context of the chain.

func (*EngineManager) Get added in v1.9.12

func (e *EngineManager) Get(engineType p2p.EngineType) *Engine

Get returns the engine corresponding to the provided type if possible. If an engine type is not specified, the initial engine type is returned.

type Handler

type Handler interface {
	common.Timer
	health.Checker

	Context() *snow.ConsensusContext
	// ShouldHandle returns true if the node with the given ID is allowed to send
	// messages to this chain. If the node is not allowed to send messages to
	// this chain, the message should be dropped.
	ShouldHandle(nodeID ids.NodeID) bool

	SetEngineManager(engineManager *EngineManager)
	GetEngineManager() *EngineManager

	SetOnStopped(onStopped func())
	Start(ctx context.Context, recoverPanic bool)
	Push(ctx context.Context, msg Message)
	Len() int

	Stop(ctx context.Context)
	StopWithError(ctx context.Context, err error)
	// AwaitStopped returns an error if the call would block and [ctx] is done.
	// Even if [ctx] is done when passed into this function, this function will
	// return a nil error if it will not block.
	AwaitStopped(ctx context.Context) (time.Duration, error)
}

func New

func New(
	ctx *snow.ConsensusContext,
	validators validators.Manager,
	msgFromVMChan <-chan common.Message,
	gossipFrequency time.Duration,
	threadPoolSize int,
	resourceTracker tracker.ResourceTracker,
	subnetConnector validators.SubnetConnector,
	subnet subnets.Subnet,
	peerTracker commontracker.Peers,
) (Handler, error)

Initialize this consensus handler [engine] must be initialized before initializing this handler

type Message added in v1.9.12

type Message struct {
	// The original message from the peer
	message.InboundMessage
	// The desired engine type to execute this message. If not specified,
	// the current executing engine type is used.
	EngineType p2p.EngineType
}

Message defines individual messages that have been parsed from the network and are now pending execution from the chain.

type MessageQueue

type MessageQueue interface {
	// Add a message.
	//
	// If called after [Shutdown], the message will immediately be marked as
	// having been handled.
	Push(context.Context, Message)

	// Remove and return a message and its context.
	//
	// If there are no available messages, this function will block until a
	// message becomes available or the queue is [Shutdown].
	Pop() (context.Context, Message, bool)

	// Returns the number of messages currently on the queue
	Len() int

	// Shutdown and empty the queue.
	Shutdown()
}

func NewMessageQueue

func NewMessageQueue(
	ctx *snow.ConsensusContext,
	vdrs validators.Manager,
	cpuTracker tracker.Tracker,
	metricsNamespace string,
	ops []message.Op,
) (MessageQueue, error)

type MockHandler added in v1.9.4

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

MockHandler is a mock of Handler interface.

func NewMockHandler added in v1.9.4

func NewMockHandler(ctrl *gomock.Controller) *MockHandler

NewMockHandler creates a new mock instance.

func (*MockHandler) AwaitStopped added in v1.10.2

func (m *MockHandler) AwaitStopped(arg0 context.Context) (time.Duration, error)

AwaitStopped mocks base method.

func (*MockHandler) Context added in v1.9.4

func (m *MockHandler) Context() *snow.ConsensusContext

Context mocks base method.

func (*MockHandler) EXPECT added in v1.9.4

func (m *MockHandler) EXPECT() *MockHandlerMockRecorder

EXPECT returns an object that allows the caller to indicate expected use.

func (*MockHandler) GetEngineManager added in v1.10.0

func (m *MockHandler) GetEngineManager() *EngineManager

GetEngineManager mocks base method.

func (*MockHandler) HealthCheck added in v1.9.4

func (m *MockHandler) HealthCheck(arg0 context.Context) (any, error)

HealthCheck mocks base method.

func (*MockHandler) Len added in v1.9.4

func (m *MockHandler) Len() int

Len mocks base method.

func (*MockHandler) Push added in v1.9.4

func (m *MockHandler) Push(arg0 context.Context, arg1 Message)

Push mocks base method.

func (*MockHandler) RegisterTimeout added in v1.9.4

func (m *MockHandler) RegisterTimeout(arg0 time.Duration)

RegisterTimeout mocks base method.

func (*MockHandler) SetEngineManager added in v1.9.12

func (m *MockHandler) SetEngineManager(arg0 *EngineManager)

SetEngineManager mocks base method.

func (*MockHandler) SetOnStopped added in v1.9.4

func (m *MockHandler) SetOnStopped(arg0 func())

SetOnStopped mocks base method.

func (*MockHandler) ShouldHandle added in v1.9.9

func (m *MockHandler) ShouldHandle(arg0 ids.NodeID) bool

ShouldHandle mocks base method.

func (*MockHandler) Start added in v1.9.4

func (m *MockHandler) Start(arg0 context.Context, arg1 bool)

Start mocks base method.

func (*MockHandler) Stop added in v1.9.4

func (m *MockHandler) Stop(arg0 context.Context)

Stop mocks base method.

func (*MockHandler) StopWithError added in v1.9.4

func (m *MockHandler) StopWithError(arg0 context.Context, arg1 error)

StopWithError mocks base method.

type MockHandlerMockRecorder added in v1.9.4

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

MockHandlerMockRecorder is the mock recorder for MockHandler.

func (*MockHandlerMockRecorder) AwaitStopped added in v1.10.2

func (mr *MockHandlerMockRecorder) AwaitStopped(arg0 any) *gomock.Call

AwaitStopped indicates an expected call of AwaitStopped.

func (*MockHandlerMockRecorder) Context added in v1.9.4

func (mr *MockHandlerMockRecorder) Context() *gomock.Call

Context indicates an expected call of Context.

func (*MockHandlerMockRecorder) GetEngineManager added in v1.10.0

func (mr *MockHandlerMockRecorder) GetEngineManager() *gomock.Call

GetEngineManager indicates an expected call of GetEngineManager.

func (*MockHandlerMockRecorder) HealthCheck added in v1.9.4

func (mr *MockHandlerMockRecorder) HealthCheck(arg0 any) *gomock.Call

HealthCheck indicates an expected call of HealthCheck.

func (*MockHandlerMockRecorder) Len added in v1.9.4

func (mr *MockHandlerMockRecorder) Len() *gomock.Call

Len indicates an expected call of Len.

func (*MockHandlerMockRecorder) Push added in v1.9.4

func (mr *MockHandlerMockRecorder) Push(arg0, arg1 any) *gomock.Call

Push indicates an expected call of Push.

func (*MockHandlerMockRecorder) RegisterTimeout added in v1.9.4

func (mr *MockHandlerMockRecorder) RegisterTimeout(arg0 any) *gomock.Call

RegisterTimeout indicates an expected call of RegisterTimeout.

func (*MockHandlerMockRecorder) SetEngineManager added in v1.9.12

func (mr *MockHandlerMockRecorder) SetEngineManager(arg0 any) *gomock.Call

SetEngineManager indicates an expected call of SetEngineManager.

func (*MockHandlerMockRecorder) SetOnStopped added in v1.9.4

func (mr *MockHandlerMockRecorder) SetOnStopped(arg0 any) *gomock.Call

SetOnStopped indicates an expected call of SetOnStopped.

func (*MockHandlerMockRecorder) ShouldHandle added in v1.9.9

func (mr *MockHandlerMockRecorder) ShouldHandle(arg0 any) *gomock.Call

ShouldHandle indicates an expected call of ShouldHandle.

func (*MockHandlerMockRecorder) Start added in v1.9.4

func (mr *MockHandlerMockRecorder) Start(arg0, arg1 any) *gomock.Call

Start indicates an expected call of Start.

func (*MockHandlerMockRecorder) Stop added in v1.9.4

func (mr *MockHandlerMockRecorder) Stop(arg0 any) *gomock.Call

Stop indicates an expected call of Stop.

func (*MockHandlerMockRecorder) StopWithError added in v1.9.4

func (mr *MockHandlerMockRecorder) StopWithError(arg0, arg1 any) *gomock.Call

StopWithError indicates an expected call of StopWithError.

Jump to

Keyboard shortcuts

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