diff options
Diffstat (limited to 'server/server/lib/runners/job-handlers/runner-job-handlers.ts')
-rw-r--r-- | server/server/lib/runners/job-handlers/runner-job-handlers.ts | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/server/server/lib/runners/job-handlers/runner-job-handlers.ts b/server/server/lib/runners/job-handlers/runner-job-handlers.ts new file mode 100644 index 000000000..f8a672e64 --- /dev/null +++ b/server/server/lib/runners/job-handlers/runner-job-handlers.ts | |||
@@ -0,0 +1,20 @@ | |||
1 | import { MRunnerJob } from '@server/types/models/runners/index.js' | ||
2 | import { RunnerJobSuccessPayload, RunnerJobType, RunnerJobUpdatePayload } from '@peertube/peertube-models' | ||
3 | import { AbstractJobHandler } from './abstract-job-handler.js' | ||
4 | import { LiveRTMPHLSTranscodingJobHandler } from './live-rtmp-hls-transcoding-job-handler.js' | ||
5 | import { VideoStudioTranscodingJobHandler } from './video-studio-transcoding-job-handler.js' | ||
6 | import { VODAudioMergeTranscodingJobHandler } from './vod-audio-merge-transcoding-job-handler.js' | ||
7 | import { VODHLSTranscodingJobHandler } from './vod-hls-transcoding-job-handler.js' | ||
8 | import { VODWebVideoTranscodingJobHandler } from './vod-web-video-transcoding-job-handler.js' | ||
9 | |||
10 | const processors: Record<RunnerJobType, new() => AbstractJobHandler<unknown, RunnerJobUpdatePayload, RunnerJobSuccessPayload>> = { | ||
11 | 'vod-web-video-transcoding': VODWebVideoTranscodingJobHandler, | ||
12 | 'vod-hls-transcoding': VODHLSTranscodingJobHandler, | ||
13 | 'vod-audio-merge-transcoding': VODAudioMergeTranscodingJobHandler, | ||
14 | 'live-rtmp-hls-transcoding': LiveRTMPHLSTranscodingJobHandler, | ||
15 | 'video-studio-transcoding': VideoStudioTranscodingJobHandler | ||
16 | } | ||
17 | |||
18 | export function getRunnerJobHandlerClass (job: MRunnerJob) { | ||
19 | return processors[job.type] | ||
20 | } | ||