Diffstat (limited to 'internal/client/output/output_client_interface.go')
| -rw-r--r-- | internal/client/output/output_client_interface.go | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/internal/client/output/output_client_interface.go b/internal/client/output/output_client_interface.go index 4ec4728..4415aa4 100644 --- a/internal/client/output/output_client_interface.go +++ b/internal/client/output/output_client_interface.go @@ -4,12 +4,13 @@ import ( "io" "time" + "github.com/SayaAndy/saya-today-thumbnail-generator/config" "github.com/SayaAndy/saya-today-thumbnail-generator/internal/client/input" ) type OutputClient interface { - GetWriter(path string, inputMetadata *input.MetadataStruct) (io.WriteCloser, error) - ReadMetadata(string) (*MetadataStruct, error) + GetWriter(path string, inputMetadata *input.MetadataStruct, outputContentType string) (io.WriteCloser, error) + ReadMetadata(path string) (*MetadataStruct, error) IsMissing(path string) bool } @@ -21,5 +22,12 @@ type MetadataStruct struct { ContentType string FirstCreated time.Time LastModified time.Time + Size int64 Misc map[string]string } + +var NewOutputClientMap = map[string]func(cfg *config.OutputConfig) (OutputClient, error){ + "b2": NewB2OutputClient, + "s3": NewS3OutputClient, + "local-unix": NewLocalUnixOutputClient, +} |