Documentation
¶
Index ¶
- type Config
- type Manager
- func (m *Manager) AckMessage(ctx context.Context, clientID, messageID string) error
- func (m *Manager) CreateQueue(ctx context.Context, queue *types.Queue) error
- func (m *Manager) DeleteQueue(ctx context.Context, queueName string) error
- func (m *Manager) GetClientInfo(ctx context.Context, clientID string) (*types.Client, error)
- func (m *Manager) GetQueueStats(ctx context.Context, queueName string) (*types.QueueStats, error)
- func (m *Manager) NackMessage(ctx context.Context, clientID, messageID string, reason string) error
- func (m *Manager) ReceiveMessages(ctx context.Context, clientID string, limit int) ([]*types.Message, error)
- func (m *Manager) RegisterClient(ctx context.Context, client *types.Client) error
- func (m *Manager) SendDirectMessage(ctx context.Context, from, to string, payload []byte, opts ...MessageOption) (*types.Message, error)
- func (m *Manager) Start() error
- func (m *Manager) Stop() error
- func (m *Manager) SubmitTask(ctx context.Context, from, topic string, payload []byte, opts ...MessageOption) (*types.Message, error)
- func (m *Manager) SubscribeToTopic(ctx context.Context, clientID, topic string) error
- func (m *Manager) UnregisterClient(ctx context.Context, clientID string) error
- func (m *Manager) UnsubscribeFromTopic(ctx context.Context, clientID, topic string) error
- func (m *Manager) UpdateClientActivity(ctx context.Context, clientID string) error
- type MessageOption
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
WorkerPoolSize int
MessageTimeout time.Duration
ExpiryCheckInterval time.Duration
RetryInterval time.Duration
}
Config holds queue manager configuration
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
Manager handles queue operations and message routing
func NewManager ¶
NewManager creates a new queue manager
func (*Manager) AckMessage ¶
AckMessage acknowledges successful message processing
func (*Manager) CreateQueue ¶
CreateQueue creates a new queue
func (*Manager) DeleteQueue ¶
DeleteQueue deletes a queue
func (*Manager) GetClientInfo ¶
GetClientInfo returns information about a client
func (*Manager) GetQueueStats ¶
GetQueueStats returns statistics for a queue
func (*Manager) NackMessage ¶
NackMessage acknowledges failed message processing
func (*Manager) ReceiveMessages ¶
func (m *Manager) ReceiveMessages(ctx context.Context, clientID string, limit int) ([]*types.Message, error)
ReceiveMessages receives messages for a client
func (*Manager) RegisterClient ¶
RegisterClient registers a new client
func (*Manager) SendDirectMessage ¶
func (m *Manager) SendDirectMessage(ctx context.Context, from, to string, payload []byte, opts ...MessageOption) (*types.Message, error)
SendDirectMessage sends a direct message to a client
func (*Manager) SubmitTask ¶
func (m *Manager) SubmitTask(ctx context.Context, from, topic string, payload []byte, opts ...MessageOption) (*types.Message, error)
SubmitTask submits a task message to a topic
func (*Manager) SubscribeToTopic ¶
SubscribeToTopic subscribes a client to a topic
func (*Manager) UnregisterClient ¶
UnregisterClient unregisters a client
func (*Manager) UnsubscribeFromTopic ¶
UnsubscribeFromTopic unsubscribes a client from a topic
type MessageOption ¶
MessageOption is a function that modifies a message
func WithMaxRetries ¶
func WithMaxRetries(maxRetries int) MessageOption
WithMaxRetries sets the maximum retry count
func WithMetadata ¶
func WithMetadata(key, value string) MessageOption
WithMetadata adds metadata to the message
func WithPriority ¶
func WithPriority(priority int) MessageOption
WithPriority sets the message priority