webstudio/server/src/features/realtime/realtime_presentation.ts

30 lines
828 B
TypeScript
Raw Normal View History

2023-11-10 12:06:40 +03:00
import { CoreHttpController } from "../../core/controllers/http_controller";
import { Result } from "../../core/helper/result";
import { IPipelineMeta } from "../../core/model/pipiline_meta";
import {
PipelineRealTimeService,
} from "../../core/services/pipeline_real_time_service";
export const pipelineRealTimeService = new PipelineRealTimeService();
class PipelineStatusUseCase {
async call(): Promise<Result<Error, IPipelineMeta>> {
try {
return Result.ok(pipelineRealTimeService.status);
} catch (error) {
return Result.error(error as Error);
}
}
}
export class RealTimePresentation extends CoreHttpController<void> {
constructor() {
super({
validationModel: null,
url: "realtime",
databaseModel: null,
});
super.get(new PipelineStatusUseCase().call);
}
}