pushsync

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Nov 24, 2020 License: BSD-3-Clause Imports: 17 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type PushSync

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

func New

func New(streamer p2p.StreamerDisconnecter, storer storage.Putter, closestPeerer topology.ClosestPeerer, tagger *tags.Tags, validator swarm.ValidatorWithCallback, logger logging.Logger, accounting accounting.Interface, pricer accounting.Pricer, tracer *tracing.Tracer) *PushSync

func (*PushSync) Metrics

func (s *PushSync) Metrics() []prometheus.Collector

func (*PushSync) Protocol

func (s *PushSync) Protocol() p2p.ProtocolSpec

func (*PushSync) PushChunkToClosest

func (ps *PushSync) PushChunkToClosest(ctx context.Context, ch swarm.Chunk) (*Receipt, error)

PushChunkToClosest sends chunk to the closest peer by opening a stream. It then waits for a receipt from that peer and returns error or nil based on the receiving and the validity of the receipt.

type PushSyncer

type PushSyncer interface {
	PushChunkToClosest(ctx context.Context, ch swarm.Chunk) (*Receipt, error)
}

type Receipt

type Receipt struct {
	Address swarm.Address
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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