forked from gongxuegit/tiku-backend.net
feat: add aliyun oss storage foundation
This commit is contained in:
25
Tiku.Application/Storage/IObjectStorageService.cs
Normal file
25
Tiku.Application/Storage/IObjectStorageService.cs
Normal file
@@ -0,0 +1,25 @@
|
||||
namespace Tiku.Application.Storage;
|
||||
|
||||
public interface IObjectStorageService
|
||||
{
|
||||
string ConfiguredDefaultProvider();
|
||||
string ConfiguredDefaultBucket();
|
||||
string NormalizeProvider(string? value, string? fallback = null);
|
||||
string ValidateObjectKey(Guid tenantId, string objectKey);
|
||||
string ValidateMimeType(string mimeType);
|
||||
long? ValidateFileSize(long? fileSizeBytes);
|
||||
void AssertUploadProvider(string provider);
|
||||
void AssertWritableLocation(StorageAssetLocation location);
|
||||
|
||||
Task<ObjectStorageSignedUrl> SignUploadAsync(
|
||||
ObjectStorageUploadSignRequest request,
|
||||
CancellationToken cancellationToken = default);
|
||||
|
||||
Task<ObjectStorageSignedUrl> SignDownloadAsync(
|
||||
ObjectStorageDownloadSignRequest request,
|
||||
CancellationToken cancellationToken = default);
|
||||
|
||||
Task<ObjectStorageMetadata> HeadObjectAsync(
|
||||
ObjectStorageHeadRequest request,
|
||||
CancellationToken cancellationToken = default);
|
||||
}
|
||||
Reference in New Issue
Block a user