summaryrefslogtreecommitdiff
path: root/internal/client/input/input_client_interface.go
diff refs
from: back
to: back
| flip
diff options
context:
space:
mode:
Diffstat (limited to 'internal/client/input/input_client_interface.go')
-rw-r--r--internal/client/input/input_client_interface.go10
1 files changed, 10 insertions, 0 deletions
diff --git a/internal/client/input/input_client_interface.go b/internal/client/input/input_client_interface.go
index c896ca4..dca64db 100644
--- a/internal/client/input/input_client_interface.go
+++ b/internal/client/input/input_client_interface.go
@@ -3,12 +3,15 @@ package input
import (
"io"
"time"
+
+ "github.com/SayaAndy/saya-today-thumbnail-generator/config"
)
type InputClient interface {
Scan() ([]string, error)
ReadMetadata(string) (*MetadataStruct, error)
GetReader(string) (io.ReadCloser, error)
+ ID(path string) string
}
type MetadataStruct struct {
@@ -18,5 +21,12 @@ type MetadataStruct struct {
ContentType string
FirstCreated time.Time
LastModified time.Time
+ Size int64
Misc map[string]string
}
+
+var NewInputClientMap = map[string]func(cfg *config.InputConfig) (InputClient, error){
+ "b2": NewB2InputClient,
+ "s3": NewS3InputClient,
+ "local-unix": NewLocalUnixInputClient,
+}