Documentation
¶
Overview ¶
Package queues is a generated GoMock package.
Index ¶
- Variables
- type ConsumeHandler
- type MockProvider
- func (m *MockProvider) AdvanceCheckpointAndCleanup(ctx context.Context) error
- func (m *MockProvider) CheckHealth(ctx context.Context) error
- func (m *MockProvider) EXPECT() *MockProviderMockRecorder
- func (m *MockProvider) GetLatestProcessedTimestamp(ctx context.Context) (time.Time, error)
- func (m *MockProvider) NewPubSubPublisher(ctx context.Context, channelName string) (PubSubPublisher, error)
- func (m *MockProvider) NewPubSubSubscriber(ctx context.Context, channelName string) (PubSubSubscriber, error)
- func (m *MockProvider) NewQueueConsumer(ctx context.Context, queueName string) (QueueConsumer, error)
- func (m *MockProvider) NewQueueProducer(ctx context.Context, queueName string) (QueueProducer, error)
- func (m *MockProvider) ProcessTimedOutMessages(ctx context.Context, queueName string, timeout time.Duration, ...) (int, error)
- func (m *MockProvider) RetryFailedMessages(ctx context.Context, queueName string, config RetryConfig, ...) (int, error)
- func (m *MockProvider) SetCheckpointTimestamp(ctx context.Context, timestamp time.Time) error
- func (m *MockProvider) Stop()
- func (m *MockProvider) Wait()
- type MockProviderMockRecorder
- func (mr *MockProviderMockRecorder) AdvanceCheckpointAndCleanup(ctx any) *gomock.Call
- func (mr *MockProviderMockRecorder) CheckHealth(ctx any) *gomock.Call
- func (mr *MockProviderMockRecorder) GetLatestProcessedTimestamp(ctx any) *gomock.Call
- func (mr *MockProviderMockRecorder) NewPubSubPublisher(ctx, channelName any) *gomock.Call
- func (mr *MockProviderMockRecorder) NewPubSubSubscriber(ctx, channelName any) *gomock.Call
- func (mr *MockProviderMockRecorder) NewQueueConsumer(ctx, queueName any) *gomock.Call
- func (mr *MockProviderMockRecorder) NewQueueProducer(ctx, queueName any) *gomock.Call
- func (mr *MockProviderMockRecorder) ProcessTimedOutMessages(ctx, queueName, timeout, handler any) *gomock.Call
- func (mr *MockProviderMockRecorder) RetryFailedMessages(ctx, queueName, config, handler any) *gomock.Call
- func (mr *MockProviderMockRecorder) SetCheckpointTimestamp(ctx, timestamp any) *gomock.Call
- func (mr *MockProviderMockRecorder) Stop() *gomock.Call
- func (mr *MockProviderMockRecorder) Wait() *gomock.Call
- type MockPubSubPublisher
- type MockPubSubPublisherMockRecorder
- type MockPubSubSubscriber
- type MockPubSubSubscriberMockRecorder
- type MockQueueConsumer
- func (m *MockQueueConsumer) Close()
- func (m *MockQueueConsumer) Complete(ctx context.Context, entryID string, body []byte, processingErr error) error
- func (m *MockQueueConsumer) Consume(ctx context.Context, handler ConsumeHandler) error
- func (m *MockQueueConsumer) EXPECT() *MockQueueConsumerMockRecorder
- type MockQueueConsumerMockRecorder
- type MockQueueProducer
- type MockQueueProducerMockRecorder
- type MockSubscription
- type MockSubscriptionMockRecorder
- type Provider
- type PubSubHandler
- type PubSubPublisher
- type PubSubSubscriber
- type QueueConsumer
- type QueueProducer
- type RetryConfig
- type Subscription
Constants ¶
This section is empty.
Variables ¶
var ErrCheckpointMissing = errors.New("checkpoint key missing from Redis")
ErrCheckpointMissing indicates that the checkpoint key is missing from Redis
Functions ¶
This section is empty.
Types ¶
type ConsumeHandler ¶
type ConsumeHandler func(ctx context.Context, payload []byte, entryID string, consumer QueueConsumer, log logrus.FieldLogger) error
type MockProvider ¶
type MockProvider struct {
// contains filtered or unexported fields
}
MockProvider is a mock of Provider interface.
func NewMockProvider ¶
func NewMockProvider(ctrl *gomock.Controller) *MockProvider
NewMockProvider creates a new mock instance.
func (*MockProvider) AdvanceCheckpointAndCleanup ¶ added in v0.10.0
func (m *MockProvider) AdvanceCheckpointAndCleanup(ctx context.Context) error
AdvanceCheckpointAndCleanup mocks base method.
func (*MockProvider) CheckHealth ¶ added in v0.10.0
func (m *MockProvider) CheckHealth(ctx context.Context) error
CheckHealth mocks base method.
func (*MockProvider) EXPECT ¶
func (m *MockProvider) EXPECT() *MockProviderMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockProvider) GetLatestProcessedTimestamp ¶ added in v0.10.0
GetLatestProcessedTimestamp mocks base method.
func (*MockProvider) NewPubSubPublisher ¶ added in v0.10.0
func (m *MockProvider) NewPubSubPublisher(ctx context.Context, channelName string) (PubSubPublisher, error)
NewPubSubPublisher mocks base method.
func (*MockProvider) NewPubSubSubscriber ¶ added in v0.10.0
func (m *MockProvider) NewPubSubSubscriber(ctx context.Context, channelName string) (PubSubSubscriber, error)
NewPubSubSubscriber mocks base method.
func (*MockProvider) NewQueueConsumer ¶ added in v0.10.0
func (m *MockProvider) NewQueueConsumer(ctx context.Context, queueName string) (QueueConsumer, error)
NewQueueConsumer mocks base method.
func (*MockProvider) NewQueueProducer ¶ added in v0.10.0
func (m *MockProvider) NewQueueProducer(ctx context.Context, queueName string) (QueueProducer, error)
NewQueueProducer mocks base method.
func (*MockProvider) ProcessTimedOutMessages ¶ added in v0.10.0
func (m *MockProvider) ProcessTimedOutMessages(ctx context.Context, queueName string, timeout time.Duration, handler func(string, []byte) error) (int, error)
ProcessTimedOutMessages mocks base method.
func (*MockProvider) RetryFailedMessages ¶ added in v0.10.0
func (m *MockProvider) RetryFailedMessages(ctx context.Context, queueName string, config RetryConfig, handler func(string, []byte, int) error) (int, error)
RetryFailedMessages mocks base method.
func (*MockProvider) SetCheckpointTimestamp ¶ added in v0.10.0
SetCheckpointTimestamp mocks base method.
type MockProviderMockRecorder ¶
type MockProviderMockRecorder struct {
// contains filtered or unexported fields
}
MockProviderMockRecorder is the mock recorder for MockProvider.
func (*MockProviderMockRecorder) AdvanceCheckpointAndCleanup ¶ added in v0.10.0
func (mr *MockProviderMockRecorder) AdvanceCheckpointAndCleanup(ctx any) *gomock.Call
AdvanceCheckpointAndCleanup indicates an expected call of AdvanceCheckpointAndCleanup.
func (*MockProviderMockRecorder) CheckHealth ¶ added in v0.10.0
func (mr *MockProviderMockRecorder) CheckHealth(ctx any) *gomock.Call
CheckHealth indicates an expected call of CheckHealth.
func (*MockProviderMockRecorder) GetLatestProcessedTimestamp ¶ added in v0.10.0
func (mr *MockProviderMockRecorder) GetLatestProcessedTimestamp(ctx any) *gomock.Call
GetLatestProcessedTimestamp indicates an expected call of GetLatestProcessedTimestamp.
func (*MockProviderMockRecorder) NewPubSubPublisher ¶ added in v0.10.0
func (mr *MockProviderMockRecorder) NewPubSubPublisher(ctx, channelName any) *gomock.Call
NewPubSubPublisher indicates an expected call of NewPubSubPublisher.
func (*MockProviderMockRecorder) NewPubSubSubscriber ¶ added in v0.10.0
func (mr *MockProviderMockRecorder) NewPubSubSubscriber(ctx, channelName any) *gomock.Call
NewPubSubSubscriber indicates an expected call of NewPubSubSubscriber.
func (*MockProviderMockRecorder) NewQueueConsumer ¶ added in v0.10.0
func (mr *MockProviderMockRecorder) NewQueueConsumer(ctx, queueName any) *gomock.Call
NewQueueConsumer indicates an expected call of NewQueueConsumer.
func (*MockProviderMockRecorder) NewQueueProducer ¶ added in v0.10.0
func (mr *MockProviderMockRecorder) NewQueueProducer(ctx, queueName any) *gomock.Call
NewQueueProducer indicates an expected call of NewQueueProducer.
func (*MockProviderMockRecorder) ProcessTimedOutMessages ¶ added in v0.10.0
func (mr *MockProviderMockRecorder) ProcessTimedOutMessages(ctx, queueName, timeout, handler any) *gomock.Call
ProcessTimedOutMessages indicates an expected call of ProcessTimedOutMessages.
func (*MockProviderMockRecorder) RetryFailedMessages ¶ added in v0.10.0
func (mr *MockProviderMockRecorder) RetryFailedMessages(ctx, queueName, config, handler any) *gomock.Call
RetryFailedMessages indicates an expected call of RetryFailedMessages.
func (*MockProviderMockRecorder) SetCheckpointTimestamp ¶ added in v0.10.0
func (mr *MockProviderMockRecorder) SetCheckpointTimestamp(ctx, timestamp any) *gomock.Call
SetCheckpointTimestamp indicates an expected call of SetCheckpointTimestamp.
func (*MockProviderMockRecorder) Stop ¶
func (mr *MockProviderMockRecorder) Stop() *gomock.Call
Stop indicates an expected call of Stop.
func (*MockProviderMockRecorder) Wait ¶
func (mr *MockProviderMockRecorder) Wait() *gomock.Call
Wait indicates an expected call of Wait.
type MockPubSubPublisher ¶ added in v0.10.0
type MockPubSubPublisher struct {
// contains filtered or unexported fields
}
MockPubSubPublisher is a mock of PubSubPublisher interface.
func NewMockPubSubPublisher ¶ added in v0.10.0
func NewMockPubSubPublisher(ctrl *gomock.Controller) *MockPubSubPublisher
NewMockPubSubPublisher creates a new mock instance.
func (*MockPubSubPublisher) Close ¶ added in v0.10.0
func (m *MockPubSubPublisher) Close()
Close mocks base method.
func (*MockPubSubPublisher) EXPECT ¶ added in v0.10.0
func (m *MockPubSubPublisher) EXPECT() *MockPubSubPublisherMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
type MockPubSubPublisherMockRecorder ¶ added in v0.10.0
type MockPubSubPublisherMockRecorder struct {
// contains filtered or unexported fields
}
MockPubSubPublisherMockRecorder is the mock recorder for MockPubSubPublisher.
func (*MockPubSubPublisherMockRecorder) Close ¶ added in v0.10.0
func (mr *MockPubSubPublisherMockRecorder) Close() *gomock.Call
Close indicates an expected call of Close.
type MockPubSubSubscriber ¶ added in v0.10.0
type MockPubSubSubscriber struct {
// contains filtered or unexported fields
}
MockPubSubSubscriber is a mock of PubSubSubscriber interface.
func NewMockPubSubSubscriber ¶ added in v0.10.0
func NewMockPubSubSubscriber(ctrl *gomock.Controller) *MockPubSubSubscriber
NewMockPubSubSubscriber creates a new mock instance.
func (*MockPubSubSubscriber) Close ¶ added in v0.10.0
func (m *MockPubSubSubscriber) Close()
Close mocks base method.
func (*MockPubSubSubscriber) EXPECT ¶ added in v0.10.0
func (m *MockPubSubSubscriber) EXPECT() *MockPubSubSubscriberMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockPubSubSubscriber) Subscribe ¶ added in v0.10.0
func (m *MockPubSubSubscriber) Subscribe(ctx context.Context, handler PubSubHandler) (Subscription, error)
Subscribe mocks base method.
type MockPubSubSubscriberMockRecorder ¶ added in v0.10.0
type MockPubSubSubscriberMockRecorder struct {
// contains filtered or unexported fields
}
MockPubSubSubscriberMockRecorder is the mock recorder for MockPubSubSubscriber.
func (*MockPubSubSubscriberMockRecorder) Close ¶ added in v0.10.0
func (mr *MockPubSubSubscriberMockRecorder) Close() *gomock.Call
Close indicates an expected call of Close.
type MockQueueConsumer ¶ added in v0.10.0
type MockQueueConsumer struct {
// contains filtered or unexported fields
}
MockQueueConsumer is a mock of QueueConsumer interface.
func NewMockQueueConsumer ¶ added in v0.10.0
func NewMockQueueConsumer(ctrl *gomock.Controller) *MockQueueConsumer
NewMockQueueConsumer creates a new mock instance.
func (*MockQueueConsumer) Close ¶ added in v0.10.0
func (m *MockQueueConsumer) Close()
Close mocks base method.
func (*MockQueueConsumer) Complete ¶ added in v0.10.0
func (m *MockQueueConsumer) Complete(ctx context.Context, entryID string, body []byte, processingErr error) error
Complete mocks base method.
func (*MockQueueConsumer) Consume ¶ added in v0.10.0
func (m *MockQueueConsumer) Consume(ctx context.Context, handler ConsumeHandler) error
Consume mocks base method.
func (*MockQueueConsumer) EXPECT ¶ added in v0.10.0
func (m *MockQueueConsumer) EXPECT() *MockQueueConsumerMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
type MockQueueConsumerMockRecorder ¶ added in v0.10.0
type MockQueueConsumerMockRecorder struct {
// contains filtered or unexported fields
}
MockQueueConsumerMockRecorder is the mock recorder for MockQueueConsumer.
func (*MockQueueConsumerMockRecorder) Close ¶ added in v0.10.0
func (mr *MockQueueConsumerMockRecorder) Close() *gomock.Call
Close indicates an expected call of Close.
type MockQueueProducer ¶ added in v0.10.0
type MockQueueProducer struct {
// contains filtered or unexported fields
}
MockQueueProducer is a mock of QueueProducer interface.
func NewMockQueueProducer ¶ added in v0.10.0
func NewMockQueueProducer(ctrl *gomock.Controller) *MockQueueProducer
NewMockQueueProducer creates a new mock instance.
func (*MockQueueProducer) Close ¶ added in v0.10.0
func (m *MockQueueProducer) Close()
Close mocks base method.
func (*MockQueueProducer) EXPECT ¶ added in v0.10.0
func (m *MockQueueProducer) EXPECT() *MockQueueProducerMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
type MockQueueProducerMockRecorder ¶ added in v0.10.0
type MockQueueProducerMockRecorder struct {
// contains filtered or unexported fields
}
MockQueueProducerMockRecorder is the mock recorder for MockQueueProducer.
func (*MockQueueProducerMockRecorder) Close ¶ added in v0.10.0
func (mr *MockQueueProducerMockRecorder) Close() *gomock.Call
Close indicates an expected call of Close.
type MockSubscription ¶ added in v0.10.0
type MockSubscription struct {
// contains filtered or unexported fields
}
MockSubscription is a mock of Subscription interface.
func NewMockSubscription ¶ added in v0.10.0
func NewMockSubscription(ctrl *gomock.Controller) *MockSubscription
NewMockSubscription creates a new mock instance.
func (*MockSubscription) Close ¶ added in v0.10.0
func (m *MockSubscription) Close()
Close mocks base method.
func (*MockSubscription) EXPECT ¶ added in v0.10.0
func (m *MockSubscription) EXPECT() *MockSubscriptionMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
type MockSubscriptionMockRecorder ¶ added in v0.10.0
type MockSubscriptionMockRecorder struct {
// contains filtered or unexported fields
}
MockSubscriptionMockRecorder is the mock recorder for MockSubscription.
func (*MockSubscriptionMockRecorder) Close ¶ added in v0.10.0
func (mr *MockSubscriptionMockRecorder) Close() *gomock.Call
Close indicates an expected call of Close.
type Provider ¶
type Provider interface {
NewQueueConsumer(ctx context.Context, queueName string) (QueueConsumer, error)
NewQueueProducer(ctx context.Context, queueName string) (QueueProducer, error)
NewPubSubPublisher(ctx context.Context, channelName string) (PubSubPublisher, error)
NewPubSubSubscriber(ctx context.Context, channelName string) (PubSubSubscriber, error)
ProcessTimedOutMessages(ctx context.Context, queueName string, timeout time.Duration, handler func(entryID string, body []byte) error) (int, error)
RetryFailedMessages(ctx context.Context, queueName string, config RetryConfig, handler func(entryID string, body []byte, retryCount int) error) (int, error)
Stop()
Wait()
// CheckHealth verifies the provider is operational (e.g. Redis PING)
CheckHealth(ctx context.Context) error
// GetLatestProcessedTimestamp returns the latest timestamp that can be safely checkpointed
// Returns the earliest in-flight task timestamp, or zero time if no in-flight tasks
GetLatestProcessedTimestamp(ctx context.Context) (time.Time, error)
// AdvanceCheckpointAndCleanup atomically advances the checkpoint by scanning in-flight tasks
// and cleans up completed tasks before the checkpoint timestamp
AdvanceCheckpointAndCleanup(ctx context.Context) error
// SetCheckpointTimestamp sets the checkpoint to a specific timestamp (for recovery)
SetCheckpointTimestamp(ctx context.Context, timestamp time.Time) error
}
func NewRedisProvider ¶ added in v0.4.0
func NewRedisProvider(ctx context.Context, log logrus.FieldLogger, processID string, hostname string, port uint, password api.SecureString, retryConfig RetryConfig) (Provider, error)
type PubSubHandler ¶ added in v0.10.0
PubSubHandler is called when a broadcast message is received
type PubSubPublisher ¶ added in v0.10.0
PubSubPublisher sends messages to all active subscribers on a channel
type PubSubSubscriber ¶ added in v0.10.0
type PubSubSubscriber interface {
Subscribe(ctx context.Context, handler PubSubHandler) (Subscription, error)
Close()
}
PubSubSubscriber creates subscriptions to receive broadcast messages from a channel
type QueueConsumer ¶ added in v0.10.0
type QueueProducer ¶ added in v0.10.0
type RetryConfig ¶ added in v0.10.0
type RetryConfig struct {
BaseDelay time.Duration // Base delay for exponential backoff
MaxRetries int // Maximum number of retry attempts
MaxDelay time.Duration // Maximum delay cap
JitterFactor float64 // Jitter factor (0.0 to 1.0)
}
RetryConfig holds configuration for exponential backoff retry logic
func DefaultRetryConfig ¶ added in v0.10.0
func DefaultRetryConfig() RetryConfig
DefaultRetryConfig returns a sensible default retry configuration
type Subscription ¶ added in v0.10.0
type Subscription interface {
Close()
}
Subscription represents an active subscription that can be closed independently