2025-11-10 17:41:48 +00:00
|
|
|
import { RequestHandler } from "../RequestHandler";
|
|
|
|
|
import { FastifyRequest, FastifyReply } from 'fastify';
|
|
|
|
|
import { UserManagementServer } from "../UserManagementServer";
|
2025-11-11 21:46:18 +00:00
|
|
|
import { Message } from "../../../browser/messages/Message";
|
2025-11-10 17:41:48 +00:00
|
|
|
|
|
|
|
|
export abstract class RequestRequirement
|
|
|
|
|
{
|
|
|
|
|
_isGlobal:boolean = false;
|
|
|
|
|
_ums:UserManagementServer;
|
|
|
|
|
_handler:RequestHandler = null;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
initialize( handler:RequestHandler ):Promise<void>
|
|
|
|
|
{
|
|
|
|
|
this._isGlobal = false;
|
|
|
|
|
this._handler = handler;
|
|
|
|
|
return Promise.resolve();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
initializeGlobal( ums:UserManagementServer ):Promise<void>
|
|
|
|
|
{
|
|
|
|
|
this._isGlobal = true;
|
|
|
|
|
this._ums = ums;
|
|
|
|
|
return Promise.resolve();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2025-11-11 21:46:18 +00:00
|
|
|
abstract handle( request:FastifyRequest, reply:FastifyReply ):Promise<Message[]>
|
2025-11-10 17:41:48 +00:00
|
|
|
|
|
|
|
|
}
|