import {Media} from "../models/Media"; import {Response} from "express"; import {bucket} from "./bucket"; /** * Creates a new media in the database * @param clientId The client id of the uploader * @param assetName The name of the asset * @param assetEnding The file ending of the asset */ export const createMedia = (clientId: number, assetName: string, assetEnding: string | undefined) => Media.create({clientId, assetName, assetEnding: assetEnding || "txt"}); /** * Gets a media object by the asset id * @param assetId The id of the asset to search */ export const getMediaObject = (assetId: string) => Media.findOne({assetId}); /** * Pipes the provided asset into an express response * @param assetId The id of the asset to pipe * @param res The express response controller */ export const pipeMedia = (assetId: string, res: Response) => bucket.file(assetId).createReadStream().pipe(res);