Documentation
¶
Index ¶
- type Director
- func (director *Director) Consume(delivery rmq.Delivery)
- func (director *Director) DestroyQueue() (ready, rejected int64, err error)
- func (director *Director) JobInfo(ctx context.Context, jobID uuid.UUID) (string, error)
- func (director *Director) KillJob(ctx context.Context, jobID uuid.UUID) (string, error)
- func (director *Director) PurgeReady() (ready int64, err error)
- func (director *Director) SendToQueue(job *transcoder.Job) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Director ¶
type Director struct {
// contains filtered or unexported fields
}
Director connects to rmq.Queue to submit, consume, reject, and ack deliveries Any consumed deliveries are sent to the job queue
func NewDirector ¶
func NewDirector(queueName string, workerNum int, redisClient redis.UniversalClient, jobUpdatesChan chan *transcoder.JobStatus) (*Director, error)
NewDirector opens rmq.Queue and starts worker pool to run jobs Director both Consumes and Submits rmq deliveries
func (*Director) Consume ¶
func (director *Director) Consume(delivery rmq.Delivery)
Consume - implement rmq interface to receive jobs from redis queue
func (*Director) DestroyQueue ¶
DestroyQueue remove any running or queued jobs
func (*Director) JobInfo ¶
JobInfo - use pubsub to get job info from the director of the running jobID
func (*Director) KillJob ¶
KillJob - use pubsub to send kill command to attached director for running jobID
func (*Director) PurgeReady ¶
PurgeReady remove any unAcked jobs before work is started
func (*Director) SendToQueue ¶
func (director *Director) SendToQueue(job *transcoder.Job) error
SendToQueue send new job to rmq.Queue to be picked up by any listening directors