♻️ oo-connector: refactored router system to something more coherent (#525)

This commit is contained in:
Eric Doughty-Papassideris
2024-09-04 03:47:59 +02:00
parent afe6562804
commit 9bc9dcafee
10 changed files with 97 additions and 83 deletions
@@ -1,21 +1,16 @@
import TwakeDriveBackendCallbackController from '@/controllers/backend-callbacks.controller';
import { Routes } from '@/interfaces/routes.interface';
import authMiddleware from '@/middlewares/auth.middleware';
import { Router } from 'express';
import type { Router } from 'express';
/**
* These routes are called by Twake Drive backend, for ex. before editing or retreiving a file,
* if it has an editing_session_key still, get the status of that and force a resolution.
*/
export default class TwakeDriveBackendCallbackRoutes implements Routes {
public readonly router = Router();
public readonly path = '/tdriveApi/1';
private readonly controller: TwakeDriveBackendCallbackController;
constructor() {
this.controller = new TwakeDriveBackendCallbackController();
export const TwakeDriveBackendCallbackRoutes = {
mount(router: Router) {
const controller = new TwakeDriveBackendCallbackController();
// Why post ? to garantee it is never cached and always ran
this.router.post('/session/:editing_session_key/check', authMiddleware, this.controller.checkSessionStatus);
this.router.delete('/session/:editing_session_key', authMiddleware, this.controller.deleteSessionKey);
}
}
router.post('/session/:editing_session_key/check', authMiddleware, controller.checkSessionStatus);
router.delete('/session/:editing_session_key', authMiddleware, controller.deleteSessionKey);
},
};