snssqs

package
v1.13.1 Latest Latest
Warning

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

Go to latest
Published: Apr 1, 2024 License: Apache-2.0 Imports: 24 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewSnsSqs

func NewSnsSqs(l logger.Logger) pubsub.PubSub

NewSnsSqs - constructor for a new snssqs dapr component.

Types

type SubscriptionAction added in v1.13.0

type SubscriptionAction int
const (
	Subscribe SubscriptionAction = iota
	Unsubscribe
)

type SubscriptionManagement added in v1.13.0

type SubscriptionManagement interface {
	Init(queueInfo *sqsQueueInfo, dlqInfo *sqsQueueInfo, cbk func(context.Context, *sqsQueueInfo, *sqsQueueInfo))
	Subscribe(topicHandler *SubscriptionTopicHandler)
	Close()
	GetSubscriptionTopicHandler(topic string) (*SubscriptionTopicHandler, bool)
}

func NewSubscriptionMgmt added in v1.13.0

func NewSubscriptionMgmt(log logger.Logger) SubscriptionManagement

type SubscriptionManager added in v1.13.0

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

func (*SubscriptionManager) Close added in v1.13.0

func (sm *SubscriptionManager) Close()

func (*SubscriptionManager) GetSubscriptionTopicHandler added in v1.13.0

func (sm *SubscriptionManager) GetSubscriptionTopicHandler(topic string) (*SubscriptionTopicHandler, bool)

func (*SubscriptionManager) Init added in v1.13.0

func (sm *SubscriptionManager) Init(queueInfo *sqsQueueInfo, dlqInfo *sqsQueueInfo, cbk func(context.Context, *sqsQueueInfo, *sqsQueueInfo))

func (*SubscriptionManager) Subscribe added in v1.13.0

func (sm *SubscriptionManager) Subscribe(topicHandler *SubscriptionTopicHandler)

type SubscriptionTopicHandler added in v1.13.0

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

type TopicsLockManager added in v1.13.0

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

TopicsLockManager is a singleton for fine-grained locking, to prevent the component r/w operations from locking the entire component out when performing operations on different topics.

func NewLockManager added in v1.13.0

func NewLockManager() *TopicsLockManager

func (*TopicsLockManager) Lock added in v1.13.0

func (lm *TopicsLockManager) Lock(key string) *sync.Mutex

func (*TopicsLockManager) Unlock added in v1.13.0

func (lm *TopicsLockManager) Unlock(key string)

type TopicsLocker added in v1.13.0

type TopicsLocker interface {
	Lock(topic string) *sync.Mutex
	Unlock(topic string)
}

Jump to

Keyboard shortcuts

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