node

package
v0.0.0-...-cbdd766 Latest Latest
Warning

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

Go to latest
Published: Dec 22, 2024 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultBootstrapAcc = "0x09ee50f2f37fcba1845de6fe5c762e83e65e755c"

The Genesis account with 1M TGL tokens

View Source
const DefaultBootstrapIp = "node.tgl.jnsoft.se"
View Source
const DefaultIP = "127.0.0.1"
View Source
const DefaultMiner = "0x0000000000000000000000000000000000000000"
View Source
const DefaultMiningDifficulty = 3
View Source
const HttpSSLPort = 443

Variables

This section is empty.

Functions

func Mine

func Mine(ctx context.Context, pb PendingBlock, miningDifficulty uint) (database.Block, error)

Types

type AddPeerRes

type AddPeerRes struct {
	Success bool   `json:"success"`
	Error   string `json:"error"`
}

type BalancesRes

type BalancesRes struct {
	Hash     database.Hash             `json:"block_hash"`
	Balances map[database.Address]uint `json:"balances"`
}

type ErrRes

type ErrRes struct {
	Error string `json:"error"`
}

type Node

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

func New

func New(dataDir string, ip string, port uint64, acc common.Address, bootstrap PeerNode, version string, miningDifficulty uint) *Node

func (*Node) AddPeer

func (n *Node) AddPeer(peer PeerNode)

func (*Node) AddPendingTX

func (n *Node) AddPendingTX(tx database.SignedTx, fromPeer PeerNode) error

func (*Node) ChangeMiningDifficulty

func (n *Node) ChangeMiningDifficulty(newDifficulty uint)

func (*Node) IsKnownPeer

func (n *Node) IsKnownPeer(peer PeerNode) bool

func (*Node) LatestBlockHash

func (n *Node) LatestBlockHash() database.Hash

func (*Node) RemovePeer

func (n *Node) RemovePeer(peer PeerNode)

func (*Node) Run

func (n *Node) Run(ctx context.Context, isSSLDisabled bool, sslEmail string) error

type PeerNode

type PeerNode struct {
	IP          string         `json:"ip"`
	Port        uint64         `json:"port"`
	IsBootstrap bool           `json:"is_bootstrap"`
	Account     common.Address `json:"account"`
	NodeVersion string         `json:"node_version"`
	// contains filtered or unexported fields
}

func NewPeerNode

func NewPeerNode(ip string, port uint64, isBootstrap bool, acc common.Address, connected bool, version string) PeerNode

func (PeerNode) ApiProtocol

func (pn PeerNode) ApiProtocol() string

func (PeerNode) TcpAddress

func (pn PeerNode) TcpAddress() string

type PendingBlock

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

func NewPendingBlock

func NewPendingBlock(parent database.Hash, number uint64, miner common.Address, txs []database.SignedTx) PendingBlock

type StatusRes

type StatusRes struct {
	Hash        database.Hash       `json:"block_hash"`
	Number      uint64              `json:"block_number"`
	KnownPeers  map[string]PeerNode `json:"peers_known"`
	PendingTXs  []database.SignedTx `json:"pending_txs"`
	NodeVersion string              `json:"node_version"`
	Account     database.Address    `json:"account"`
}

type SyncRes

type SyncRes struct {
	Blocks []database.Block `json:"blocks"`
}

type TxAddReq

type TxAddReq struct {
	From     string `json:"from"`
	FromPwd  string `json:"from_pwd"`
	To       string `json:"to"`
	Gas      uint   `json:"gas"`
	GasPrice uint   `json:"gasPrice"`
	Value    uint   `json:"value"`
	Data     string `json:"data"`
}

type TxAddRes

type TxAddRes struct {
	Success bool `json:"success"`
}

Jump to

Keyboard shortcuts

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