QS3StorageEngine
@quik/storage / QS3StorageEngine
Class: QS3StorageEngine
Defined in: storage/src/engine/QS3StorageEngine.ts:30
Extends
Constructors
Constructor
new QS3StorageEngine():
QS3StorageEngine
Defined in: storage/src/engine/QS3StorageEngine.ts:36
Returns
QS3StorageEngine
Overrides
QStorageEngineBase.constructor
Properties
_client?
protectedoptional_client?:S3
Defined in: storage/src/engine/QS3StorageEngine.ts:34
AWS S3 client instance.
_name
protected_name:string
Defined in: storage/src/engine/QStorageEngineBase.ts:22
Storage engine name.
Inherited from
_type
protected_type:QStorageEngineType=QStorageEngineType.LOCAL
Defined in: storage/src/engine/QStorageEngineBase.ts:34
Storage engine type.
Inherited from
Accessors
client
Get Signature
get
protectedclient():S3
Defined in: storage/src/engine/QS3StorageEngine.ts:68
Retrieve the active S3 client.
Throws
StorageEngineNotEnabledError when S3 is disabled.
Returns
S3
logger
Get Signature
get
protectedlogger():IQLogger
Defined in: core/src/QObject.ts:15
The logger getter for the object.
Returns
IQLogger
Inherited from
name
Get Signature
get name():
string
Defined in: storage/src/engine/QStorageEngineBase.ts:27
Storage engine name.
Returns
string
Inherited from
type
Get Signature
get type():
QStorageEngineType
Defined in: storage/src/engine/QStorageEngineBase.ts:39
Storage engine type.
Returns
Inherited from
Methods
copy()
copy(
sourcePath,destinationPath):Promise<void>
Defined in: storage/src/engine/QS3StorageEngine.ts:294
Copy a file within the same S3 bucket.
Parameters
sourcePath
string
Source storage path.
destinationPath
string
Destination storage path.
Returns
Promise<void>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Overrides
copyTo()
copyTo(
file,targetEngine,targetPath):Promise<void>
Defined in: storage/src/engine/QS3StorageEngine.ts:314
Copy a file to another storage engine.
Parameters
file
Source storage file.
targetEngine
Target storage engine.
targetPath
string
Destination path in the target engine.
Returns
Promise<void>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Overrides
create()
create(
file,path,fill?):Promise<QStorageFile>
Defined in: storage/src/engine/QStorageEngineBase.ts:86
Save a file and return a refreshed metadata record.
Parameters
file
Storage file to save.
path
string
Storage path where the file should be stored.
fill?
boolean = false
Whether to load contents into memory.
Returns
Promise<QStorageFile>
Inherited from
detectEncodingFromBuffer()
protecteddetectEncodingFromBuffer(buffer):string
Defined in: storage/src/engine/QS3StorageEngine.ts:483
Detect text encoding from file byte order marks.
Parameters
buffer
Buffer
Buffer containing the file header.
Returns
string
endSpan()
protectedendSpan(span):void
Defined in: core/src/QObject.ts:35
End a span returned by startSpan.
Parameters
span
TelemetrySpan
The span to end.
Returns
void
Inherited from
get()
get(
path,fill?):Promise<QStorageFile>
Defined in: storage/src/engine/QS3StorageEngine.ts:85
Fetch metadata and optionally contents for a stored object.
Parameters
path
string
Storage path for the object.
fill?
boolean = false
Whether to load contents into memory.
Returns
Promise<QStorageFile>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Overrides
getSignedDownloadURL()
getSignedDownloadURL(
filePath,expiresIn?):Promise<string>
Defined in: storage/src/engine/QS3StorageEngine.ts:465
Generate a presigned download URL.
Parameters
filePath
string
Storage path for the object.
expiresIn?
number
Expiration time in seconds for the signed URL.
Returns
Promise<string>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Overrides
QStorageEngineBase.getSignedDownloadURL
getSignedUploadURL()
getSignedUploadURL(
filePath,expiresIn?):Promise<string>
Defined in: storage/src/engine/QS3StorageEngine.ts:445
Generate a presigned upload URL.
Parameters
filePath
string
Storage path for the object.
expiresIn?
number
Expiration time in seconds for the signed URL.
Returns
Promise<string>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Overrides
QStorageEngineBase.getSignedUploadURL
getUrl()
getUrl(
file,expiresIn?):Promise<string>
Defined in: storage/src/engine/QS3StorageEngine.ts:434
Resolve a public URL for an object (presigned).
Parameters
file
Storage file to resolve a URL for.
expiresIn?
number
Expiration time in seconds for the signed URL.
Returns
Promise<string>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Overrides
importFromPath()
importFromPath(
sourcePath,destinationPath,removeSource?):Promise<void>
Defined in: storage/src/engine/QS3StorageEngine.ts:402
Upload a file from disk into S3.
Parameters
sourcePath
string
OS path to the source file.
destinationPath
string
Storage path in the bucket.
removeSource?
boolean = false
Whether to delete the source file after upload.
Returns
Promise<void>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Throws
StorageFileNotFoundError when the source file is missing.
Overrides
QStorageEngineBase.importFromPath
init()
protectedinit():void
Defined in: storage/src/engine/QS3StorageEngine.ts:55
Returns
void
Overrides
move()
move(
sourcePath,destinationPath):Promise<void>
Defined in: storage/src/engine/QS3StorageEngine.ts:282
Move a file within the same S3 bucket.
Parameters
sourcePath
string
Source storage path.
destinationPath
string
Destination storage path.
Returns
Promise<void>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Overrides
moveTo()
moveTo(
file,targetEngine,targetPath):Promise<void>
Defined in: storage/src/engine/QS3StorageEngine.ts:332
Move a file to another storage engine.
Parameters
file
Source storage file.
targetEngine
Target storage engine.
targetPath
string
Destination path in the target engine.
Returns
Promise<void>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Overrides
new()
new(
path,contents,options?):Promise<QStorageFile>
Defined in: storage/src/engine/QStorageEngineBase.ts:109
Create a new file from raw contents and return refreshed metadata.
Parameters
path
string
Storage path where the file should be stored.
contents
string | Buffer<ArrayBufferLike>
File contents (Buffer or string).
options?
Additional options.
encoding?
BufferEncoding
Text encoding when contents is a string and not base64. Defaults to utf-8 when isBase64 is false, otherwise binary.
fill?
boolean
Whether to return the entity with contents loaded.
isBase64?
boolean
When true, contents is already base64 encoded. Defaults to true for strings.
mimeType?
string
Override detected mime type.
Returns
Promise<QStorageFile>
Inherited from
read()
read(
file):Promise<QStorageFile>
Defined in: storage/src/engine/QS3StorageEngine.ts:217
Download a file and attach base64 contents.
Parameters
file
Storage file to read.
Returns
Promise<QStorageFile>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Overrides
readStream()
readStream(
path):Promise<ReadableStream>
Defined in: storage/src/engine/QS3StorageEngine.ts:249
Stream a file from S3 without buffering.
Parameters
path
string
Storage path to read.
Returns
Promise<ReadableStream>
Throws
StorageFileNotFoundError when the object is missing.
Overrides
recordSpanError()
protectedrecordSpanError(span,err):void
Defined in: core/src/QObject.ts:45
Record an exception on an active span.
Parameters
span
TelemetrySpan
The span to record the error on.
err
unknown
The error to record.
Returns
void
Inherited from
QStorageEngineBase.recordSpanError
remove()
remove(
path):Promise<void>
Defined in: storage/src/engine/QS3StorageEngine.ts:348
Remove a file from S3.
Parameters
path
string
Storage path to remove.
Returns
Promise<void>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Overrides
removeFolder()
removeFolder(
path):Promise<void>
Defined in: storage/src/engine/QS3StorageEngine.ts:363
Remove all objects under a prefix.
Parameters
path
string
Storage folder prefix to remove.
Returns
Promise<void>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Overrides
QStorageEngineBase.removeFolder
save()
save(
file,path):Promise<void>
Defined in: storage/src/engine/QS3StorageEngine.ts:134
Upload a file to S3.
Parameters
file
Storage file to upload.
path
string
Storage path in the bucket.
Returns
Promise<void>
Throws
StorageEngineNotEnabledError when S3 is disabled.
Throws
StorageFileContentsMissingError when there is no content to upload.
Overrides
saveStream()
saveStream(
path,stream,options?):Promise<void>
Defined in: storage/src/engine/QS3StorageEngine.ts:173
Upload a stream directly to S3.
Parameters
path
string
Storage path in the bucket.
stream
ReadableStream
Streamed contents.
options?
Optional metadata overrides.
encoding?
BufferEncoding
mimeType?
string
size?
number
Returns
Promise<void>
Overrides
setSpanAttribute()
protectedsetSpanAttribute(span,key,value):void
Defined in: core/src/QObject.ts:64
Set a single attribute on an active span.
Parameters
span
TelemetrySpan
The span to update.
key
string
Attribute key.
value
string | number | boolean
Attribute value.
Returns
void
Inherited from
QStorageEngineBase.setSpanAttribute
startSpan()
protectedstartSpan(spanName,options?):TelemetrySpan
Defined in: core/src/QObject.ts:26
Start a telemetry span for the given operation name. Returns undefined when no telemetry provider is active.
Parameters
spanName
string
Name of the span.
options?
TelemetrySpanOptions
Optional span attributes and kind.
Returns
TelemetrySpan