handler

package
v0.5.11 Latest Latest
Warning

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

Go to latest
Published: Sep 22, 2020 License: BSD-3-Clause Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// SelfAddress node address
	SelfAddress string
	// NodesCount nodes count
	NodesCount int
)
View Source
var GetNodes func() map[string]string = func() map[string]string { return nil }

GetNodes get p2p nodes

Functions

func GetBlockForMining

func GetBlockForMining(chain uint64) *core.StBlock

GetBlockForMining get block info for mine

func GetHashPowerOfBlocks

func GetHashPowerOfBlocks(chain uint64) uint64

GetHashPowerOfBlocks get average hashpower of blocks

func GetMyHashPower

func GetMyHashPower(chain uint64) uint64

GetMyHashPower get my average hashpower

func GetSyncBlock

func GetSyncBlock(chain, index uint64) []byte

GetSyncBlock get sync block by index

func GetTransList

func GetTransList(chain uint64, key []byte) []core.Hash

GetTransList get trans list of block

func Init

func Init()

Init init

func SaveBlockReliability

func SaveBlockReliability(chain uint64, key []byte, rb TReliability)

SaveBlockReliability save block reliability

func SaveBlockRunStat

func SaveBlockRunStat(chain uint64, key []byte, rb BlockRunStat)

SaveBlockRunStat save block stat

func SaveIDBlocks

func SaveIDBlocks(chain, index uint64, ib IDBlocks)

SaveIDBlocks save blocks of the index

func SaveTransList

func SaveTransList(chain uint64, key []byte, value []core.Hash)

SaveTransList save trans list of block

func SetSyncBlock

func SetSyncBlock(chain, index uint64, key []byte)

SetSyncBlock set sync block, index:key

Types

type BlockRunStat

type BlockRunStat struct {
	RunTimes        int    `json:"run_times,omitempty"`
	RunSuccessCount int    `json:"run_success_count,omitempty"`
	RollbackCount   int    `json:"rollback_count,omitempty"`
	RollbackTime    int64  `json:"rollback_time,omitempty"`
	SelectedCount   uint64 `json:"selected_count,omitempty"`
}

BlockRunStat stat of block

func ReadBlockRunStat

func ReadBlockRunStat(chain uint64, key []byte) (cl BlockRunStat)

ReadBlockRunStat get stat of block

type IDBlocks

type IDBlocks struct {
	Items []ItemBlock
}

IDBlocks the blocks of same index

func ReadIDBlocks

func ReadIDBlocks(chain, index uint64) (ib IDBlocks)

ReadIDBlocks get blocks of the index

type InternalPlugin

type InternalPlugin struct {
	libp2p.Plugin
	// contains filtered or unexported fields
}

InternalPlugin process p2p message

func (*InternalPlugin) Cleanup

func (p *InternalPlugin) Cleanup(n libp2p.Network)

Cleanup plugin uninstall

func (*InternalPlugin) PeerConnect

func (p *InternalPlugin) PeerConnect(s libp2p.Session)

PeerConnect peer connect

func (*InternalPlugin) PeerDisconnect

func (p *InternalPlugin) PeerDisconnect(s libp2p.Session)

PeerDisconnect peer disconnect

func (*InternalPlugin) Startup

func (p *InternalPlugin) Startup(n libp2p.Network)

Startup is called only once when the plugin is loaded

type ItemBlock

type ItemBlock struct {
	Key       core.Hash
	HashPower uint64
}

ItemBlock Item of IDBlocks

type MsgPlugin

type MsgPlugin struct {
	*libp2p.Plugin
	// contains filtered or unexported fields
}

MsgPlugin process p2p message

func (*MsgPlugin) Cleanup

func (p *MsgPlugin) Cleanup(n libp2p.Network)

Cleanup is called only once when the plugin is unload

func (*MsgPlugin) Receive

func (p *MsgPlugin) Receive(ctx libp2p.Event) error

Receive receive message

func (*MsgPlugin) Startup

func (p *MsgPlugin) Startup(n libp2p.Network)

Startup is called only once when the plugin is loaded

type NATTPlugin

type NATTPlugin struct {
	libp2p.Plugin

	Nodes map[string]libp2p.Session
	// contains filtered or unexported fields
}

NATTPlugin nat traversal

func (*NATTPlugin) GetNodes

func (p *NATTPlugin) GetNodes() map[string]string

GetNodes get nodes

func (*NATTPlugin) PeerConnect

func (p *NATTPlugin) PeerConnect(s libp2p.Session)

PeerConnect peer connect

func (*NATTPlugin) PeerDisconnect

func (p *NATTPlugin) PeerDisconnect(s libp2p.Session)

PeerDisconnect peer disconnect

func (*NATTPlugin) Receive

func (p *NATTPlugin) Receive(ctx libp2p.Event) error

Receive receive message

func (*NATTPlugin) Startup

func (p *NATTPlugin) Startup(n libp2p.Network)

Startup is called only once when the plugin is loaded

type SyncPlugin

type SyncPlugin struct {
	*libp2p.Plugin
	// contains filtered or unexported fields
}

SyncPlugin sync plugin

func (*SyncPlugin) Receive

func (p *SyncPlugin) Receive(ctx libp2p.Event) error

Receive receive message

func (*SyncPlugin) Startup

func (p *SyncPlugin) Startup(n libp2p.Network)

Startup is called only once when the plugin is loaded

type TReliability

type TReliability struct {
	Key           core.Hash    `json:"key,omitempty"`
	Previous      core.Hash    `json:"previous,omitempty"`
	Parent        core.Hash    `json:"parent,omitempty"`
	LeftChild     core.Hash    `json:"left_child,omitempty"`
	RightChild    core.Hash    `json:"right_child,omitempty"`
	Producer      core.Address `json:"producer,omitempty"`
	TransListHash core.Hash    `json:"trans_list_hash,omitempty"`
	Time          uint64       `json:"time,omitempty"`
	Index         uint64       `json:"index,omitempty"`
	HashPower     uint64       `json:"hash_power,omitempty"`
	Admin         bool         `json:"admin,omitempty"`
	Ready         bool         `json:"ready,omitempty"`
}

TReliability Reliability of block

func ReadBlockReliability

func ReadBlockReliability(chain uint64, key []byte) TReliability

ReadBlockReliability get Reliability of block from db

func (TReliability) Cmp

func (r TReliability) Cmp(y TReliability) int

Cmp compares x and y and returns:

+1 if x >  y
-1 if x <  y
0  if x =  y

func (*TReliability) Recalculation

func (r *TReliability) Recalculation(chain uint64)

Recalculation recalculation

Jump to

Keyboard shortcuts

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