message

package
v0.1.3 Latest Latest
Warning

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

Go to latest
Published: Jun 20, 2022 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	InMemoryBusMaximumInFlightMessage = 4096
)

Variables

View Source
var GlobalDecoderRegistry = NewRegistry()

Functions

This section is empty.

Types

type Bus

type Bus interface {
	Subject(ctx context.Context, subject string) (Mailbox, error)
}

type DecoderFunc added in v0.1.3

type DecoderFunc func(buf []byte) (any, error)

func NewDecoder added in v0.1.3

func NewDecoder[T any]() DecoderFunc

type DecoderRegistry added in v0.1.3

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

func NewRegistry added in v0.1.3

func NewRegistry() *DecoderRegistry

func (*DecoderRegistry) Decode added in v0.1.3

func (r *DecoderRegistry) Decode(kind string, buf []byte) (any, error)

func (*DecoderRegistry) Register added in v0.1.3

func (r *DecoderRegistry) Register(kind string, decoderFunc DecoderFunc) *DecoderRegistry

type Envelope added in v0.1.3

type Envelope struct {
	Message Message `json:"message"`
	Payload []byte  `json:"payload"`
}

type Handler

type Handler func(ctx context.Context, message Message) (Message, error)

type InMemoryBus

type InMemoryBus struct{}

func NewInMemoryBus

func NewInMemoryBus() *InMemoryBus

func (*InMemoryBus) Subject added in v0.1.3

func (i *InMemoryBus) Subject(ctx context.Context, subject string) (Mailbox, error)

type InMemoryMailbox added in v0.1.3

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

func NewInMemoryMailbox added in v0.1.3

func NewInMemoryMailbox() *InMemoryMailbox

func (*InMemoryMailbox) Emit added in v0.1.3

func (i *InMemoryMailbox) Emit(ctx context.Context, message Message) error

func (*InMemoryMailbox) ReadC added in v0.1.3

func (i *InMemoryMailbox) ReadC(ctx context.Context) (<-chan Message, context.CancelFunc)

type Mailbox added in v0.1.3

type Mailbox interface {
	Emit(ctx context.Context, message Message) error
	ReadC(ctx context.Context) (<-chan Message, context.CancelFunc)
}

type Message

type Message struct {
	ID      xid.ID `json:"id"`
	Kind    string `json:"kind"`
	Payload any    `json:"-"`
}

func New

func New(kind string, payload any) Message

func Unmarshall added in v0.1.3

func Unmarshall(buf []byte) (*Message, error)

func (Message) CreatedAt

func (m Message) CreatedAt() time.Time

func (Message) Marshall added in v0.1.3

func (m Message) Marshall() ([]byte, error)

func (Message) Node

func (m Message) Node() []byte

type NoOpBus

type NoOpBus struct{}

func NewNoopBus

func NewNoopBus() *NoOpBus

func (NoOpBus) Emit

func (NoOpBus) Emit(_ context.Context, _ Message) error

func (NoOpBus) ReadC added in v0.1.3

func (NoOpBus) ReadC(_ context.Context) (<-chan Message, context.CancelFunc)

func (NoOpBus) Subject added in v0.1.3

func (b NoOpBus) Subject(_ context.Context, _ string) (Mailbox, error)

Jump to

Keyboard shortcuts

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