diff options
Diffstat (limited to 'common/jobs/interface.go')
-rw-r--r-- | common/jobs/interface.go | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/common/jobs/interface.go b/common/jobs/interface.go index c957df2b..4b5ff70e 100644 --- a/common/jobs/interface.go +++ b/common/jobs/interface.go @@ -5,11 +5,12 @@ import ( "github.com/spiral/roadrunner/v2/pkg/events" priorityqueue "github.com/spiral/roadrunner/v2/pkg/priority_queue" + jobState "github.com/spiral/roadrunner/v2/pkg/state/job" "github.com/spiral/roadrunner/v2/plugins/jobs/job" "github.com/spiral/roadrunner/v2/plugins/jobs/pipeline" ) -// Consumer todo naming +// Consumer represents a single jobs driver interface type Consumer interface { Push(ctx context.Context, job *job.Job) error Register(ctx context.Context, pipeline *pipeline.Pipeline) error @@ -18,8 +19,12 @@ type Consumer interface { Pause(ctx context.Context, pipeline string) Resume(ctx context.Context, pipeline string) + + // State provide information about driver state + State(ctx context.Context) (*jobState.State, error) } +// Constructor constructs Consumer interface. Endure abstraction. type Constructor interface { JobsConstruct(configKey string, e events.Handler, queue priorityqueue.Queue) (Consumer, error) FromPipeline(pipe *pipeline.Pipeline, e events.Handler, queue priorityqueue.Queue) (Consumer, error) |