Skip to main content
Skip to main content

IFileService

Properties

__configModule__Record<string, unknown>
__container__anyRequired
__moduleDeclaration__Record<string, unknown>
manager_EntityManagerRequired
transactionManager_undefined | EntityManagerRequired

Accessors

activeManager_

Returns

EntityManagerEntityManagerRequired

Methods

atomicPhase_

Wraps some work within a transactional block. If the service already has a transaction manager attached this will be reused, otherwise a new transaction manager is created.

Type Parameters

TResultobjectRequired
TErrorobjectRequired

Parameters

work(transactionManager: EntityManager) => Promise<TResult>Required
the transactional work to be done
isolationOrErrorHandlerIsolationLevel | (error: TError) => Promise<void | TResult>
the isolation level to be used for the work.
maybeErrorHandlerOrDontFail(error: TError) => Promise<void | TResult>
Potential error handler

Returns

PromisePromise<TResult>Required
the result of the transactional work

delete

remove file from fileservice

Parameters

fileDataDeleteFileTypeRequired
Remove file described by record

Returns

PromisePromise<void>Required

getDownloadStream

download file from fileservice as stream

Parameters

fileDataGetUploadedFileTypeRequired
file metadata relevant for fileservice to download the file

Returns

PromisePromise<ReadableStream>Required
readable stream of the file to download

getPresignedDownloadUrl

Generate a presigned download url to obtain a file

Parameters

fileDataGetUploadedFileTypeRequired
file metadata relevant for fileservice to download the file

Returns

PromisePromise<string>Required
presigned url to download the file

getUploadStreamDescriptor

upload file to fileservice from stream

Parameters

file metadata relevant for fileservice to create and upload the file

Returns

PromisePromise<FileServiceGetUploadStreamResult>Required

shouldRetryTransaction_

Parameters

errRecord<string, unknown> | objectRequired

Returns

booleanboolean

upload

upload file to fileservice

Parameters

fileFileRequired
Multer file from express multipart/form-data

Returns

PromisePromise<FileServiceUploadResult>Required

uploadProtected

upload private file to fileservice

Parameters

fileFileRequired
Multer file from express multipart/form-data

Returns

PromisePromise<FileServiceUploadResult>Required

withTransaction

Parameters

transactionManagerEntityManager

Returns

__configModule__Record<string, unknown>
__container__anyRequired
__moduleDeclaration__Record<string, unknown>
manager_EntityManagerRequired
transactionManager_undefined | EntityManagerRequired
activeManager_objectRequired
atomicPhase_<TResult, TError>(work: (transactionManager: EntityManager) => Promise<TResult>, isolationOrErrorHandler?: IsolationLevel | (error: TError) => Promise<void | TResult>, maybeErrorHandlerOrDontFail?: (error: TError) => Promise<void | TResult>) => Promise<TResult>Required
delete(fileData: DeleteFileType) => Promise<void>Required
getDownloadStream(fileData: GetUploadedFileType) => Promise<ReadableStream>Required
getPresignedDownloadUrl(fileData: GetUploadedFileType) => Promise<string>Required
getUploadStreamDescriptor(fileData: UploadStreamDescriptorType) => Promise<FileServiceGetUploadStreamResult>Required
shouldRetryTransaction_(err: Record<string, unknown> | { code: string }) => booleanRequired
upload(file: File) => Promise<FileServiceUploadResult>Required
uploadProtected(file: File) => Promise<FileServiceUploadResult>Required
withTransaction(transactionManager?: EntityManager) => IFileServiceRequired
Was this section helpful?