Documentation
      ¶
    
    
  
    
  
    Overview ¶
Package validators is a generated GoMock package.
Package validators is a generated GoMock package.
Index ¶
- Variables
 - type Connector
 - type GetValidatorOutput
 - type Manager
 - type ManagerCallbackListener
 - type MockState
 - func (m *MockState) EXPECT() *MockStateMockRecorder
 - func (m *MockState) GetCurrentHeight(arg0 context.Context) (uint64, error)
 - func (m *MockState) GetMinimumHeight(arg0 context.Context) (uint64, error)
 - func (m *MockState) GetSubnetID(arg0 context.Context, arg1 ids.ID) (ids.ID, error)
 - func (m *MockState) GetValidatorSet(arg0 context.Context, arg1 uint64, arg2 ids.ID) (map[ids.NodeID]*GetValidatorOutput, error)
 
- type MockStateMockRecorder
 - func (mr *MockStateMockRecorder) GetCurrentHeight(arg0 any) *gomock.Call
 - func (mr *MockStateMockRecorder) GetMinimumHeight(arg0 any) *gomock.Call
 - func (mr *MockStateMockRecorder) GetSubnetID(arg0, arg1 any) *gomock.Call
 - func (mr *MockStateMockRecorder) GetValidatorSet(arg0, arg1, arg2 any) *gomock.Call
 
- type MockSubnetConnector
 - type MockSubnetConnectorMockRecorder
 - type SetCallbackListener
 - type State
 - type SubnetConnector
 - type TestState
 - func (vm *TestState) GetCurrentHeight(ctx context.Context) (uint64, error)
 - func (vm *TestState) GetMinimumHeight(ctx context.Context) (uint64, error)
 - func (vm *TestState) GetSubnetID(ctx context.Context, chainID ids.ID) (ids.ID, error)
 - func (vm *TestState) GetValidatorSet(ctx context.Context, height uint64, subnetID ids.ID) (map[ids.NodeID]*GetValidatorOutput, error)
 
- type Validator
 
Constants ¶
This section is empty.
Variables ¶
var ( ErrZeroWeight = errors.New("weight must be non-zero") ErrMissingValidators = errors.New("missing validators") )
Functions ¶
This section is empty.
Types ¶
type Connector ¶ added in v0.8.0
type Connector interface {
	Connected(
		ctx context.Context,
		nodeID ids.NodeID,
		nodeVersion *version.Application,
	) error
	Disconnected(ctx context.Context, nodeID ids.NodeID) error
}
    Connector represents a handler that is called when a connection is marked as connected or disconnected
type GetValidatorOutput ¶ added in v1.9.4
GetValidatorOutput is a struct that contains the publicly relevant values of a validator of the Avalanche Network for the output of GetValidator.
type Manager ¶
type Manager interface {
	fmt.Stringer
	// Add a new staker to the subnet.
	// Returns an error if:
	// - [weight] is 0
	// - [nodeID] is already in the validator set
	// If an error is returned, the set will be unmodified.
	AddStaker(subnetID ids.ID, nodeID ids.NodeID, pk *bls.PublicKey, txID ids.ID, weight uint64) error
	// AddWeight to an existing staker to the subnet.
	// Returns an error if:
	// - [weight] is 0
	// - [nodeID] is not already in the validator set
	// If an error is returned, the set will be unmodified.
	// AddWeight can result in a total weight that overflows uint64.
	// In this case no error will be returned for this call.
	// However, the next TotalWeight call will return an error.
	AddWeight(subnetID ids.ID, nodeID ids.NodeID, weight uint64) error
	// GetWeight retrieves the validator weight from the subnet.
	GetWeight(subnetID ids.ID, nodeID ids.NodeID) uint64
	// GetValidator returns the validator tied to the specified ID in subnet.
	// If the validator doesn't exist, returns false.
	GetValidator(subnetID ids.ID, nodeID ids.NodeID) (*Validator, bool)
	// GetValidatoIDs returns the validator IDs in the subnet.
	GetValidatorIDs(subnetID ids.ID) []ids.NodeID
	// SubsetWeight returns the sum of the weights of the validators in the subnet.
	// Returns err if subset weight overflows uint64.
	SubsetWeight(subnetID ids.ID, validatorIDs set.Set[ids.NodeID]) (uint64, error)
	// RemoveWeight from a staker in the subnet. If the staker's weight becomes 0, the staker
	// will be removed from the subnet set.
	// Returns an error if:
	// - [weight] is 0
	// - [nodeID] is not already in the subnet set
	// - the weight of the validator would become negative
	// If an error is returned, the set will be unmodified.
	RemoveWeight(subnetID ids.ID, nodeID ids.NodeID, weight uint64) error
	// Count returns the number of validators currently in the subnet.
	Count(subnetID ids.ID) int
	// TotalWeight returns the cumulative weight of all validators in the subnet.
	// Returns err if total weight overflows uint64.
	TotalWeight(subnetID ids.ID) (uint64, error)
	// Sample returns a collection of validatorIDs in the subnet, potentially with duplicates.
	// If sampling the requested size isn't possible, an error will be returned.
	Sample(subnetID ids.ID, size int) ([]ids.NodeID, error)
	// Map of the validators in this subnet
	GetMap(subnetID ids.ID) map[ids.NodeID]*GetValidatorOutput
	// When a validator is added, removed, or its weight changes, the listener
	// will be notified of the event.
	RegisterCallbackListener(listener ManagerCallbackListener)
	// When a validator is added, removed, or its weight changes on [subnetID],
	// the listener will be notified of the event.
	RegisterSetCallbackListener(subnetID ids.ID, listener SetCallbackListener)
}
    Manager holds the validator set of each subnet
