peer

package
v0.0.0-...-4502c18 Latest Latest
Warning

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

Go to latest
Published: Oct 26, 2018 License: GPL-3.0 Imports: 6 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func SetLocalPeer

func SetLocalPeer(peer *Peer)

Types

type Peer

type Peer struct {
	Ip   net.IP `json:"ip"`
	Port int    `json:"port"`
}

func LocalPeer

func LocalPeer() *Peer

func NewPeer

func NewPeer(ip net.IP, port int) Peer

func (Peer) DBKey

func (p Peer) DBKey() []byte

func (Peer) HttpAddr

func (p Peer) HttpAddr() string

type PeerManager

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

PeerManager controls the behavior of peers and establishes a relationship with the database.

func NewPeerManager

func NewPeerManager(db *leveldb.Db) *PeerManager

NewPeerManager creates new peer manager.

func (*PeerManager) Disable

func (pm *PeerManager) Disable(p Peer) error

Disable sets peer inactive.

func (*PeerManager) DisablerStart

func (pm *PeerManager) DisablerStart()

DisablerStart starts cycle for disable peers who stopped responding.

func (*PeerManager) Exist

func (pm *PeerManager) Exist(p Peer) bool

Exist checks if peer exist in peer list.

func (*PeerManager) Random

func (pm *PeerManager) Random(count int) []Peer

Random gets count random peers.

func (*PeerManager) Save

func (pm *PeerManager) Save(p Peer) error

Save saves peer in peer list.

Jump to

Keyboard shortcuts

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