You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
772 B

import {HTTPStatus} from '../../util'
import {Request} from '../lifecycle/Request'
* Abstract class that defines "factory" that knows how to write a particular
* response to the response object.
export abstract class ResponseFactory {
/** The status that should be set on the response. */
protected targetStatus: HTTPStatus = HTTPStatus.OK
* Called to write the response data to the HTTP response object.
* @param request
public async write(request: Request): Promise<Request> {
return request
/** Set the target status of this factory. */
public status(status: HTTPStatus): this {
this.targetStatus = status
return this