1
0
mirror of https://github.com/bpatrik/pigallery2.git synced 2025-12-05 23:18:43 +02:00

restucturing project

This commit is contained in:
Patrik J. Braun
2019-12-10 10:44:35 +01:00
parent 1be392e7da
commit 358a7834e0
345 changed files with 181 additions and 202 deletions

View File

@@ -0,0 +1,30 @@
import {ITask} from './tasks/ITask';
import {IndexingTask} from './tasks/IndexingTask';
import {DBRestTask} from './tasks/DBResetTask';
import {VideoConvertingTask} from './tasks/VideoConvertingTask';
export class TaskRepository {
private static instance: TaskRepository = null;
availableTasks: { [key: string]: ITask<any> } = {};
public static get Instance(): TaskRepository {
if (TaskRepository.instance == null) {
TaskRepository.instance = new TaskRepository();
}
return TaskRepository.instance;
}
getAvailableTasks(): ITask<any>[] {
return Object.values(this.availableTasks).filter(t => t.Supported);
}
register(task: ITask<any>) {
this.availableTasks[task.Name] = task;
}
}
TaskRepository.Instance.register(new IndexingTask());
TaskRepository.Instance.register(new DBRestTask());
TaskRepository.Instance.register(new VideoConvertingTask());