event

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Apr 3, 2022 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func KVFromProto added in v0.0.2

func KVFromProto(msg proto.Message) (string, []byte, error)

Types

type Event

type Event interface {
	Key() string
	Value() []byte
}

func NewMessage

func NewMessage(key string, value []byte) Event

func NewMessageFromProto added in v0.0.2

func NewMessageFromProto(msg proto.Message) (Event, error)

type Handler

type Handler func(context.Context, Event) error

func ChainHandler added in v0.0.2

func ChainHandler(h ...Handler) Handler

ChainHandler cmobine multiple handler one by one

func FilterKeyHandler added in v0.0.2

func FilterKeyHandler(key string, handler Handler) Handler

FilterKeyHandler filter event by key compare

func ProtoHandler added in v0.0.2

func ProtoHandler[T proto.Message](msg T, next HandlerOf[T]) Handler

func RecoverHandler added in v0.0.2

func RecoverHandler(l klog.Logger, next Handler) Handler

RecoverHandler wrap next with recover. prevent consumer panic

func TransformHandler added in v0.0.2

func TransformHandler[T any](transformer TransformerOf[T], next HandlerOf[T]) Handler

TransformHandler transform Event into type generic T

func UowHandler added in v0.0.2

func UowHandler(uowMgr uow.Manager, handler Handler) Handler

UowHandler wrap handler into a unit of work

type HandlerOf added in v0.0.2

type HandlerOf[T any] func(context.Context, T) error

type Message

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

func (*Message) Key

func (m *Message) Key() string

func (*Message) Value

func (m *Message) Value() []byte

type Receiver

type Receiver interface {
	Receive(ctx context.Context, handler Handler) error
	Close() error
}

type Sender

type Sender interface {
	Send(ctx context.Context, msg Event) error
	Close() error
}

type TransformerOf added in v0.0.2

type TransformerOf[T any] func(e Event) (T, error)

Jump to

Keyboard shortcuts

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