amqp

package
v0.5.2 Latest Latest
Warning

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

Go to latest
Published: Sep 5, 2018 License: Apache-2.0 Imports: 9 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Message

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

Message abstraction for publishing.

func NewJSONMessage

func NewJSONMessage(d interface{}) (*Message, error)

NewJSONMessage creates a new message with a JSON encoded body.

func NewMessage

func NewMessage(ct string, body []byte) *Message

NewMessage creates a new message.

type OptionFunc added in v0.5.2

type OptionFunc func(*TracedPublisher) error

OptionFunc definition for configuring the publisher in a functional way.

func Timeout added in v0.5.2

func Timeout(timeout time.Duration) OptionFunc

Timeout option for adjusting the timeout of the connection.

type Publisher

type Publisher interface {
	Publish(ctx context.Context, msg *Message) error
	Close(ctx context.Context) error
}

Publisher interface of a RabbitMQ publisher.

type TracedPublisher

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

TracedPublisher defines a RabbitMQ publisher with tracing instrumentation.

func NewPublisher

func NewPublisher(url, exc string, oo ...OptionFunc) (*TracedPublisher, error)

NewPublisher creates a new publisher with the following defaults - exchange type: fanout - notifications are not handled at this point TBD.

func (*TracedPublisher) Close

func (tc *TracedPublisher) Close(_ context.Context) error

Close the connection and channel of the publisher.

func (*TracedPublisher) Publish

func (tc *TracedPublisher) Publish(ctx context.Context, msg *Message) error

Publish a message to a exchange.

Jump to

Keyboard shortcuts

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