rabbitmq

package
v0.0.0-...-acccf35 Latest Latest
Warning

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

Go to latest
Published: Sep 9, 2021 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Channel

type Channel interface {
	FanoutExchangeDeclare(exchange string) error
	QueueDeclareAndBind(exchange, queue string) error
	Publish(queue string, message Message) error
	Consume(ctx context.Context, queue string) (<-chan Message, error)
	Close() error
}

Channel .

type Connection

type Connection interface {
	GetChannel() (Channel, error)
	Close() error
}

Connection .

func NewConnection

func NewConnection(conn *amqp.Connection) Connection

NewConnection .

func NewRabbitMQConnection

func NewRabbitMQConnection() (Connection, error)

NewRabbitMQConnection .

type Message

type Message = []byte

Message .

type PubSubManager

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

PubSubManager .

func NewPubSubManager

func NewPubSubManager(conn Connection) *PubSubManager

NewPubSubManager .

func (*PubSubManager) GetPublisher

func (psm *PubSubManager) GetPublisher() (event.Publisher, event.ChannelClose, error)

GetPublisher .

func (*PubSubManager) SetConsumer

func (psm *PubSubManager) SetConsumer(ctx context.Context, exchangeName, queueName string, handler func([]byte)) error

SetConsumer .

func (*PubSubManager) SetPublishHandler

func (psm *PubSubManager) SetPublishHandler(handler PublishHandler) error

SetPublishHandler .

type PubSubManagerSetter

type PubSubManagerSetter interface {
	SetPublishHandler(handler PublishHandler) error
}

PubSubManagerSetter .

type PublishHandler

type PublishHandler = func(Channel, interface{})

PublishHandler .

type Publisher

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

Publisher .

func NewPublisher

func NewPublisher(ch Channel, handlers []PublishHandler) *Publisher

NewPublisher .

func (*Publisher) Flush

func (p *Publisher) Flush() error

Flush .

func (*Publisher) Publish

func (p *Publisher) Publish(event interface{})

Publish .

Jump to

Keyboard shortcuts

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