Help us shape the future of Go! Take the 2026 Go Developer Survey

ingest

package
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Oct 22, 2026 License: BSD-2-Clause Imports: 25 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Callbacks

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

func NewCallbacks

func NewCallbacks(jobs Resumer) *Callbacks

func (*Callbacks) Register

func (h *Callbacks) Register(app *fiber.App)

type EventCatalog

type EventCatalog interface {
	ByTopic(ctx context.Context, topic string) ([]*models.EventDefinition, error)
}

type Kafka

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

func NewKafka

func NewKafka(triggers KafkaTriggers, catalog EventCatalog, jobs Starter, registry SchemaRegistry, logger *slog.Logger) *Kafka

func (*Kafka) Handle

func (k *Kafka) Handle(ctx context.Context, message KafkaMessage) error

type KafkaConsumer

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

func NewKafkaConsumer

func NewKafkaConsumer(
	newReader func(topics []string) KafkaReader,
	topics KafkaTopics,
	handle func(context.Context, KafkaMessage) error,
	refresh time.Duration,
	logger *slog.Logger,
) *KafkaConsumer

func (*KafkaConsumer) Run

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

type KafkaMessage

type KafkaMessage struct {
	Topic     string
	Partition int
	Offset    int64
	Key       []byte
	Value     []byte
	Headers   map[string]string
	Timestamp time.Time
}

type KafkaReader

type KafkaReader interface {
	FetchMessage(ctx context.Context) (kafka.Message, error)
	CommitMessages(ctx context.Context, messages ...kafka.Message) error
	Close() error
}

type KafkaTopics

type KafkaTopics interface {
	KafkaTopics(ctx context.Context) ([]string, error)
}

type KafkaTriggers

type KafkaTriggers interface {
	KafkaTriggers(ctx context.Context, topic string) ([]models.TriggerNodeMatch, error)
	EventTriggers(ctx context.Context, eventKey, tenantID string) ([]models.TriggerNodeMatch, error)
}

type Resumer

type Resumer interface {
	ResumeIf(ctx context.Context, executionID, nodeID string, data map[string]any, allowed func(models.NodeResult) bool) error
}

type SchemaRegistry

type SchemaRegistry struct {
	URL      string
	Username string
	Password string
}

type Starter

type Starter interface {
	Start(ctx context.Context, execution *models.ExecutionContext, job models.Job) error
}

type Triggers

type Triggers interface {
	WebhookTriggers(ctx context.Context, tenantID, path string) ([]models.TriggerNodeMatch, error)
}

type Webhook

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

func NewWebhook

func NewWebhook(triggers Triggers, jobs Starter, logger *slog.Logger) *Webhook

func (*Webhook) Register

func (h *Webhook) Register(app *fiber.App)

Jump to

Keyboard shortcuts

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