]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/lib/request/request-video-event-scheduler.ts
Add this context to instance model functions
[github/Chocobozzz/PeerTube.git] / server / lib / request / request-video-event-scheduler.ts
index 6e5306c7d1ac31ad784097221bf7de8ee657302b..c9d1651177a89ce7bec12577da74bc521077e65a 100644 (file)
@@ -1,12 +1,21 @@
-const db = require('../../initializers/database')
-import { BaseRequestScheduler } from './base-request-scheduler'
+import * as Sequelize from 'sequelize'
+
+import { database as db } from '../../initializers/database'
+import { AbstractRequestScheduler } from './abstract-request-scheduler'
 import {
   REQUESTS_VIDEO_EVENT_LIMIT_PODS,
   REQUESTS_VIDEO_EVENT_LIMIT_PER_POD,
   REQUEST_VIDEO_EVENT_ENDPOINT
 } from '../../initializers'
 
-class RequestVideoEventScheduler extends BaseRequestScheduler {
+export type RequestVideoEventSchedulerOptions = {
+  type: string
+  videoId: string
+  count?: number
+  transaction?: Sequelize.Transaction
+}
+
+class RequestVideoEventScheduler extends AbstractRequestScheduler {
   constructor () {
     super()
 
@@ -25,7 +34,7 @@ class RequestVideoEventScheduler extends BaseRequestScheduler {
     return db.RequestVideoEvent
   }
 
-  buildRequestObjects (eventsToProcess) {
+  buildRequestObjects (eventsToProcess: { [ toPodId: number ]: any }[]) {
     const requestsToMakeGrouped = {}
 
     /* Example:
@@ -87,16 +96,10 @@ class RequestVideoEventScheduler extends BaseRequestScheduler {
     return requestsToMakeGrouped
   }
 
-  // { type, videoId, count?, transaction? }
-  createRequest (options, callback) {
-    const type = options.type
-    const videoId = options.videoId
-    const transaction = options.transaction
-    let count = options.count
-
+  createRequest ({ type, videoId, count, transaction }: RequestVideoEventSchedulerOptions, callback: (err: Error) => void) {
     if (count === undefined) count = 1
 
-    const dbRequestOptions: { transaction?: any } = {}
+    const dbRequestOptions: Sequelize.CreateOptions = {}
     if (transaction) dbRequestOptions.transaction = transaction
 
     const createQuery = {