network

package
v0.4.2 Latest Latest
Warning

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

Go to latest
Published: Mar 6, 2024 License: GPL-3.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Network

type Network interface {
	network.PipeManager

	Start() error

	Stop() error

	// Send sends message waiting response
	Send(string, *pb.Message) (*pb.Message, error)

	// SendWithStream sends message using existed stream
	SendWithStream(network.Stream, *pb.Message) error

	PeerID() string

	// CountConnectedValidators counts connected validator numbers
	CountConnectedValidators() uint64

	// RegisterMsgHandler registers one message type handler
	RegisterMsgHandler(messageType pb.Message_Type, handler func(network.Stream, *pb.Message)) error

	// RegisterMultiMsgHandler registers multi message type handler
	RegisterMultiMsgHandler(messageTypes []pb.Message_Type, handler func(network.Stream, *pb.Message)) error
}

func New

func New(repoConfig *repo.Repo, logger logrus.FieldLogger, ledger *ledger.Ledger) (Network, error)

type Pipe

type Pipe interface {
	fmt.Stringer
	Send(ctx context.Context, to string, data []byte) error
	Broadcast(ctx context.Context, targets []string, data []byte) error
	Receive(ctx context.Context) *network.PipeMsg
}

ony used for mock

Directories

Path Synopsis
Package mock_network is a generated GoMock package.
Package mock_network is a generated GoMock package.

Jump to

Keyboard shortcuts

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