blob: d49616e7c265bad7c90738ac637f0789bd303308 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
package oooold
// Broker manages set of pipelines and provides ability to push jobs into them.
type Broker interface {
// Register broker pipeline.
Register(pipe *Pipeline) error
// Consume configures pipeline to be consumed. With execPool to nil to disable pipelines. Method can be called before
// the service is started!
Consume(pipe *Pipeline, execPool chan Handler, errHandler ErrorHandler) error
// Push job into the worker.
Push(pipe *Pipeline, j *Job) (string, error)
// Stat must fetch statistics about given pipeline or return error.
Stat(pipe *Pipeline) (stat *Stat, err error)
}
// EventProvider defines the ability to throw events for the broker.
type EventProvider interface {
// Listen attaches the even listener.
Listen(lsn func(event int, ctx interface{}))
}
// Stat contains information about pipeline.
type Stat struct {
// Pipeline name.
Pipeline string
// Broken is name of associated broker.
Broker string
// InternalName defines internal broker specific pipeline name.
InternalName string
// Consuming indicates that pipeline is pipelines jobs.
Consuming bool
// testQueue defines number of pending jobs.
Queue int64
// Active defines number of jobs which are currently being processed.
Active int64
// Delayed defines number of jobs which are being processed.
Delayed int64
}
|