diff options
author | Gabriel Arakaki Giovanini <mail@gabrielgio.me> | 2023-08-19 16:24:42 +0200 |
---|---|---|
committer | Gabriel Arakaki Giovanini <mail@gabrielgio.me> | 2023-08-19 16:28:43 +0200 |
commit | b242ed3c44f4dde7c4b452312b78a3b02f42ea65 (patch) | |
tree | 1a9cc1b68e4a94e530c5e2596c645a698c4a656e /pkg/worker/list_processor.go | |
parent | 84f80cdc4d27c3274c74f98255bf90c713e89a85 (diff) | |
download | lens-b242ed3c44f4dde7c4b452312b78a3b02f42ea65.tar.gz lens-b242ed3c44f4dde7c4b452312b78a3b02f42ea65.tar.bz2 lens-b242ed3c44f4dde7c4b452312b78a3b02f42ea65.zip |
feat: Add task loop
Now the tasks will loop every given time. With this it will be able to
pick up new photos after the application was started.
I added 2h for file because my personal photo gallery is quite big and
quite IO bottled necked so it tasks a lot of time to go through.
Diffstat (limited to 'pkg/worker/list_processor.go')
-rw-r--r-- | pkg/worker/list_processor.go | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/pkg/worker/list_processor.go b/pkg/worker/list_processor.go index 02817c9..ea6b453 100644 --- a/pkg/worker/list_processor.go +++ b/pkg/worker/list_processor.go @@ -10,7 +10,7 @@ import ( type ( - // A simple worker to deal with list. + // A simple task to deal with list. ChanProcessor[T any] interface { Query(context.Context) (<-chan T, error) Process(context.Context, T) error @@ -25,62 +25,62 @@ type ( Process(context.Context, T) error } - chanProcessorWorker[T any] struct { + chanProcessorTask[T any] struct { chanProcessor ChanProcessor[T] logrus *logrus.Entry scheduler *Scheduler } - batchProcessorWorker[T any] struct { + batchProcessorTask[T any] struct { batchProcessor ListProcessor[T] logrus *logrus.Entry scheduler *Scheduler } - serialProcessorWorker[T any] struct { + serialProcessorTask[T any] struct { batchProcessor ListProcessor[T] logrus *logrus.Entry scheduler *Scheduler } ) -func NewWorkerFromBatchProcessor[T any]( +func NewTaskFromBatchProcessor[T any]( batchProcessor ListProcessor[T], scheduler *Scheduler, logrus *logrus.Entry, -) Worker { - return &batchProcessorWorker[T]{ +) Task { + return &batchProcessorTask[T]{ batchProcessor: batchProcessor, scheduler: scheduler, logrus: logrus, } } -func NewWorkerFromSerialProcessor[T any]( +func NewTaskFromSerialProcessor[T any]( batchProcessor ListProcessor[T], scheduler *Scheduler, logrus *logrus.Entry, -) Worker { - return &serialProcessorWorker[T]{ +) Task { + return &serialProcessorTask[T]{ batchProcessor: batchProcessor, scheduler: scheduler, logrus: logrus, } } -func NewWorkerFromChanProcessor[T any]( +func NewTaskFromChanProcessor[T any]( chanProcessor ChanProcessor[T], scheduler *Scheduler, logrus *logrus.Entry, -) Worker { - return &chanProcessorWorker[T]{ +) Task { + return &chanProcessorTask[T]{ chanProcessor: chanProcessor, scheduler: scheduler, logrus: logrus, } } -func (l *batchProcessorWorker[T]) Start(ctx context.Context) error { +func (l *batchProcessorTask[T]) Start(ctx context.Context) error { for { values, err := l.batchProcessor.Query(ctx) if err != nil { @@ -123,7 +123,7 @@ func (l *batchProcessorWorker[T]) Start(ctx context.Context) error { } } -func (l *serialProcessorWorker[T]) Start(ctx context.Context) error { +func (l *serialProcessorTask[T]) Start(ctx context.Context) error { for { values, err := l.batchProcessor.Query(ctx) if err != nil { @@ -158,7 +158,7 @@ func (l *serialProcessorWorker[T]) Start(ctx context.Context) error { } } -func (l *chanProcessorWorker[T]) Start(ctx context.Context) error { +func (l *chanProcessorTask[T]) Start(ctx context.Context) error { c, err := l.chanProcessor.Query(ctx) if err != nil { return err |