broker

package
v0.0.0-...-535ab37 Latest Latest
Warning

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

Go to latest
Published: May 23, 2020 License: GPL-3.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	RequestQueueName   = "previewer.requestQueue"
	RequestRoutingKey  = "previewer.requestQueue.tasks"
	ResponseQueueName  = "previewer.responseQueue"
	ResponseRoutingKey = "previewer.responseQueue.previews"
)

Variables

This section is empty.

Functions

func CreateCorrelationID

func CreateCorrelationID() string

CreateCorrelationID returns correlation UUID

Types

type AmqpEnvelope

type AmqpEnvelope struct {
	Message  interfaces.Message
	Metadata *AmqpMetadata
}

AmqpEnvelope holds message with AMQP metadata

func CreateEnvelope

func CreateEnvelope(message interfaces.Message, correlationID, dataType string) *AmqpEnvelope

CreateEnvelope creates and fills message envelope

type AmqpMetadata

type AmqpMetadata struct {
	CorrelationID string
	Type          string
}

AmqpMetadata holds extra data for AMQP message

type AmqpReader

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

func NewAmqpReader

func NewAmqpReader(ctx context.Context, conn *amqp.Connection, queueName, routingKey string) *AmqpReader

func (*AmqpReader) Close

func (r *AmqpReader) Close() error

Close function releases RabbitMQ channel and corresponding queue

func (AmqpReader) PrintMessage

func (r AmqpReader) PrintMessage(message interfaces.Message)

PrintMessage prints incoming message to log

func (*AmqpReader) ReadEnvelope

func (r *AmqpReader) ReadEnvelope() (env *AmqpEnvelope, close bool, err error)

ReadEnvelope reads and unmarshals message from RabbitMQ queue. Returns message envelope or error

type AmqpWriter

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

func NewAmqpWriter

func NewAmqpWriter(conn *amqp.Connection, queueName, routingKey string) *AmqpWriter

func (*AmqpWriter) Close

func (w *AmqpWriter) Close() error

func (*AmqpWriter) WriteEnvelope

func (w *AmqpWriter) WriteEnvelope(env *AmqpEnvelope) error

WriteEnvelope sends AMQP envelope to RabbitMQ broker, returns error object or nil

type ChannelWithQueue

type ChannelWithQueue struct {
	Ch  *amqp.Channel
	Que amqp.Queue
}

func NewChannelWithQueue

func NewChannelWithQueue(conn *amqp.Connection, queueName, routingKey string) (*ChannelWithQueue, error)

func (*ChannelWithQueue) Close

func (cwq *ChannelWithQueue) Close() error

type Manager

type Manager struct {
	Conn *amqp.Connection
	Done chan error
	// contains filtered or unexported fields
}

func NewManager

func NewManager(protocol, user, password, host string, port int) *Manager

func (*Manager) Close

func (m *Manager) Close() error

func (*Manager) ConnectionListener

func (m *Manager) ConnectionListener(ctx context.Context)

func (*Manager) Reconnect

func (m *Manager) Reconnect(ctx context.Context) error

Jump to

Keyboard shortcuts

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