Documentation
¶
Index ¶
- type MetricsState
- type Queue
- func (queue *Queue) AckMsg(message *amqp.Message)
- func (queue *Queue) AddConsumer(consumer interfaces.Consumer, exclusive bool) error
- func (queue *Queue) ConnID() uint64
- func (queue *Queue) ConsumersCount() int
- func (queue *Queue) Delete(ifUnused bool, ifEmpty bool) (uint64, error)
- func (queue *Queue) EqualWithErr(qB *Queue) error
- func (queue *Queue) GetMetrics() *MetricsState
- func (queue *Queue) GetName() string
- func (queue *Queue) IsActive() bool
- func (queue *Queue) IsAutoDelete() bool
- func (queue *Queue) IsDurable() bool
- func (queue *Queue) IsExclusive() bool
- func (queue *Queue) Length() uint64
- func (queue *Queue) LoadFromMsgStorage()
- func (queue *Queue) Marshal(protoVersion string) (data []byte, err error)
- func (queue *Queue) Pause() error
- func (queue *Queue) Pop() *amqp.Message
- func (queue *Queue) PopQos(qosList []*qos.AmqpQos) *amqp.Message
- func (queue *Queue) Purge() (length uint64)
- func (queue *Queue) Push(message *amqp.Message)
- func (queue *Queue) RemoveConsumer(cTag string)
- func (queue *Queue) Requeue(message *amqp.Message)
- func (queue *Queue) SetMetrics(m *MetricsState)
- func (queue *Queue) Start() error
- func (queue *Queue) Stop() error
- func (queue *Queue) Unmarshal(data []byte, protoVersion string) (err error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MetricsState ¶
type MetricsState struct {
Ready *metrics.TrackCounter
Unacked *metrics.TrackCounter
Total *metrics.TrackCounter
Incoming *metrics.TrackCounter
Deliver *metrics.TrackCounter
Get *metrics.TrackCounter
Ack *metrics.TrackCounter
ServerReady *metrics.TrackCounter
ServerUnacked *metrics.TrackCounter
ServerTotal *metrics.TrackCounter
ServerDeliver *metrics.TrackCounter
ServerAck *metrics.TrackCounter
}
MetricsState represents current metrics states for queue
type Queue ¶
Queue is an implementation of the AMQP-queue entity
func NewQueue ¶
func NewQueue(name string, connID uint64, exclusive bool, autoDelete bool, durable bool, config config.Queue, msgStorageP interfaces.MsgStorage, msgStorageT interfaces.MsgStorage, autoDeleteQueue chan string) *Queue
NewQueue returns new instance of Queue
func (*Queue) AddConsumer ¶
func (queue *Queue) AddConsumer(consumer interfaces.Consumer, exclusive bool) error
AddConsumer add consumer to consumer messages with exclusive check
func (*Queue) ConsumersCount ¶
ConsumersCount returns consumers count
func (*Queue) EqualWithErr ¶
EqualWithErr returns is given queue equal to current
func (*Queue) GetMetrics ¶
func (queue *Queue) GetMetrics() *MetricsState
GetMetrics returns metrics
func (*Queue) IsAutoDelete ¶
IsAutoDelete returns is queue should be deleted automatically
func (*Queue) IsExclusive ¶
IsExclusive returns is queue exclusive
func (*Queue) LoadFromMsgStorage ¶
func (queue *Queue) LoadFromMsgStorage()
LoadFromMsgStorage loads messages into queue from msgstorage
func (*Queue) Pause ¶ added in v0.0.2
Pause stops main queue loop After stop no one can send or receive messages from queue
func (*Queue) Push ¶
Push append message into queue tail and put it into message storage if queue is durable and message's persistent flag is true
func (*Queue) RemoveConsumer ¶
RemoveConsumer remove consumer If it was last consumer and queue is auto-delete - queue will be removed
func (*Queue) SetMetrics ¶
func (queue *Queue) SetMetrics(m *MetricsState)
SetMetrics set external metrics
func (*Queue) Start ¶
Start starts base queue loop to send events to consumers Current consumer to handle message from queue selected by round robin