api

package
v1.10.0-rc8 Latest Latest
Warning

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

Go to latest
Published: Nov 17, 2022 License: BSD-3-Clause Imports: 89 Imported by: 3

Documentation

Overview

Package api provides the functionality of the Bee client-facing HTTP API.

Index

Constants

View Source
const (
	SwarmPinHeader            = "Swarm-Pin"
	SwarmTagHeader            = "Swarm-Tag"
	SwarmEncryptHeader        = "Swarm-Encrypt"
	SwarmIndexDocumentHeader  = "Swarm-Index-Document"
	SwarmErrorDocumentHeader  = "Swarm-Error-Document"
	SwarmFeedIndexHeader      = "Swarm-Feed-Index"
	SwarmFeedIndexNextHeader  = "Swarm-Feed-Index-Next"
	SwarmCollectionHeader     = "Swarm-Collection"
	SwarmPostageBatchIdHeader = "Swarm-Postage-Batch-Id"
	SwarmDeferredUploadHeader = "Swarm-Deferred-Upload"
)

Variables

View Source
var Version = "0.0.0"

Version is set in the build process.

Functions

This section is empty.

Types

type BeeNodeMode added in v1.6.2

type BeeNodeMode uint
const (
	LightMode BeeNodeMode = iota
	FullMode
	DevMode
	UltraLightMode
)

func (BeeNodeMode) String added in v1.6.2

func (b BeeNodeMode) String() string

type ExtraOptions added in v1.6.2

type ExtraOptions struct {
	Pingpong         pingpong.Interface
	TopologyDriver   topology.Driver
	LightNodes       *lightnode.Container
	Accounting       accounting.Interface
	Pseudosettle     settlement.Interface
	Swap             swap.Interface
	Chequebook       chequebook.Service
	BlockTime        time.Duration
	Tags             *tags.Tags
	Storer           storage.Storer
	Resolver         resolver.Interface
	Pss              pss.Interface
	TraversalService traversal.Traverser
	Pinning          pinning.Interface
	FeedFactory      feeds.Factory
	Post             postage.Service
	PostageContract  postagecontract.Interface
	Staking          staking.Contract
	Steward          steward.Interface
	SyncStatus       func() (bool, error)
}

type FileInfo added in v0.6.0

type FileInfo struct {
	Path        string
	Name        string
	ContentType string
	Size        int64
	Reader      io.Reader
}

type Options

type Options struct {
	CORSAllowedOrigins []string
	WsPingPeriod       time.Duration
	Restricted         bool
}

type Peer added in v1.6.2

type Peer struct {
	Address  swarm.Address `json:"address"`
	FullNode bool          `json:"fullNode"`
}

Peer holds information about a Peer.

type Probe added in v1.9.0

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

Probe structure holds flags which indicate node healthiness (sometimes refert also as liveness) and readiness.

func NewProbe added in v1.9.0

func NewProbe() *Probe

NewProbe returns new Probe.

func (*Probe) Healthy added in v1.9.0

func (p *Probe) Healthy() ProbeStatus

Healthy returns the value of the healthy status.

func (*Probe) Ready added in v1.9.0

func (p *Probe) Ready() ProbeStatus

Ready returns the value of the ready status.

func (*Probe) SetHealthy added in v1.9.0

func (p *Probe) SetHealthy(ps ProbeStatus)

SetHealthy updates the value of the healthy status.

func (*Probe) SetReady added in v1.9.0

func (p *Probe) SetReady(ps ProbeStatus)

SetReady updates the value of the ready status.

type ProbeStatus added in v1.9.0

type ProbeStatus int32

ProbeStatus is the status of a probe. ProbeStatus is treated as a sync/atomic int32.

const (
	// ProbeStatusOK indicates positive ProbeStatus status.
	ProbeStatusOK ProbeStatus = 1

	// ProbeStatusNOK indicates negative ProbeStatus status.
	ProbeStatusNOK ProbeStatus = 0
)

func (ProbeStatus) String added in v1.9.0

func (ps ProbeStatus) String() string

String implements the fmt.Stringer interface.

type Service

type Service struct {
	Options

	http.Handler
	// contains filtered or unexported fields
}

func New

func New(publicKey, pssPublicKey ecdsa.PublicKey, ethereumAddress common.Address, logger log.Logger, transaction transaction.Service, batchStore postage.Storer, beeMode BeeNodeMode, chequebookEnabled bool, swapEnabled bool, chainBackend transaction.Backend, cors []string) *Service

func (*Service) Close added in v1.6.2

func (s *Service) Close() error

Close hangs up running websockets on shutdown.

func (*Service) Configure added in v1.6.2

func (s *Service) Configure(signer crypto.Signer, auth auth.Authenticator, tracer *tracing.Tracer, o Options, e ExtraOptions, chainID int64, erc20 erc20.Service) <-chan *pusher.Op

Configure will create a and initialize a new API service.

func (*Service) Metrics added in v1.6.2

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

func (*Service) MountAPI added in v1.6.2

func (s *Service) MountAPI()

func (*Service) MountDebug added in v1.6.2

func (s *Service) MountDebug(restricted bool)

func (*Service) MountTechnicalDebug added in v1.6.2

func (s *Service) MountTechnicalDebug()

func (*Service) MustRegisterMetrics added in v1.6.2

func (s *Service) MustRegisterMetrics(cs ...prometheus.Collector)

func (*Service) SetP2P added in v1.6.2

func (s *Service) SetP2P(p2p p2p.DebugService)

func (*Service) SetProbe added in v1.9.0

func (s *Service) SetProbe(probe *Probe)

func (*Service) SetSwarmAddress added in v1.6.2

func (s *Service) SetSwarmAddress(addr *swarm.Address)

type UpgradedResponseWriter added in v0.6.0

type UpgradedResponseWriter interface {
	http.ResponseWriter
	http.Pusher
	http.Hijacker
	http.Flusher
	// staticcheck SA1019 CloseNotifier interface is required by gorilla compress handler
	// nolint:staticcheck
	http.CloseNotifier
}

UpgradedResponseWriter adds more functionality on top of ResponseWriter

Jump to

Keyboard shortcuts

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