diff options
author | Valery Piashchynski <[email protected]> | 2021-08-12 15:38:19 +0300 |
---|---|---|
committer | GitHub <[email protected]> | 2021-08-12 15:38:19 +0300 |
commit | df27287c78d7b17d7c8f0e7fff59fa7cbf2a4f9f (patch) | |
tree | df0749155487eae6bcdbb2456885131a21916f4d /common/jobs/interface.go | |
parent | 67db4b5f7b66e9a32713133baed83c3ab7146bb8 (diff) | |
parent | ecbfc5c5265a9895f4e371ce4388f64df8714e63 (diff) |
#726: feat(plugin): new `jobs` plugin
#726: feat(plugin): new `jobs` plugin
Diffstat (limited to 'common/jobs/interface.go')
-rw-r--r-- | common/jobs/interface.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/common/jobs/interface.go b/common/jobs/interface.go new file mode 100644 index 00000000..c957df2b --- /dev/null +++ b/common/jobs/interface.go @@ -0,0 +1,26 @@ +package jobs + +import ( + "context" + + "github.com/spiral/roadrunner/v2/pkg/events" + priorityqueue "github.com/spiral/roadrunner/v2/pkg/priority_queue" + "github.com/spiral/roadrunner/v2/plugins/jobs/job" + "github.com/spiral/roadrunner/v2/plugins/jobs/pipeline" +) + +// Consumer todo naming +type Consumer interface { + Push(ctx context.Context, job *job.Job) error + Register(ctx context.Context, pipeline *pipeline.Pipeline) error + Run(ctx context.Context, pipeline *pipeline.Pipeline) error + Stop(ctx context.Context) error + + Pause(ctx context.Context, pipeline string) + Resume(ctx context.Context, pipeline string) +} + +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) +} |