PeerTube/server/lib/jobs/activitypub-http-job-scheduler/activitypub-http-job-schedu...

26 lines
856 B
TypeScript
Raw Normal View History

2017-11-17 10:35:10 +00:00
import { JobScheduler, JobHandler } from '../job-scheduler'
import * as activitypubHttpBroadcastHandler from './activitypub-http-broadcast-handler'
import * as activitypubHttpUnicastHandler from './activitypub-http-unicast-handler'
2017-11-22 09:29:55 +00:00
import * as activitypubHttpFetcherHandler from './activitypub-http-fetcher-handler'
2017-11-17 10:35:10 +00:00
import { JobCategory } from '../../../../shared'
type ActivityPubHttpPayload = {
uris: string[]
2017-11-22 09:29:55 +00:00
signatureAccountId?: number
body?: any
2017-11-17 10:35:10 +00:00
}
const jobHandlers: { [ handlerName: string ]: JobHandler<ActivityPubHttpPayload, void> } = {
activitypubHttpBroadcastHandler,
2017-11-22 09:29:55 +00:00
activitypubHttpUnicastHandler,
activitypubHttpFetcherHandler
2017-11-17 10:35:10 +00:00
}
const jobCategory: JobCategory = 'activitypub-http'
const activitypubHttpJobScheduler = new JobScheduler(jobCategory, jobHandlers)
export {
ActivityPubHttpPayload,
activitypubHttpJobScheduler
}