remoteengine

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Nov 6, 2026 License: MIT Imports: 12 Imported by: 0

Documentation

Overview

Package remoteengine provides engine components that connect the engine to remote engines.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Connector

type Connector struct {
	// Discover adds and removes remote engines as they become available and
	// unavailable, as described by
	// [github.com/dogmatiq/runkit.RemoteEngineDiscoverer].
	Discover func(
		ctx context.Context,
		add func(conn grpc.ClientConnInterface) (remove func()),
	) error

	// EventStreams is the catalog to which each available remote engine's
	// event streams are added.
	EventStreams *eventstream.Catalog

	// EventTypeIDs is the set of event types to deliver from each remote
	// engine.
	//
	// If it is empty, remote engines are not watched at all, as watching for
	// an empty set of types would deliver events of every type.
	EventTypeIDs *uuidcollection.Set

	// Logger is the target for log messages produced by the connector and its
	// connections to remote engines.
	Logger *slog.Logger
}

Connector runs a function that discovers remote engines, and connects the engine to each remote engine while it is available.

func (*Connector) Run

func (c *Connector) Run(ctx context.Context) error

Run discovers remote engines until ctx is canceled.

Jump to

Keyboard shortcuts

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