CommunitySolidServer/test/util/StaticAsyncHandler.ts
2020-06-05 11:28:28 +02:00

24 lines
604 B
TypeScript

import { AsyncHandler } from '../../src/util/AsyncHandler';
export class StaticAsyncHandler<TOut> extends AsyncHandler<any, TOut> {
private readonly canHandleStatic: boolean;
private readonly handleStatic: TOut;
public constructor(canHandleStatic: boolean, handleStatic: TOut) {
super();
this.canHandleStatic = canHandleStatic;
this.handleStatic = handleStatic;
}
public async canHandle(): Promise<void> {
if (this.canHandleStatic) {
return;
}
throw new Error('Not supported.');
}
public async handle(): Promise<TOut> {
return this.handleStatic;
}
}