summaryrefslogtreecommitdiff
path: root/internal/converter
diff options
from:
to:
context:
space:
mode:
authorGravatar SayaAndy <montferrat@tuta.io> 2025-07-16 17:49:03 +0700
committerGravatar SayaAndy <montferrat@tuta.io> 2025-07-16 17:49:03 +0700
commitf968d443dc5c6e1f5140922313b0d6e8019fc269 (patch)
treeefe1507ec20feccbe408ca2b05303400546431b1 /internal/converter
parent4fa22c837cb00b87cd43c0aceec26729b8c3fa48 (diff)
downloadthumbnail-generator-f968d443dc5c6e1f5140922313b0d6e8019fc269.tar.gz
thumbnail-generator-f968d443dc5c6e1f5140922313b0d6e8019fc269.zip
feat: implement local-unix clients
Diffstat (limited to 'internal/converter')
-rw-r--r--internal/converter/converter_interface.go16
-rw-r--r--internal/converter/processor_interface.go8
-rw-r--r--internal/converter/webp.go2
3 files changed, 17 insertions, 9 deletions
diff --git a/internal/converter/converter_interface.go b/internal/converter/converter_interface.go
new file mode 100644
index 0000000..342ca1e
--- /dev/null
+++ b/internal/converter/converter_interface.go
@@ -0,0 +1,16 @@
+package converter
+
+import (
+ "io"
+
+ "github.com/SayaAndy/saya-today-thumbnail-generator/config"
+)
+
+type Converter interface {
+ DeductOutputPath(inputPath string) string
+ Process(ext string, reader io.ReadCloser, writer io.WriteCloser) error
+}
+
+var NewConverterMap = map[string]func(cfg *config.ConverterConfig) (Converter, error){
+ "webp": NewWebpConverter,
+}
diff --git a/internal/converter/processor_interface.go b/internal/converter/processor_interface.go
deleted file mode 100644
index 88b5ac3..0000000
--- a/internal/converter/processor_interface.go
+++ /dev/null
@@ -1,8 +0,0 @@
-package converter
-
-import "io"
-
-type Converter interface {
- DeductOutputPath(inputPath string) string
- Process(ext string, reader io.ReadCloser, writer io.WriteCloser) error
-}
diff --git a/internal/converter/webp.go b/internal/converter/webp.go
index b7f1216..8a9c09a 100644
--- a/internal/converter/webp.go
+++ b/internal/converter/webp.go
@@ -24,7 +24,7 @@ type WebpConverter struct {
quality int
}
-func NewWebpConverter(cfg *config.ConverterConfig) (*WebpConverter, error) {
+func NewWebpConverter(cfg *config.ConverterConfig) (Converter, error) {
if cfg.Type != "webp" {
return nil, fmt.Errorf("invalid storage type for WebpConverter")
}