Skip to main content

Class: S3FileService

file-storage/src.S3FileService

Extends​

Constructors​

new S3FileService(s3)​

new S3FileService(s3): S3FileService

Parameters​

▪ s3: NarrowPayloadBlobTypes<NodeJsRuntimeStreamingBlobPayloadInputTypes, SdkStream<IncomingMessage>, S3>

Returns​

S3FileService

Overrides​

AbstractFileService.constructor

Source​

libs/file-storage/src/lib/services/s3-file.service.ts:39

Properties​

DEFAULT_FILE_NAME_FULL_LENGTH​

protected DEFAULT_FILE_NAME_FULL_LENGTH: number = 64

Inherited from​

AbstractFileService.DEFAULT_FILE_NAME_FULL_LENGTH

Source​

libs/file-storage/src/lib/services/abstract-file.service.ts:12


DEFAULT_UPLOAD_PRE_SIGN_URL_PARAMS​

protected DEFAULT_UPLOAD_PRE_SIGN_URL_PARAMS: object

Type declaration​

expiresInSeconds​

expiresInSeconds: number = 3600

maxSize​

maxSize: number

Source​

libs/file-storage/src/lib/services/s3-file.service.ts:34

Methods​

abortMultiPartUpload​

abortMultiPartUpload(uploadId, bucket, key, options?): Promise<void>

Parameters​

▪ uploadId: string

▪ bucket: string

▪ key: string

▪ options?: Partial<AbortMultipartUploadCommandInput>

Returns​

Promise<void>

Overrides​

AbstractFileService.abortMultiPartUpload

Source​

libs/file-storage/src/lib/services/s3-file.service.ts:95


completeMultiPartUpload​

completeMultiPartUpload(uploadId, bucket, key, parts, options?): Promise<void>

Parameters​

▪ uploadId: string

▪ bucket: string

▪ key: string

▪ parts: CompletedPartDTO[]

▪ options?: Partial<CompleteMultipartUploadCommandInput>

Returns​

Promise<void>

Overrides​

AbstractFileService.completeMultiPartUpload

Source​

libs/file-storage/src/lib/services/s3-file.service.ts:109


downloadFile​

downloadFile(bucket, key): Promise<string>

Downloads a file as a text, might be useful for pure text files and templates, for other times use downloadStream function

Parameters​

▪ bucket: string

The bucket name of the file to download

▪ key: string

The full path to the file inside a bucket, can include directories

Returns​

Promise<string>

A readable stream of the file content

Overrides​

AbstractFileService.downloadFile

Throws​

If the file is not found

Source​

libs/file-storage/src/lib/services/s3-file.service.ts:240


downloadStream​

downloadStream(bucket, key): Promise<Readable>

Downloads a file as a stream

Parameters​

▪ bucket: string

The bucket name of the file to download

▪ key: string

The full path to the file inside a bucket, can include directories

Returns​

Promise<Readable>

A readable stream of the file content

Overrides​

AbstractFileService.downloadStream

Throws​

If the file is not found

Source​

libs/file-storage/src/lib/services/s3-file.service.ts:252


generateDownloadFilePreSignUrl​

generateDownloadFilePreSignUrl(bucket, key, expiresInSeconds): Promise<string>

Parameters​

▪ bucket: string

▪ key: string

▪ expiresInSeconds: number= 3600

Returns​

Promise<string>

Overrides​

AbstractFileService.generateDownloadFilePreSignUrl

Source​

libs/file-storage/src/lib/services/s3-file.service.ts:168


generateFileKey​

protected generateFileKey(uniqueFileNameWithoutExtension, file, folder?): string

Parameters​

▪ uniqueFileNameWithoutExtension: string

▪ file: FileDefinition

▪ folder?: string

Returns​

string

Inherited from​

AbstractFileService.generateFileKey

Source​

libs/file-storage/src/lib/services/abstract-file.service.ts:69


generateUploadFilePreSignUrlPost​

generateUploadFilePreSignUrlPost(bucket, file, folder?, options?): Promise<FileUploadPreSignUrlPostResult>

Parameters​

▪ bucket: string

▪ file: FileDefinition

▪ folder?: string

▪ options?: object

expiresInSeconds default value is 3600 seconds maxSize in bytes default value is 100MB

▪ options.expiresInSeconds?: number

▪ options.fields?: Record<string, string>

▪ options.maxSize?: number

Returns​

Promise<FileUploadPreSignUrlPostResult>

Overrides​

AbstractFileService.generateUploadFilePreSignUrlPost

Source​

libs/file-storage/src/lib/services/s3-file.service.ts:135


generateUploadFilePreSignUrlPut​

generateUploadFilePreSignUrlPut(bucket, file, folder?, expiresInSeconds?): Promise<FileUploadPreSignUrlPutResult>

Parameters​

▪ bucket: string

▪ file: FileDefinition

▪ folder?: string

▪ expiresInSeconds?: number

Returns​

Promise<FileUploadPreSignUrlPutResult>

Overrides​

AbstractFileService.generateUploadFilePreSignUrlPut

Source​

libs/file-storage/src/lib/services/s3-file.service.ts:184


startMultiPartUpload​

startMultiPartUpload(bucket, file, partSize, folder?, options?): Promise<StartMultipartUploadInfo>

Parameters​

▪ bucket: string

▪ file: Required<FileDefinition>

▪ partSize: number= undefined

▪ folder?: string

▪ options?: Partial<CreateMultipartUploadCommandInput>

Returns​

Promise<StartMultipartUploadInfo>

Overrides​

AbstractFileService.startMultiPartUpload

Source​

libs/file-storage/src/lib/services/s3-file.service.ts:46


truncateFileName​

protected truncateFileName(fileName, maxLength): string

Parameters​

▪ fileName: string

▪ maxLength: number

Returns​

string

Inherited from​

AbstractFileService.truncateFileName

Source​

libs/file-storage/src/lib/services/abstract-file.service.ts:87


uploadFile​

uploadFile(bucket, file, body, folder?, options?): Promise<UploadedFileInfo>

Parameters​

▪ bucket: string

▪ file: FileDefinition

▪ body: NodeJsRuntimeStreamingBlobPayloadInputTypes

▪ folder?: string

▪ options?: Partial<Omit<PutObjectCommandInput, "Body" | "Bucket" | "Key">>

Returns​

Promise<UploadedFileInfo>

Overrides​

AbstractFileService.uploadFile

Source​

libs/file-storage/src/lib/services/s3-file.service.ts:209


Generated using typedoc-plugin-markdown and TypeDoc