config

package
v0.0.0-...-98cd694 Latest Latest
Warning

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

Go to latest
Published: Feb 29, 2024 License: Unlicense Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ProviderRedis is used to refer to redis.
	ProviderRedis = "redis"
	// ProviderSQS is used to refer to sqs.
	ProviderSQS = "sqs"
	// ProviderPubSub is used to refer to GCP Pub/Sub.
	ProviderPubSub = "pubsub"
)

Variables

View Source
var (
	// MessageQueueProviders are what we provide to dependency injection.
	MessageQueueProviders = wire.NewSet(
		ProvideConsumerProvider,
		ProvidePublisherProvider,
	)
)

Functions

func ProvideConsumerProvider

func ProvideConsumerProvider(ctx context.Context, logger logging.Logger, tracerProvider tracing.TracerProvider, c *Config) (messagequeue.ConsumerProvider, error)

ProvideConsumerProvider provides a PublisherProvider.

func ProvidePublisherProvider

func ProvidePublisherProvider(ctx context.Context, logger logging.Logger, tracerProvider tracing.TracerProvider, c *Config) (messagequeue.PublisherProvider, error)

ProvidePublisherProvider provides a PublisherProvider.

Types

type Config

type Config struct {
	Consumers  MessageQueueConfig `json:"consumers,omitempty"  toml:"consumers,omitempty"`
	Publishers MessageQueueConfig `json:"publishers,omitempty" toml:"publishers,omitempty"`
	// contains filtered or unexported fields
}

Config is used to indicate how the messaging provider should be configured.

type MessageQueueConfig

type MessageQueueConfig struct {
	Provider Provider      `json:"provider,omitempty" toml:"provider,omitempty"`
	SQS      sqs.Config    `json:"sqs,omitempty"      toml:"sqs,omitempty"`
	PubSub   pubsub.Config `json:"pubsub,omitempty"   toml:"pubsub,omitempty"`
	Redis    redis.Config  `json:"redis,omitempty"    toml:"redis,omitempty"`
	// contains filtered or unexported fields
}

MessageQueueConfig is used to indicate how the messaging provider should be configured.

type Provider

type Provider string

Provider is used to indicate what messaging provider we'll use.

type RedisConfig

type RedisConfig struct {
	QueueAddress string `json:"message_queue_address,omitempty" toml:"message_queue_address,omitempty"`
}

RedisConfig configures a Redis-backed consumer.

type SQSConfig

type SQSConfig struct {
	QueueAddress string `json:"message_queue_address,omitempty" toml:"message_queue_address,omitempty"`
}

SQSConfig configures a SQS-backed consumer.

Jump to

Keyboard shortcuts

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