subscriber

package
v0.0.0-...-79645f3 Latest Latest
Warning

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

Go to latest
Published: Nov 5, 2023 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewJSONMessageTypedHandler

func NewJSONMessageTypedHandler[T any](handler func(ctx context.Context, msgID string, metadata map[string]string, event *T) error) message.HandlerFunc

Types

type ChannelSubscriber

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

func NewChannelSubscriber

func NewChannelSubscriber(inputCh chan *message.Message, maxConcurrent int) *ChannelSubscriber

func (*ChannelSubscriber) Close

func (c *ChannelSubscriber) Close() error

func (*ChannelSubscriber) Subscribe

func (c *ChannelSubscriber) Subscribe() (<-chan *message.Message, error)

type OnErrorListener

type OnErrorListener = func(msg *message.Message, err error)

type OnPanicListener

type OnPanicListener = func(msg *message.Message, r any)

type RoutingKey

type RoutingKey string

type RoutingKeyGenerator

type RoutingKeyGenerator = func(msg *message.Message) RoutingKey

func RouteFromMetadataKey

func RouteFromMetadataKey(metadataKey string) RoutingKeyGenerator

type Subscriber

type Subscriber interface {
	Subscribe() (<-chan *message.Message, error)
	Close() error
}

type SubscriptionEngine

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

func NewSubscriptionEngine

func NewSubscriptionEngine(sub Subscriber, router SubscriptionRouter) *SubscriptionEngine

func (*SubscriptionEngine) AddMiddleware

func (*SubscriptionEngine) SetOnErrorListener

func (p *SubscriptionEngine) SetOnErrorListener(listener OnErrorListener) *SubscriptionEngine

func (*SubscriptionEngine) SetOnPanicListener

func (p *SubscriptionEngine) SetOnPanicListener(listener OnPanicListener) *SubscriptionEngine

func (*SubscriptionEngine) Start

func (e *SubscriptionEngine) Start() error

type SubscriptionRouter

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

func NewRouter

func NewRouter(generator RoutingKeyGenerator) *SubscriptionRouter

func (*SubscriptionRouter) AddDefaultHandler

func (d *SubscriptionRouter) AddDefaultHandler(handler message.HandlerFunc)

func (*SubscriptionRouter) AddHandler

func (d *SubscriptionRouter) AddHandler(value string, handler message.HandlerFunc)

func (*SubscriptionRouter) HandlerFunc

func (d *SubscriptionRouter) HandlerFunc() message.HandlerFunc

type TypedMessageHandler

type TypedMessageHandler[T any] interface {
	OnMessage(ctx context.Context, event *T) error
}

Jump to

Keyboard shortcuts

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