Documentation ¶
Overview ¶
Package client is a generated GoMock package.
Index ¶
- Constants
- Variables
- func StartDequeuer(ctx context.Context, cli Client, opts ...DequeueOptions) (<-chan *Message, error)
- type Client
- type DequeueOptions
- type EnqueueOptions
- type Message
- type Metadata
- type MockClient
- func (m *MockClient) Dequeue(arg0 context.Context, arg1 QueueClientConfig) (*Message, error)
- func (m *MockClient) EXPECT() *MockClientMockRecorder
- func (m *MockClient) Enqueue(arg0 context.Context, arg1 *Message, arg2 ...EnqueueOptions) error
- func (m *MockClient) ExtendMessage(arg0 context.Context, arg1 *Message) error
- func (m *MockClient) FinishMessage(arg0 context.Context, arg1 *Message) error
- type MockClientMockRecorder
- func (mr *MockClientMockRecorder) Dequeue(arg0, arg1 any) *gomock.Call
- func (mr *MockClientMockRecorder) Enqueue(arg0, arg1 any, arg2 ...any) *gomock.Call
- func (mr *MockClientMockRecorder) ExtendMessage(arg0, arg1 any) *gomock.Call
- func (mr *MockClientMockRecorder) FinishMessage(arg0, arg1 any) *gomock.Call
- type QueueClientConfig
Constants ¶
const (
// JSONContentType represents the json content type of queue message.
JSONContentType = "application/json"
)
Variables ¶
var ( // ErrDequeuedMessage represents the error when message has already been dequeued. ErrDequeuedMessage = errors.New("message was dequeued by the other client") // ErrMessageNotFound represents the error when queue is empty or all messages are leased by clients. ErrMessageNotFound = errors.New("queue is empty or messages are leased") // ErrInvalidMessage represents the error when the message has already been requeued. ErrInvalidMessage = errors.New("this message has been requeued or deleted") // ErrUnsupportedContentType represents the error when the content type is unsupported. ErrUnsupportedContentType = errors.New("this message content type is unsupported") // ErrEmptyMessage represents nil or empty Message. ErrEmptyMessage = errors.New("message must not be nil or message is empty") )
Functions ¶
func StartDequeuer ¶
func StartDequeuer(ctx context.Context, cli Client, opts ...DequeueOptions) (<-chan *Message, error)
StartDequeuer starts a dequeuer to consume the message from the queue and return the output channel.
Types ¶
type Client ¶
type Client interface { // Enqueue enqueues message to queue. Enqueue(ctx context.Context, msg *Message, opts ...EnqueueOptions) error // Dequeue dequeues message from queue. Dequeue(ctx context.Context, cfg QueueClientConfig) (*Message, error) // FinishMessage finishes or deletes the message in the queue. FinishMessage(ctx context.Context, msg *Message) error // ExtendMessage extends the message lock. ExtendMessage(ctx context.Context, msg *Message) error }
Client is an interface to implement queue operations.
type DequeueOptions ¶
type DequeueOptions interface { // ApplyDequeueOption applies DequeueOptions to QueueClientConfig. ApplyDequeueOption(QueueClientConfig) QueueClientConfig // contains filtered or unexported methods }
func WithDequeueInterval ¶
func WithDequeueInterval(t time.Duration) DequeueOptions
WithDequeueInterval sets dequeueing interval.
type EnqueueOptions ¶
type EnqueueOptions interface {
// contains filtered or unexported methods
}
EnqueueOptions applies an option to Enqueue().
type Metadata ¶
type Metadata struct { // ID represents the unique id of message. ID string // DequeueCount represents the number of dequeue. DequeueCount int // EnqueueAt represents the time when enqueuing the message EnqueueAt time.Time // ExpireAt represents the expiry of the message. ExpireAt time.Time // NextVisibleAt represents the next visible time after dequeuing the message. NextVisibleAt time.Time }
Metadata represents the metadata of queue message.
type MockClient ¶
type MockClient struct {
// contains filtered or unexported fields
}
MockClient is a mock of Client interface.
func NewMockClient ¶
func NewMockClient(ctrl *gomock.Controller) *MockClient
NewMockClient creates a new mock instance.
func (*MockClient) Dequeue ¶
func (m *MockClient) Dequeue(arg0 context.Context, arg1 QueueClientConfig) (*Message, error)
Dequeue mocks base method.
func (*MockClient) EXPECT ¶
func (m *MockClient) EXPECT() *MockClientMockRecorder
EXPECT returns an object that allows the caller to indicate expected use.
func (*MockClient) Enqueue ¶
func (m *MockClient) Enqueue(arg0 context.Context, arg1 *Message, arg2 ...EnqueueOptions) error
Enqueue mocks base method.
func (*MockClient) ExtendMessage ¶
func (m *MockClient) ExtendMessage(arg0 context.Context, arg1 *Message) error
ExtendMessage mocks base method.
func (*MockClient) FinishMessage ¶
func (m *MockClient) FinishMessage(arg0 context.Context, arg1 *Message) error
FinishMessage mocks base method.
type MockClientMockRecorder ¶
type MockClientMockRecorder struct {
// contains filtered or unexported fields
}
MockClientMockRecorder is the mock recorder for MockClient.
func (*MockClientMockRecorder) Dequeue ¶
func (mr *MockClientMockRecorder) Dequeue(arg0, arg1 any) *gomock.Call
Dequeue indicates an expected call of Dequeue.
func (*MockClientMockRecorder) Enqueue ¶
func (mr *MockClientMockRecorder) Enqueue(arg0, arg1 any, arg2 ...any) *gomock.Call
Enqueue indicates an expected call of Enqueue.
func (*MockClientMockRecorder) ExtendMessage ¶
func (mr *MockClientMockRecorder) ExtendMessage(arg0, arg1 any) *gomock.Call
ExtendMessage indicates an expected call of ExtendMessage.
func (*MockClientMockRecorder) FinishMessage ¶
func (mr *MockClientMockRecorder) FinishMessage(arg0, arg1 any) *gomock.Call
FinishMessage indicates an expected call of FinishMessage.
type QueueClientConfig ¶
type QueueClientConfig struct { // DequeueIntervalDuration is the time duration between 2 successive dequeue attempts on the queue DequeueIntervalDuration time.Duration }
QueueClientConfig is a configuration for queue client APIs.
func NewDequeueConfig ¶
func NewDequeueConfig(opts ...DequeueOptions) QueueClientConfig
NewDequeueConfig returns new queue config for StartDequeuer().