consensus

package
v1.0.5 Latest Latest
Warning

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

Go to latest
Published: Jan 16, 2020 License: GPL-3.0, GPL-3.0 Imports: 11 Imported by: 0

Documentation

Overview

Package consensus implements different PalletOne consensus engines.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AdapterJury

type AdapterJury struct {
	Processor *jury.Processor
}

func (*AdapterJury) AdapterFunRequest

func (a *AdapterJury) AdapterFunRequest(reqId common.Hash, contractId common.Address, msgType uint32,
	consultContent []byte, myAnswer []byte) ([]byte, error)

func (*AdapterJury) AdapterFunResult

func (a *AdapterJury) AdapterFunResult(reqId common.Hash, contractId common.Address, msgType uint32,
	consultContent []byte, timeOut time.Duration) ([]byte, error)

func (*AdapterJury) GetLocalJuryAddrs added in v1.0.3

func (a *AdapterJury) GetLocalJuryAddrs() []common.Address

type ContractInf

type ContractInf interface {
	SubscribeContractEvent(ch chan<- jury.ContractEvent) event.Subscription
	ProcessContractEvent(event *jury.ContractEvent) (broadcast bool, err error)
	ProcessElectionEvent(event *jury.ElectionEvent) (err error)
	ProcessAdapterEvent(event *jury.AdapterEvent) (result *jury.AdapterEvent, err error)

	//AdapterFunRequest(reqId common.Hash, contractId common.Address, timeOut time.Duration,
	// msgType uint32, msg string) (interface{}, error)
	AddContractLoop(rwM rwset.TxManager, txpool txspool.ITxPool, addr common.Address, ks *keystore.KeyStore) error
	CheckContractTxValid(rwM rwset.TxManager, tx *modules.Transaction, execute bool) bool
	IsSystemContractTx(tx *modules.Transaction) bool
}

type DPOSEngine

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

func New

func New(dag dag.IDag, txpool txspool.ITxPool) *DPOSEngine

func (*DPOSEngine) Engine

func (engine *DPOSEngine) Engine() int

func (*DPOSEngine) SendEvents

func (engine *DPOSEngine) SendEvents(content []byte)

func (*DPOSEngine) Stop

func (engine *DPOSEngine) Stop()

func (*DPOSEngine) SubscribeCeEvent

func (engine *DPOSEngine) SubscribeCeEvent(ch chan<- core.ConsensusEvent) event.Subscription

type Engine

type Engine interface {
}

Engine is an algorithm agnostic consensus engine.

Directories

Path Synopsis
* @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018
* @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018
vrf
* @author PalletOne core developers <dev@pallet.one> * @date 2018
* @author PalletOne core developers <dev@pallet.one> * @date 2018
vrf/algorithm
* @author PalletOne core developers <dev@pallet.one> * @date 2018
* @author PalletOne core developers <dev@pallet.one> * @date 2018
vrf/inf
* @author PalletOne core developers <dev@pallet.one> * @date 2018
* @author PalletOne core developers <dev@pallet.one> * @date 2018
vrf/vrfEc
* @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018
* @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018
vrf/vrfEs
* @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018
* @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018
vrf/vrfEss
* @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018
* @author PalletOne core developers <dev@pallet.one> * @date 2018 * @author PalletOne core developers <dev@pallet.one> * @date 2018

Jump to

Keyboard shortcuts

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