configtx

package
v0.0.0-...-adac428 Latest Latest
Warning

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

Go to latest
Published: Dec 12, 2021 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func UnmarshalConfig

func UnmarshalConfig(data []byte) (*cb.Config, error)

UnmarshalConfig attempts to unmarshal bytes to a *cb.Config

func UnmarshalConfigEnvelope

func UnmarshalConfigEnvelope(data []byte) (*cb.ConfigEnvelope, error)

UnmarshalConfigEnvelope attempts to unmarshal bytes to a *cb.ConfigEnvelope

func UnmarshalConfigEnvelopeOrPanic

func UnmarshalConfigEnvelopeOrPanic(data []byte) *cb.ConfigEnvelope

UnmarshalConfigEnvelopeOrPanic attempts to unmarshal bytes to a *cb.ConfigEnvelope or panics on error

func UnmarshalConfigOrPanic

func UnmarshalConfigOrPanic(data []byte) *cb.Config

UnmarshalConfigOrPanic attempts to unmarshal bytes to a *cb.Config or panics on error

func UnmarshalConfigUpdate

func UnmarshalConfigUpdate(data []byte) (*cb.ConfigUpdate, error)

UnmarshalConfigUpdate attempts to unmarshal bytes to a *cb.ConfigUpdate

func UnmarshalConfigUpdateEnvelope

func UnmarshalConfigUpdateEnvelope(data []byte) (*cb.ConfigUpdateEnvelope, error)

UnmarshalConfigUpdateEnvelope attempts to unmarshal bytes to a *cb.ConfigUpdate

func UnmarshalConfigUpdateEnvelopeOrPanic

func UnmarshalConfigUpdateEnvelopeOrPanic(data []byte) *cb.ConfigUpdateEnvelope

UnmarshalConfigUpdateEnvelopeOrPanic attempts to unmarshal bytes to a *cb.ConfigUpdateEnvelope or panics on error

func UnmarshalConfigUpdateFromPayload

func UnmarshalConfigUpdateFromPayload(payload *cb.Payload) (*cb.ConfigUpdate, error)

UnmarshalConfigUpdateFromPayload unmarshals configuration update from given payload

func UnmarshalConfigUpdateOrPanic

func UnmarshalConfigUpdateOrPanic(data []byte) *cb.ConfigUpdate

UnmarshalConfigUpdateOrPanic attempts to unmarshal bytes to a *cb.ConfigUpdate or panics on error

Types

type Validator

type Validator interface {
	// Validate attempts to apply a configtx to become the new config
	Validate(configEnv *cb.ConfigEnvelope) error

	// Validate attempts to validate a new configtx against the current config state
	ProposeConfigUpdate(configtx *cb.Envelope) (*cb.ConfigEnvelope, error)

	// ChainID retrieves the chain ID associated with this manager
	ChainID() string

	// ConfigProto returns the current config as a proto
	ConfigProto() *cb.Config

	// Sequence returns the current sequence number of the config
	Sequence() uint64
}

Validator provides a mechanism to propose config updates, see the config update results and validate the results of a config update.

type ValidatorImpl

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

ValidatorImpl implements the Validator interface

func NewValidatorImpl

func NewValidatorImpl(channelID string, config *cb.Config, namespace string, pm policies.Manager) (*ValidatorImpl, error)

NewValidatorImpl constructs a new implementation of the Validator interface.

func (*ValidatorImpl) ChainID

func (vi *ValidatorImpl) ChainID() string

ChainID retrieves the chain ID associated with this manager

func (*ValidatorImpl) ConfigProto

func (vi *ValidatorImpl) ConfigProto() *cb.Config

ConfigProto returns the config proto which initialized this Validator

func (*ValidatorImpl) ProposeConfigUpdate

func (vi *ValidatorImpl) ProposeConfigUpdate(configtx *cb.Envelope) (*cb.ConfigEnvelope, error)

ProposeConfigUpdate takes in an Envelope of type CONFIG_UPDATE and produces a ConfigEnvelope to be used as the Envelope Payload Data of a CONFIG message

func (*ValidatorImpl) Sequence

func (vi *ValidatorImpl) Sequence() uint64

Sequence returns the sequence number of the config

func (*ValidatorImpl) Validate

func (vi *ValidatorImpl) Validate(configEnv *cb.ConfigEnvelope) error

Validate simulates applying a ConfigEnvelope to become the new config

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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