Skip to content

Commit 6a858b3

Browse files
committed
feat: Use AsyncHandler
1 parent 67a6bd7 commit 6a858b3

11 files changed

Lines changed: 28 additions & 24 deletions

File tree

packages/uma/src/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ export * from './views/ScopeDescription';
5454

5555
// HTTP
5656
export * from './util/http/identifier/BaseTargetExtractor';
57-
export * from './util/http/models/Handler';
5857
export * from './util/http/models/HttpHandler';
5958
export * from './util/http/models/HttpHandlerContext';
6059
export * from './util/http/models/HttpHandlerController';

packages/uma/src/routes/Introspection.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import { verifyRequest } from '../util/HttpMessageSignatures';
1616
/**
1717
* An HTTP handler that provides introspection into opaque access tokens.
1818
*/
19-
export class IntrospectionHandler implements HttpHandler {
19+
export class IntrospectionHandler extends HttpHandler {
2020
protected readonly logger = getLoggerFor(this);
2121

2222
/**
@@ -29,7 +29,9 @@ export class IntrospectionHandler implements HttpHandler {
2929
private readonly tokenStore: KeyValueStorage<string, AccessToken>,
3030
private readonly jwtTokenFactory: JwtTokenFactory,
3131
private readonly keyGen: JwkGenerator,
32-
) {}
32+
) {
33+
super();
34+
}
3335

3436
/**
3537
* Handle incoming requests for token introspection

packages/uma/src/routes/Jwks.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { getLoggerFor, JwkGenerator } from '@solid/community-server';
77
* An HttpHandler used for returning the configuration
88
* of the UMA Authorization Service.
99
*/
10-
export class JwksRequestHandler implements HttpHandler {
10+
export class JwksRequestHandler extends HttpHandler {
1111
protected readonly logger = getLoggerFor(this);
1212

1313
/**
@@ -16,7 +16,9 @@ export class JwksRequestHandler implements HttpHandler {
1616
*/
1717
public constructor(
1818
private readonly generator: JwkGenerator
19-
) {}
19+
) {
20+
super();
21+
}
2022

2123
/**
2224
* Returns the JSON Web KeySet for specified keyholder

packages/uma/src/routes/ResourceRegistration.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,17 @@ type ErrorConstructor = { new(msg: string): Error };
2424
*
2525
* It provides an endpoint to a Resource Server for registering its resources.
2626
*/
27-
export class ResourceRegistrationRequestHandler implements HttpHandler {
27+
export class ResourceRegistrationRequestHandler extends HttpHandler {
2828
protected readonly logger = getLoggerFor(this);
2929

3030
/**
3131
* @param {RequestingPartyRegistration[]} resourceServers - Pod Servers to be registered with the UMA AS
3232
*/
3333
constructor(
3434
private readonly resourceStore: KeyValueStorage<string, ResourceDescription>,
35-
) {}
35+
) {
36+
super();
37+
}
3638

3739
/**
3840
* Handle incoming requests for resource registration

packages/uma/src/routes/Ticket.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ type ErrorConstructor = { new(msg: string): Error };
2222
*
2323
* It provides an endpoint to a Resource Server for requesting UMA tickets.
2424
*/
25-
export class TicketRequestHandler implements HttpHandler {
25+
export class TicketRequestHandler extends HttpHandler {
2626
protected readonly logger = getLoggerFor(this);
2727

2828
/**
@@ -33,7 +33,9 @@ export class TicketRequestHandler implements HttpHandler {
3333
constructor(
3434
private readonly ticketingStrategy: TicketingStrategy,
3535
private readonly ticketStore: KeyValueStorage<string, Ticket>,
36-
) {}
36+
) {
37+
super();
38+
}
3739

3840
/**
3941
* Handle incoming requests for permission registration

packages/uma/src/routes/Token.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,14 @@ import { NeedInfoError } from '../errors/NeedInfoError';
1515
/**
1616
* The TokenRequestHandler implements the interface of the UMA Token Endpoint.
1717
*/
18-
export class TokenRequestHandler implements HttpHandler {
18+
export class TokenRequestHandler extends HttpHandler {
1919
protected readonly logger = getLoggerFor(this);
2020

2121
constructor(
2222
protected negotiator: Negotiator,
23-
) {}
23+
) {
24+
super();
25+
}
2426

2527
/**
2628
* Handles an incoming token request.

packages/uma/src/util/http/models/Handler.ts

Lines changed: 0 additions & 6 deletions
This file was deleted.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
import { Handler } from './Handler';
1+
import { AsyncHandler } from '@solid/community-server';
22
import { HttpHandlerResponse } from './HttpHandlerResponse';
33
import { HttpHandlerContext } from './HttpHandlerContext';
44

55
// eslint-disable-next-line @typescript-eslint/no-empty-interface
66
export abstract class HttpHandler<C extends HttpHandlerContext = HttpHandlerContext>
7-
extends Handler<C, HttpHandlerResponse> { }
7+
extends AsyncHandler<C, HttpHandlerResponse> { }
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Handler } from './Handler';
1+
import { AsyncHandler } from '@solid/community-server';
22
import { HttpHandlerContext } from './HttpHandlerContext';
33
import { HttpHandlerRoute } from './HttpHandlerRoute';
44

@@ -7,7 +7,7 @@ export class HttpHandlerController<C extends HttpHandlerContext = HttpHandlerCon
77
constructor(
88
public label: string,
99
public routes: HttpHandlerRoute<C>[],
10-
public preResponseHandler?: Handler<HttpHandlerContext, C>,
10+
public preResponseHandler?: AsyncHandler<HttpHandlerContext, C>,
1111
) { }
1212

1313
}

packages/uma/src/util/http/server/ErrorHandler.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ export const statusCodes: { [code: number]: string } = {
4949
/**
5050
* Handler class that properly processes the HttpErrors from handlersjs-http
5151
*/
52-
export class JsonHttpErrorHandler implements HttpHandler {
52+
export class JsonHttpErrorHandler extends HttpHandler {
5353
protected readonly logger = getLoggerFor(this);
5454

5555
/**
@@ -58,6 +58,7 @@ export class JsonHttpErrorHandler implements HttpHandler {
5858
constructor(
5959
private nestedHandler: HttpHandler,
6060
) {
61+
super();
6162
}
6263

6364
/**

0 commit comments

Comments
 (0)