import { FILES_CACHE } from '../../initializers/constants'
import { VideoModel } from '../../models/video/video'
import { AbstractVideoStaticFileCache } from './abstract-video-static-file-cache'
+import { MVideo, MVideoFile } from '@server/types/models'
class VideosTorrentCache extends AbstractVideoStaticFileCache <string> {
const file = await VideoFileModel.loadWithVideoOrPlaylistByTorrentFilename(filename)
if (!file) return undefined
- if (file.getVideo().isOwned()) return { isOwned: true, path: join(CONFIG.STORAGE.TORRENTS_DIR, file.torrentFilename) }
+ if (file.getVideo().isOwned()) {
+ const downloadName = this.buildDownloadName(file.getVideo(), file)
+
+ return { isOwned: true, path: join(CONFIG.STORAGE.TORRENTS_DIR, file.torrentFilename), downloadName }
+ }
return this.loadRemoteFile(filename)
}
await doRequestAndSaveToFile(remoteUrl, destPath)
- const downloadName = `${video.name}-${file.resolution}p.torrent`
+ const downloadName = this.buildDownloadName(video, file)
return { isOwned: false, path: destPath, downloadName }
}
+
+ private buildDownloadName (video: MVideo, file: MVideoFile) {
+ return `${video.name}-${file.resolution}p.torrent`
+ }
}
export {