type ManagerCallbackListener ¶ added in v1.11.5
type ManagerCallbackListener interface {
	OnValidatorAdded(subnetID ids.ID, nodeID ids.NodeID, pk *bls.PublicKey, txID ids.ID, weight uint64)
	OnValidatorRemoved(subnetID ids.ID, nodeID ids.NodeID, weight uint64)
	OnValidatorWeightChanged(subnetID ids.ID, nodeID ids.NodeID, oldWeight, newWeight uint64)
}
    type MockState ¶ added in v1.9.2
type MockState struct {
	// contains filtered or unexported fields
}
    MockState is a mock of State interface.
func NewMockState ¶ added in v1.9.2
func NewMockState(ctrl *gomock.Controller) *MockState
NewMockState creates a new mock instance.
func (*MockState) EXPECT ¶ added in v1.9.2
func (m *MockState) EXPECT() *MockStateMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockState) GetCurrentHeight ¶ added in v1.9.2
GetCurrentHeight mocks base method.
func (*MockState) GetMinimumHeight ¶ added in v1.9.2
GetMinimumHeight mocks base method.
func (*MockState) GetSubnetID ¶ added in v1.9.5
GetSubnetID mocks base method.
type MockStateMockRecorder ¶ added in v1.9.2
type MockStateMockRecorder struct {
	// contains filtered or unexported fields
}
    MockStateMockRecorder is the mock recorder for MockState.
func (*MockStateMockRecorder) GetCurrentHeight ¶ added in v1.9.2
func (mr *MockStateMockRecorder) GetCurrentHeight(arg0 any) *gomock.Call
GetCurrentHeight indicates an expected call of GetCurrentHeight.
func (*MockStateMockRecorder) GetMinimumHeight ¶ added in v1.9.2
func (mr *MockStateMockRecorder) GetMinimumHeight(arg0 any) *gomock.Call
GetMinimumHeight indicates an expected call of GetMinimumHeight.
func (*MockStateMockRecorder) GetSubnetID ¶ added in v1.9.5
func (mr *MockStateMockRecorder) GetSubnetID(arg0, arg1 any) *gomock.Call
GetSubnetID indicates an expected call of GetSubnetID.
func (*MockStateMockRecorder) GetValidatorSet ¶ added in v1.9.2
func (mr *MockStateMockRecorder) GetValidatorSet(arg0, arg1, arg2 any) *gomock.Call
GetValidatorSet indicates an expected call of GetValidatorSet.
type MockSubnetConnector ¶ added in v1.9.4
type MockSubnetConnector struct {
	// contains filtered or unexported fields
}
    MockSubnetConnector is a mock of SubnetConnector interface.
func NewMockSubnetConnector ¶ added in v1.9.4
func NewMockSubnetConnector(ctrl *gomock.Controller) *MockSubnetConnector
NewMockSubnetConnector creates a new mock instance.
func (*MockSubnetConnector) ConnectedSubnet ¶ added in v1.9.4
func (m *MockSubnetConnector) ConnectedSubnet(arg0 context.Context, arg1 ids.NodeID, arg2 ids.ID) error
ConnectedSubnet mocks base method.
func (*MockSubnetConnector) EXPECT ¶ added in v1.9.4
func (m *MockSubnetConnector) EXPECT() *MockSubnetConnectorMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
type MockSubnetConnectorMockRecorder ¶ added in v1.9.4
type MockSubnetConnectorMockRecorder struct {
	// contains filtered or unexported fields
}
    MockSubnetConnectorMockRecorder is the mock recorder for MockSubnetConnector.
func (*MockSubnetConnectorMockRecorder) ConnectedSubnet ¶ added in v1.9.4
func (mr *MockSubnetConnectorMockRecorder) ConnectedSubnet(arg0, arg1, arg2 any) *gomock.Call
ConnectedSubnet indicates an expected call of ConnectedSubnet.
type SetCallbackListener ¶ added in v1.7.11
type State ¶ added in v1.6.0
type State interface {
	// GetMinimumHeight returns the minimum height of the block still in the
	// proposal window.
	GetMinimumHeight(context.Context) (uint64, error)
	// GetCurrentHeight returns the current height of the P-chain.
	GetCurrentHeight(context.Context) (uint64, error)
	// GetSubnetID returns the subnetID of the provided chain.
	GetSubnetID(ctx context.Context, chainID ids.ID) (ids.ID, error)
	// GetValidatorSet returns the validators of the provided subnet at the
	// requested P-chain height.
	// The returned map should not be modified.
	GetValidatorSet(
		ctx context.Context,
		height uint64,
		subnetID ids.ID,
	) (map[ids.NodeID]*GetValidatorOutput, error)
}
    State allows the lookup of validator sets on specified subnets at the requested P-chain height.
func NewNoValidatorsState ¶ added in v1.7.14
type SubnetConnector ¶ added in v1.9.4
type SubnetConnector interface {
	ConnectedSubnet(ctx context.Context, nodeID ids.NodeID, subnetID ids.ID) error
}
    SubnetConnector represents a handler that is called when a connection is marked as connected to a subnet
var UnhandledSubnetConnector SubnetConnector = &unhandledSubnetConnector{}
    type TestState ¶ added in v1.6.0
type TestState struct {
	T testing.TB
	CantGetMinimumHeight,
	CantGetCurrentHeight,
	CantGetSubnetID,
	CantGetValidatorSet bool
	GetMinimumHeightF func(ctx context.Context) (uint64, error)
	GetCurrentHeightF func(ctx context.Context) (uint64, error)
	GetSubnetIDF      func(ctx context.Context, chainID ids.ID) (ids.ID, error)
	GetValidatorSetF  func(ctx context.Context, height uint64, subnetID ids.ID) (map[ids.NodeID]*GetValidatorOutput, error)
}