kafka

package
v0.0.0-...-0f1d0c9 Latest Latest
Warning

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

Go to latest
Published: Jul 24, 2023 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Consumer

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

Consumer implements functionality to consume kafka messages.

func NewConsumer

func NewConsumer(reader Reader, processor Processor) *Consumer

NewConsumer is a constructor function for Consumer.

func (*Consumer) ConsumeMessage

func (p *Consumer) ConsumeMessage(ctx context.Context) error

ConsumeMessage consumes and processes a single kafka message.

func (*Consumer) ConsumeMessages

func (p *Consumer) ConsumeMessages(ctx context.Context, errs chan error)

ConsumeMessages consumes messages continuously and sends errors to a channel. Stops consuming on ctx.Done().

func (*Consumer) Stop

func (p *Consumer) Stop() error

Stop stops the consumer gracefully.

type Processor

type Processor interface {
	Process(ctx context.Context, msg []byte) error
}

Processor is a contract to a kafka message processor.

type Producer

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

Producer implements functionality to produce kafka messages.

func NewProducer

func NewProducer(writer Writer) *Producer

NewProducer is a constructor function for Producer.

func (*Producer) Produce

func (p *Producer) Produce(ctx context.Context, channel string, message any) error

Produce produces a single kafka message.

type Reader

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

Reader is a contract to a kafka writer.

type Writer

type Writer interface {
	WriteMessages(ctx context.Context, msgs ...kafka.Message) error
}

Writer is a contract to a kafka writer.

Jump to

Keyboard shortcuts

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