wip: processing images
This commit is contained in:
@@ -22,7 +22,7 @@ type ImageProcessor struct {
|
||||
|
||||
// TODO: add the notifier here
|
||||
|
||||
processor *Processor[model.Image]
|
||||
Processor *Processor[model.Image]
|
||||
}
|
||||
|
||||
func (p *ImageProcessor) setImageToProcess(ctx context.Context, image model.Image) {
|
||||
@@ -66,6 +66,8 @@ func (p *ImageProcessor) extractInfo(ctx context.Context, image model.Image) {
|
||||
}
|
||||
|
||||
func (p *ImageProcessor) processImage(image model.Image) {
|
||||
p.logger.Info("Processing image", "ID", image.ID)
|
||||
|
||||
ctx := context.Background()
|
||||
|
||||
p.setImageToProcess(ctx, image)
|
||||
@@ -86,10 +88,10 @@ func (p *ImageProcessor) processImage(image model.Image) {
|
||||
wg.Wait()
|
||||
}
|
||||
|
||||
func CreateImageProcessor(logger *log.Logger, imageModel models.ImageModel) ImageProcessor {
|
||||
func NewImageProcessor(logger *log.Logger, imageModel models.ImageModel) ImageProcessor {
|
||||
imageProcessor := ImageProcessor{imageModel: imageModel, logger: logger}
|
||||
|
||||
imageProcessor.processor = NewProcessor(int(IMAGE_PROCESS_AT_A_TIME), imageProcessor.processImage)
|
||||
imageProcessor.Processor = NewProcessor(int(IMAGE_PROCESS_AT_A_TIME), imageProcessor.processImage)
|
||||
|
||||
return imageProcessor
|
||||
}
|
||||
|
||||
@@ -11,6 +11,10 @@ func (p *Processor[TMessage]) Work() {
|
||||
}
|
||||
}
|
||||
|
||||
func (p *Processor[TMessage]) Add(msg TMessage) {
|
||||
p.queue <- msg
|
||||
}
|
||||
|
||||
func NewProcessor[TMessage any](bufferSize int, process func(message TMessage)) *Processor[TMessage] {
|
||||
return &Processor[TMessage]{
|
||||
queue: make(chan TMessage, bufferSize),
|
||||
|
||||
Reference in New Issue
Block a user