]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/lib/activitypub/cache-file.ts
Add import finished and video published notifs
[github/Chocobozzz/PeerTube.git] / server / lib / activitypub / cache-file.ts
index 5286d8e6ddc9294900c1402f8b63730f5ecd3f6b..f6f068b456828e37455167d0d881f0b09e31263d 100644 (file)
@@ -22,6 +22,16 @@ function cacheFileActivityObjectToDBAttributes (cacheFileObject: CacheFileObject
   }
 }
 
+async function createOrUpdateCacheFile (cacheFileObject: CacheFileObject, video: VideoModel, byActor: { id?: number }, t: Transaction) {
+  const redundancyModel = await VideoRedundancyModel.loadByUrl(cacheFileObject.id, t)
+
+  if (!redundancyModel) {
+    await createCacheFile(cacheFileObject, video, byActor, t)
+  } else {
+    await updateCacheFile(cacheFileObject, redundancyModel, video, byActor, t)
+  }
+}
+
 function createCacheFile (cacheFileObject: CacheFileObject, video: VideoModel, byActor: { id?: number }, t: Transaction) {
   const attributes = cacheFileActivityObjectToDBAttributes(cacheFileObject, video, byActor)
 
@@ -48,6 +58,7 @@ function updateCacheFile (
 }
 
 export {
+  createOrUpdateCacheFile,
   createCacheFile,
   updateCacheFile,
   cacheFileActivityObjectToDBAttributes