|
|
@ -43,6 +43,10 @@ func ConnectSpace(host, accessKey, secretKey, bucket string, maxSize int64, root |
|
|
|
// UploadFile uploads the file to the space. This does not do any checks on it, so the endpoints should
|
|
|
|
// ensure that's all okay.
|
|
|
|
func UploadFile(ctx context.Context, folder string, name string, mimeType string, reader io.Reader, size int64) (string, error) { |
|
|
|
if spaceClient == nil { |
|
|
|
return "", errors.New("This functionality is not enabled") |
|
|
|
} |
|
|
|
|
|
|
|
path := folder + "/" + name |
|
|
|
|
|
|
|
if size > spaceMaxSize { |
|
|
@ -69,6 +73,10 @@ func UploadFile(ctx context.Context, folder string, name string, mimeType string |
|
|
|
|
|
|
|
// RemoveFile removes a file from the space
|
|
|
|
func RemoveFile(folder string, name string) error { |
|
|
|
if spaceClient == nil { |
|
|
|
return errors.New("This functionality is not enabled") |
|
|
|
} |
|
|
|
|
|
|
|
path := folder + "/" + name |
|
|
|
|
|
|
|
return spaceClient.RemoveObject(spaceBucket, spaceRoot+"/"+path) |
|
|
@ -76,6 +84,10 @@ func RemoveFile(folder string, name string) error { |
|
|
|
|
|
|
|
// DownloadFile opens a file for download, using the same path format as the UploadFile function. Remember to Close it!
|
|
|
|
func DownloadFile(ctx context.Context, path string) (io.ReadCloser, error) { |
|
|
|
if spaceClient == nil { |
|
|
|
return nil, errors.New("This functionality is not enabled") |
|
|
|
} |
|
|
|
|
|
|
|
return spaceClient.GetObjectWithContext(ctx, spaceBucket, spaceRoot+"/"+path, minio.GetObjectOptions{}) |
|
|
|
} |
|
|
|
|
|
|
|