Documentation
¶
Index ¶
- Constants
- func NewBlocklistOption(blocklist Blocklister) warpnet.WarpOption
- type BackoffEnabler
- type Blocklister
- type OfflineOutbox
- type PeersRatings
- type Prioritizer
- type ReservationRefuser
- type StreamMiddleware
- type Streamer
- type WarpNode
- func (n *WarpNode) BaseNodeInfo() warpnet.NodeInfo
- func (n *WarpNode) Connect(p warpnet.WarpAddrInfo) error
- func (n *WarpNode) Event() <-chan warpnet.PeerEvent
- func (n *WarpNode) Node() warpnet.P2PNode
- func (n *WarpNode) Prioritizer() Prioritizer
- func (n *WarpNode) RefuseReservation(dest, src warpnet.WarpPeerID) error
- func (n *WarpNode) SelfStream(from, to warpnet.WarpPeerID, path stream.WarpRoute, data any) (_ []byte, err error)
- func (n *WarpNode) SetOutbox(store stream.OutboxStore)
- func (n *WarpNode) SetStreamHandlers(handlers ...warpnet.WarpStreamHandler)
- func (n *WarpNode) SetStreamMiddlewares(mws ...StreamMiddleware)
- func (n *WarpNode) StopNode()
- func (n *WarpNode) Stream(nodeId warpnet.WarpPeerID, path stream.WarpRoute, data any) (_ []byte, err error)
Constants ¶
View Source
const (
ErrPrivateKeyRequired warpnet.WarpError = "private key is required"
)
View Source
const ErrSelfRequest = warpnet.WarpError("self request is not allowed")
Variables ¶
This section is empty.
Functions ¶
func NewBlocklistOption ¶ added in v0.8.95
func NewBlocklistOption(blocklist Blocklister) warpnet.WarpOption
Types ¶
type BackoffEnabler ¶
type BackoffEnabler interface {
IsBackoffEnabled(id warpnet.WarpPeerID) bool
Reset(id warpnet.WarpPeerID)
}
type Blocklister ¶ added in v0.8.95
type OfflineOutbox ¶ added in v0.7.524
type PeersRatings ¶ added in v0.8.77
type PeersRatings interface {
ConnTag(peerID warpnet.WarpPeerID) int
}
PeersRatings answers what a peer is worth to the connection manager, so that a node under pressure drops the peers it trusts least first.
type Prioritizer ¶ added in v0.6.154
type Prioritizer interface {
SetPriority(pid warpnet.WarpPeerID, r warpnet.WarpReachability)
SetRatingPriority(pid warpnet.WarpPeerID, tag int)
SetMinPriority(pid warpnet.WarpPeerID)
SetMaxPriority(pid warpnet.WarpPeerID)
}
type ReservationRefuser ¶ added in v0.8.95
type ReservationRefuser interface {
RefuseReservation(dest, src warpnet.WarpPeerID) error
}
type StreamMiddleware ¶ added in v0.8.77
type StreamMiddleware func(next warpnet.WarpHandlerFunc) warpnet.WarpHandlerFunc
type Streamer ¶
type Streamer interface {
Send(peerAddr warpnet.WarpAddrInfo, r stream.WarpRoute, data []byte) ([]byte, error)
SetStreamable(id warpnet.WarpPeerID)
SetUnstreamable(id warpnet.WarpPeerID)
}
type WarpNode ¶
type WarpNode struct {
// contains filtered or unexported fields
}
func NewWarpNode ¶
func NewWarpNode( ctx context.Context, ratings PeersRatings, limits ratelimit.Settings, opts ...warpnet.WarpOption, ) (*WarpNode, error)
func (*WarpNode) BaseNodeInfo ¶
func (*WarpNode) Event ¶ added in v0.8.77
Event is what this node saw its peers do. The channel is never closed.
func (*WarpNode) Prioritizer ¶ added in v0.6.154
func (n *WarpNode) Prioritizer() Prioritizer
func (*WarpNode) RefuseReservation ¶ added in v0.8.95
func (n *WarpNode) RefuseReservation(dest, src warpnet.WarpPeerID) error
func (*WarpNode) SelfStream ¶
func (*WarpNode) SetOutbox ¶ added in v0.7.524
func (n *WarpNode) SetOutbox(store stream.OutboxStore)
func (*WarpNode) SetStreamHandlers ¶
func (n *WarpNode) SetStreamHandlers(handlers ...warpnet.WarpStreamHandler)
func (*WarpNode) SetStreamMiddlewares ¶ added in v0.8.77
func (n *WarpNode) SetStreamMiddlewares(mws ...StreamMiddleware)
Click to show internal directories.
Click to hide internal directories.