addressbook

package
v0.0.0-...-fa704fd Latest Latest
Warning

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

Go to latest
Published: Mar 3, 2022 License: BSD-3-Clause Imports: 6 Imported by: 0

Documentation

Overview

Package addressbook provides persisted mapping between overlay (topology) address and pen.Address address, which contains underlay (physical) address. The underlay address contains both physical and p2p addresses.

It is single point of truth about known peers and relations of their overlay and underlay addresses.

Index

Constants

This section is empty.

Variables

View Source
var ErrNotFound = errors.New("addressbook: not found")

Functions

This section is empty.

Types

type GetPutter

type GetPutter interface {
	Getter
	Putter
}

type Getter

type Getter interface {
	// Get returns pointer to saved pen.Address for requested overlay address.
	Get(overlay penguin.Address) (addr *pen.Address, err error)
}

type Interface

type Interface interface {
	GetPutter
	Remover
	// Overlays returns a list of all overlay addresses saved in addressbook.
	Overlays() ([]penguin.Address, error)
	// Addresses returns a list of all pen.Address-es saved in addressbook.
	Addresses() ([]pen.Address, error)
}

Interface is the AddressBook interface.

func New

func New(storer storage.StateStorer) Interface

New creates new addressbook for state storer.

type Putter

type Putter interface {
	// Put saves relation between peer overlay address and pen.Address address.
	Put(overlay penguin.Address, addr pen.Address) (err error)
}

type Remover

type Remover interface {
	// Remove removes overlay address.
	Remove(overlay penguin.Address) error
}

Jump to

Keyboard shortcuts

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