| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- import { __decorate, __metadata, __param } from "tslib";
- import { BodyParams, Logger } from '@tsed/common';
- import { Controller, Inject } from '@tsed/di';
- import { InternalServerError } from '@tsed/exceptions';
- import { Post, Returns, Enum, Description, } from '@tsed/schema';
- import PdfConvertService, { JobStatusSharedWithGrowi, JobStatus } from '../service/pdf-convert.js';
- let PdfCtrl = class PdfCtrl {
- pdfConvertService;
- logger;
- constructor(pdfConvertService) {
- this.pdfConvertService = pdfConvertService;
- }
- async syncJobStatus(jobId, expirationDateStr, growiJobStatus) {
- const expirationDate = new Date(expirationDateStr);
- try {
- await this.pdfConvertService.registerOrUpdateJob(jobId, expirationDate, growiJobStatus);
- const status = this.pdfConvertService.getJobStatus(jobId); // get status before cleanup
- this.pdfConvertService.cleanUpJobList();
- return { status };
- }
- catch (err) {
- this.logger.error('Failed to register or update job', err);
- throw new InternalServerError(err);
- }
- }
- };
- __decorate([
- Inject(),
- __metadata("design:type", Logger)
- ], PdfCtrl.prototype, "logger", void 0);
- __decorate([
- Post('/sync-job'),
- (Returns(202).ContentType('application/json').Schema({
- type: 'object',
- properties: {
- status: { type: 'string', enum: Object.values(JobStatus) },
- },
- required: ['status'],
- })),
- Returns(500),
- Description(`
- Sync job pdf convert status with GROWI.
- Register or update job inside pdf-converter with given jobId, expirationDate, and status.
- Return resulting status of job to GROWI.
- `),
- __param(0, BodyParams('jobId')),
- __param(1, BodyParams('expirationDate')),
- __param(2, BodyParams('status')),
- __param(2, Enum(Object.values(JobStatusSharedWithGrowi))),
- __metadata("design:type", Function),
- __metadata("design:paramtypes", [String, String, String]),
- __metadata("design:returntype", Promise)
- ], PdfCtrl.prototype, "syncJobStatus", null);
- PdfCtrl = __decorate([
- Controller('/pdf'),
- __metadata("design:paramtypes", [PdfConvertService])
- ], PdfCtrl);
- export default PdfCtrl;
- //# sourceMappingURL=pdf.js.map
|