Add SocketRouteBuilder and make Route.socket(...) return it
This commit is contained in:
@@ -10,6 +10,7 @@ import {Config} from '../../service/Config'
|
||||
import {Application} from '../../lifecycle/Application'
|
||||
import {Logging} from '../../service/Logging'
|
||||
import {WebSocketBus} from '../../support/bus/WebSocketBus'
|
||||
import {SocketRouteBuilder} from './SocketRouteBuilder'
|
||||
|
||||
/**
|
||||
* Type alias for an item that is a valid response object, or lack thereof.
|
||||
@@ -141,8 +142,16 @@ export class Route<TReturn extends ResponseObject, THandlerParams extends unknow
|
||||
* Create a new WebSocket route on the given endpoint.
|
||||
* @param endpoint
|
||||
*/
|
||||
public static socket(endpoint: string): Route<Awaitable<void>, [WebSocketBus]> {
|
||||
return new Route<Awaitable<void>, [WebSocketBus]>('ws', endpoint)
|
||||
public static socket(endpoint: string): SocketRouteBuilder {
|
||||
const builder = SocketRouteBuilder.get()
|
||||
|
||||
;(new Route<Awaitable<void>, [WebSocketBus]>('ws', endpoint))
|
||||
.passingRequest()
|
||||
.handledBy(async (ws: WebSocketBus, request: Request) => {
|
||||
await builder.build(request, ws)
|
||||
})
|
||||
|
||||
return builder
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user