message_queue

package
v0.0.0-...-f8156ea Latest Latest
Warning

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

Go to latest
Published: Jan 3, 2025 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

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

Client es una implementación de SQSClient que interactúa con Amazon SQS.

func NewSQSClient

func NewSQSClient() *Client

NewSQSClient crea una nueva instancia de Client que se comunica con Amazon SQS.

func (*Client) SendMessageWithContext

func (c *Client) SendMessageWithContext(ctx aws.Context, input *sqs.SendMessageInput, opts ...request.Option) (*sqs.SendMessageOutput, error)

SendMessageWithContext envía un mensaje a una cola de mensajes de Amazon SQS utilizando el cliente SQS proporcionado.

type Publisher

type Publisher interface {
	Publish(ctx context.Context, event interface{}, eventType string) error
}

Publisher define un método para publicar un evento en una cola de mensajes.

type SQSClient

type SQSClient interface {
	SendMessageWithContext(ctx aws.Context, input *sqs.SendMessageInput, opts ...request.Option) (*sqs.SendMessageOutput, error)
}

SQSClient define los métodos necesarios para interactuar con Amazon SQS.

type SQSPublisher

type SQSPublisher struct {
	Client          SQSClient         // Client es el cliente SQS utilizado para enviar mensajes a la cola de mensajes.
	QueueURLsByType map[string]string // QueueURLsByType es un mapa que asocia tipos de eventos con URLs de cola de mensajes.
	Logger          logging.Logger    // Logger se utiliza para registrar información y errores durante la publicación de eventos.
}

SQSPublisher es una implementación de Publisher que utiliza Amazon SQS para publicar eventos en una cola de mensajes.

func NewSQSPublisher

func NewSQSPublisher(client SQSClient, queueURLsByType map[string]string, logger logging.Logger) *SQSPublisher

NewSQSPublisher crea una nueva instancia de SQSPublisher con el cliente SQS, la URL de la cola y el logger dados.

func (*SQSPublisher) Publish

func (p *SQSPublisher) Publish(ctx context.Context, event interface{}, eventType string) error

Publish publica un evento en la cola de mensajes utilizando el cliente SQS y la URL de la cola proporcionados.

Jump to

Keyboard shortcuts

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