Files
ttstd-infinite-canvas/backend/internal/app/storage_adapters.go

67 lines
2.9 KiB
Go

package app
import (
"time"
"infinite-canvas/backend/internal/storage"
)
type ossSettingValue = storage.Settings
type ossProviderCredentials = storage.Credentials
type ossObjectStream = storage.ObjectStream
func (s *Service) storageSettingWithRuntimePolicy(setting ossSettingValue) ossSettingValue {
setting = normalizeOSSSetting(setting)
policy, err := s.RuntimePolicy()
if err != nil {
return setting
}
setting.Runtime = storage.RuntimePolicy{
TransferTimeout: time.Duration(policy.Storage.TransferTimeoutSeconds) * time.Second,
AccessURLTTL: time.Duration(policy.Storage.AccessURLTTLSeconds) * time.Second,
ProviderAccessURLTTL: time.Duration(policy.Storage.ProviderAccessURLTTLSeconds) * time.Second,
MaxBufferedUploadSize: policy.Storage.NonSeekableBufferMB * 1024 * 1024,
ErrorBodyLimit: policy.Storage.ErrorBodyKB * 1024,
}
return normalizeOSSSetting(setting)
}
var (
putOSSObject = storage.PutOSSObject
getOSSObjectRange = storage.GetOSSObjectRange
getAliyunOSSObjectRange = storage.GetAliyunOSSObjectRange
signedOSSObjectURL = storage.SignedOSSObjectURL
signedOriginObjectURL = storage.SignedOriginObjectURL
getOriginOSSObjectRange = storage.GetOriginObjectRange
signedAliyunOSSObjectURL = storage.SignedAliyunOSSObjectURL
putCOSObject = storage.PutCOSObject
putQiniuObject = storage.PutQiniuObject
getCOSObjectRange = storage.GetCOSObjectRange
getQiniuObjectRange = storage.GetQiniuObjectRange
signedCOSObjectURL = storage.SignedCOSObjectURL
signedQiniuObjectURL = storage.SignedQiniuObjectURL
signedQiniuS3ObjectURL = storage.SignedQiniuS3ObjectURL
qiniuS3Region = storage.QiniuS3Region
qiniuRegion = storage.QiniuRegion
newCOSClient = storage.NewCOSClient
cosBucketBaseURL = storage.CosBucketBaseURL
ossCDNBaseURL = storage.OssCDNBaseURL
ossCDNObjectURL = storage.OssCDNObjectURL
newOSSRequest = storage.NewOSSRequest
ossBucketBaseURL = storage.OssBucketBaseURL
escapeObjectKey = storage.EscapeObjectKey
deleteAliyunOSSObject = storage.DeleteAliyunOSSObject
deleteTencentCOSObject = storage.DeleteTencentCOSObject
deleteQiniuObject = storage.DeleteQiniuObject
validateStorageEndpoint = storage.ValidateStorageEndpoint
standardAWSS3Endpoint = storage.StandardAWSS3Endpoint
publicHTTPSStorageEndpoint = storage.PublicHTTPSStorageEndpoint
newS3Client = storage.NewS3Client
putS3Object = storage.PutS3Object
getS3ObjectRange = storage.GetS3ObjectRange
signedS3ObjectURL = storage.SignedS3ObjectURL
deleteS3Object = storage.DeleteS3Object
cloneOSSProviderCredentials = storage.CloneCredentials
normalizeOSSSetting = storage.NormalizeSettings
)