sbp

package
v2.5.2 Latest Latest
Warning

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

Go to latest
Published: Feb 20, 2024 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetConstructor

GetConstructor build and returns consensus.Constructor from New function.

func GetName

func GetName() string

GetName returns the name of the consensus.

func ValidateGenesis

func ValidateGenesis(genesis *types.Genesis) error

Types

type SimpleBlockFactory

type SimpleBlockFactory struct {
	*component.ComponentHub
	consensus.ChainDB
	// contains filtered or unexported fields
}

SimpleBlockFactory implements a simple block factory which generate block each cfg.Consensus.BlockInterval.

This can be used for testing purpose.

func New

New returns a SimpleBlockFactory.

func (*SimpleBlockFactory) BlockFactory

func (s *SimpleBlockFactory) BlockFactory() consensus.BlockFactory

BlockFactory returns s itself.

func (*SimpleBlockFactory) ClusterInfo

func (s *SimpleBlockFactory) ClusterInfo(bestBlockHash []byte) *types.GetClusterInfoResponse

func (*SimpleBlockFactory) ConfChange

func (*SimpleBlockFactory) ConfChangeInfo

func (s *SimpleBlockFactory) ConfChangeInfo(requestID uint64) (*types.ConfChangeProgress, error)

func (*SimpleBlockFactory) ConsensusInfo

func (s *SimpleBlockFactory) ConsensusInfo() *types.ConsensusInfo

func (*SimpleBlockFactory) GetType

func (*SimpleBlockFactory) HasWAL

func (s *SimpleBlockFactory) HasWAL() bool

func (*SimpleBlockFactory) Info

func (s *SimpleBlockFactory) Info() string

Info retuns an empty string since SBP has no valuable consensus-related information.

func (*SimpleBlockFactory) IsBlockValid

func (s *SimpleBlockFactory) IsBlockValid(*types.Block, *types.Block) error

IsBlockValid checks the consensus level validity of a block.

func (*SimpleBlockFactory) IsConnectedBlock

func (s *SimpleBlockFactory) IsConnectedBlock(block *types.Block) bool

func (*SimpleBlockFactory) IsForkEnable

func (s *SimpleBlockFactory) IsForkEnable() bool

func (*SimpleBlockFactory) IsTransactionValid

func (s *SimpleBlockFactory) IsTransactionValid(tx *types.Tx) bool

IsTransactionValid checks the onsensus level validity of a transaction

func (*SimpleBlockFactory) JobQueue

func (s *SimpleBlockFactory) JobQueue() chan<- interface{}

JobQueue returns the queue for block production triggering.

func (*SimpleBlockFactory) MakeConfChangeProposal

func (s *SimpleBlockFactory) MakeConfChangeProposal(req *types.MembershipChange) (*consensus.ConfChangePropose, error)

func (*SimpleBlockFactory) NeedNotify

func (s *SimpleBlockFactory) NeedNotify() bool

func (*SimpleBlockFactory) NeedReorganization

func (s *SimpleBlockFactory) NeedReorganization(rootNo types.BlockNo) bool

NeedReorganization has nothing to do.

func (*SimpleBlockFactory) QueueJob

func (s *SimpleBlockFactory) QueueJob(now time.Time, jq chan<- interface{})

QueueJob send a block triggering information to jq.

func (*SimpleBlockFactory) QuitChan

func (s *SimpleBlockFactory) QuitChan() chan interface{}

QuitChan returns the channel from which consensus-related goroutines check when shutdown is initiated.

func (*SimpleBlockFactory) RaftAccessor

func (*SimpleBlockFactory) Save

Save has nothging to do.

func (*SimpleBlockFactory) Start

func (s *SimpleBlockFactory) Start()

Start run a simple block factory service.

func (*SimpleBlockFactory) Ticker

func (s *SimpleBlockFactory) Ticker() *time.Ticker

Ticker returns a time.Ticker for the main consensus loop.

func (*SimpleBlockFactory) Update

func (s *SimpleBlockFactory) Update(block *types.Block)

Update has nothging to do.

func (*SimpleBlockFactory) VerifySign

func (s *SimpleBlockFactory) VerifySign(*types.Block) error

VerifySign checks the consensus level validity of a block.

func (*SimpleBlockFactory) VerifyTimestamp

func (s *SimpleBlockFactory) VerifyTimestamp(*types.Block) bool

VerifyTimestamp checks the validity of the block timestamp.

Jump to

Keyboard shortcuts

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