29 lines
695 B
TypeScript
29 lines
695 B
TypeScript
|
|
import { RequestHandler } from "../RequestHandler";
|
||
|
|
import { FastifyRequest, FastifyReply } from 'fastify';
|
||
|
|
import { UserManagementServer } from "../UserManagementServer";
|
||
|
|
|
||
|
|
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();
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
abstract handle( request:FastifyRequest, reply:FastifyReply ):Promise<boolean>
|
||
|
|
|
||
|
|
}
|