1
This commit is contained in:
39
internal/file_manager/manager.go
Normal file
39
internal/file_manager/manager.go
Normal file
@@ -0,0 +1,39 @@
|
||||
package filemanager
|
||||
|
||||
import (
|
||||
"context"
|
||||
"mime/multipart"
|
||||
)
|
||||
|
||||
type FileType string
|
||||
|
||||
const (
|
||||
AvatarFileType FileType = "avatar"
|
||||
CVFileType FileType = "cv"
|
||||
)
|
||||
|
||||
type ParameterType string
|
||||
|
||||
const (
|
||||
UserIdParam ParameterType = "user_id"
|
||||
VacancyIdParam ParameterType = "vacancy_id"
|
||||
SubmissionIdParam ParameterType = "submission_id"
|
||||
)
|
||||
|
||||
type ParameterTable map[ParameterType]any
|
||||
|
||||
type UserFileManager interface {
|
||||
GetFilePaths(
|
||||
ctx context.Context,
|
||||
fileType FileType,
|
||||
parameters ParameterTable,
|
||||
) ([]string, error)
|
||||
|
||||
SaveFile(
|
||||
ctx context.Context,
|
||||
fileType FileType,
|
||||
file multipart.File,
|
||||
fileHeader *multipart.FileHeader,
|
||||
parameters ParameterTable,
|
||||
) error
|
||||
}
|
Reference in New Issue
Block a user