appsender

package
v1.22.2 Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2025 License: BSD-3-Clause Imports: 3 Imported by: 0

Documentation

Overview

Package appsender defines the AppSender interface for application-level messaging

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AppSender

type AppSender interface {
	// SendAppRequest sends an application-level request to the given nodes.
	// The meaning of request, and what should be sent in response is application-defined.
	SendAppRequest(ctx context.Context, nodeIDs set.Set[ids.NodeID], requestID uint32, appRequestBytes []byte) error

	// SendAppResponse sends an application-level response to a request.
	// This response must be in response to an AppRequest that was previously
	// received by this node.
	SendAppResponse(ctx context.Context, nodeID ids.NodeID, requestID uint32, appResponseBytes []byte) error

	// SendAppError sends an application-level error to an AppRequest
	SendAppError(ctx context.Context, nodeID ids.NodeID, requestID uint32, errorCode int32, errorMessage string) error

	// SendAppGossip sends an application-level gossip message.
	SendAppGossip(ctx context.Context, nodeIDs set.Set[ids.NodeID], appGossipBytes []byte) error

	// SendAppGossipSpecific sends an application-level gossip message to a specific set of nodes
	SendAppGossipSpecific(ctx context.Context, nodeIDs set.Set[ids.NodeID], appGossipBytes []byte) error
}

AppSender sends application-level messages

type FakeSender

type FakeSender struct {
	SentAppRequest           []byte
	SentAppGossip            []byte
	SentCrossChainAppRequest []byte
}

FakeSender is a fake implementation of AppSender for testing

func (*FakeSender) SendAppError

func (f *FakeSender) SendAppError(ctx context.Context, nodeID ids.NodeID, requestID uint32, errorCode int32, errorMessage string) error

func (*FakeSender) SendAppGossip

func (f *FakeSender) SendAppGossip(ctx context.Context, nodeIDs set.Set[ids.NodeID], appGossipBytes []byte) error

func (*FakeSender) SendAppGossipSpecific

func (f *FakeSender) SendAppGossipSpecific(ctx context.Context, nodeIDs set.Set[ids.NodeID], appGossipBytes []byte) error

func (*FakeSender) SendAppRequest

func (f *FakeSender) SendAppRequest(ctx context.Context, nodeIDs set.Set[ids.NodeID], requestID uint32, appRequestBytes []byte) error

func (*FakeSender) SendAppResponse

func (f *FakeSender) SendAppResponse(ctx context.Context, nodeID ids.NodeID, requestID uint32, appResponseBytes []byte) error

func (*FakeSender) SendCrossChainAppError

func (f *FakeSender) SendCrossChainAppError(ctx context.Context, chainID ids.ID, requestID uint32, errorCode int32, errorMessage string) error

func (*FakeSender) SendCrossChainAppRequest

func (f *FakeSender) SendCrossChainAppRequest(ctx context.Context, chainID ids.ID, requestID uint32, appRequestBytes []byte) error

func (*FakeSender) SendCrossChainAppResponse

func (f *FakeSender) SendCrossChainAppResponse(ctx context.Context, chainID ids.ID, requestID uint32, appResponseBytes []byte) error

Jump to

Keyboard shortcuts

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