Versions in this module Expand all Collapse all v0 v0.1.0 May 3, 2018 Changes in this version + var ErrAlreadyClosed = errors.NewKind("already closed") + var ErrCantAck = errors.NewKind("can't acknowledge this message, it does not come from a queue") + var ErrConnectionFailed = errors.NewKind("failed to connect to RabbitMQ: %s") + var ErrEmptyJob = errors.NewKind("invalid empty job") + var ErrOpenChannel = errors.NewKind("failed to open a channel: %s") + var ErrRepublishingJobs = errors.NewKind("couldn't republish some jobs : %s") + var ErrRetrievingHeader = errors.NewKind("error retrieving '%s' header from message %s") + var ErrTxNotSupported = errors.NewKind("transactions not supported") + var ErrUnsupportedProtocol = errors.NewKind("unsupported protocol") + type AMQPAcknowledger struct + func (a *AMQPAcknowledger) Ack() error + func (a *AMQPAcknowledger) Reject(requeue bool) error + type AMQPBroker struct + func (b *AMQPBroker) Close() error + func (b *AMQPBroker) Queue(name string) (Queue, error) + type AMQPJobIter struct + func (i *AMQPJobIter) Close() error + func (i *AMQPJobIter) Next() (*Job, error) + type AMQPQueue struct + func (q *AMQPQueue) Consume(advertisedWindow int) (JobIter, error) + func (q *AMQPQueue) Publish(j *Job) error + func (q *AMQPQueue) PublishDelayed(j *Job, delay time.Duration) error + func (q *AMQPQueue) RepublishBuried(conditions ...RepublishConditionFunc) error + func (q *AMQPQueue) Transaction(txcb TxCallback) error + type Acknowledger interface + Ack func() error + Reject func(requeue bool) error + type Broker interface + Close func() error + Queue func(string) (Queue, error) + func NewAMQPBroker(url string) (Broker, error) + func NewBroker(uri string) (Broker, error) + func NewMemoryBroker() Broker + type Job struct + ErrorType string + ID string + Priority Priority + Retries int32 + Timestamp time.Time + func NewJob() (*Job, error) + func (j *Job) Ack() error + func (j *Job) Decode(payload interface{}) error + func (j *Job) Encode(payload interface{}) error + func (j *Job) Reject(requeue bool) error + func (j *Job) SetPriority(priority Priority) + type JobIter interface + Next func() (*Job, error) + type Priority uint8 + const PriorityLow + const PriorityNormal + const PriorityUrgent + type Queue interface + Consume func(advertisedWindow int) (JobIter, error) + Publish func(*Job) error + PublishDelayed func(*Job, time.Duration) error + RepublishBuried func(conditions ...RepublishConditionFunc) error + Transaction func(TxCallback) error + type RepublishConditionFunc func(job *Job) bool + type TxCallback func(q Queue) error