HttpEndpointBuildingContext

data class HttpEndpointBuildingContext<P : Parameters, I : Input<*, *>, O : Outputs>(id: String, description: String?, details: String?, method: Method, path: List<String>, parameters: P, input: I, outputs: O)(source)

Entry point for building an HTTP endpoint.

Parameters

P

tuple capturing referenced path and query parameters.

I

inbound definition coupling headers with the request body.

O

outbound response definitions paired with status matchers.

Constructors

Link copied to clipboard
constructor(id: String, description: String?, details: String?, method: Method, path: List<String>, parameters: P, input: I, outputs: O)

Functions

Link copied to clipboard

Adds a single request header definition while keeping the empty body.

Replaces the request body while keeping the existing empty header tuple.

Adds two request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody1")
fun <P : Parameters, O : Outputs, H1 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers1<H1>, B>, O>

Adds a single header definition and replaces the body.

Adds three request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody2")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers2<H1, H2>, B>, O>

Adds two header definitions and replaces the body.

Adds four request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody3")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers3<H1, H2, H3>, B>, O>

Adds three header definitions and replaces the body.

Adds five request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody4")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers4<H1, H2, H3, H4>, B>, O>

Adds four header definitions and replaces the body.

@JvmName(name = "inputHeaders6")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>): HttpEndpointBuildingContext<P, Input<Headers6<H1, H2, H3, H4, H5, H6>, EmptyBody>, O>

Adds six request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody5")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers5<H1, H2, H3, H4, H5>, B>, O>

Adds five header definitions and replaces the body.

@JvmName(name = "inputHeaders7")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>): HttpEndpointBuildingContext<P, Input<Headers7<H1, H2, H3, H4, H5, H6, H7>, EmptyBody>, O>

Adds seven request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody6")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers6<H1, H2, H3, H4, H5, H6>, B>, O>

Adds six header definitions and replaces the body.

@JvmName(name = "inputHeaders8")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>): HttpEndpointBuildingContext<P, Input<Headers8<H1, H2, H3, H4, H5, H6, H7, H8>, EmptyBody>, O>

Adds eight request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody7")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers7<H1, H2, H3, H4, H5, H6, H7>, B>, O>

Adds seven header definitions and replaces the body.

@JvmName(name = "inputHeaders9")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>, h9: Header<H9>): HttpEndpointBuildingContext<P, Input<Headers9<H1, H2, H3, H4, H5, H6, H7, H8, H9>, EmptyBody>, O>

Adds nine request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody8")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers8<H1, H2, H3, H4, H5, H6, H7, H8>, B>, O>

Adds eight header definitions and replaces the body.

@JvmName(name = "inputHeaders10")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any, H10 : Any> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>, h9: Header<H9>, h10: Header<H10>): HttpEndpointBuildingContext<P, Input<Headers10<H1, H2, H3, H4, H5, H6, H7, H8, H9, H10>, EmptyBody>, O>

Adds ten request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody9")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>, h9: Header<H9>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers9<H1, H2, H3, H4, H5, H6, H7, H8, H9>, B>, O>

Adds nine header definitions and replaces the body.

@JvmName(name = "inputHeadersBody10")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any, H10 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>, h9: Header<H9>, h10: Header<H10>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers10<H1, H2, H3, H4, H5, H6, H7, H8, H9, H10>, B>, O>

Adds ten header definitions and replaces the body.

Link copied to clipboard
@JvmName(name = "outputWithStatus0")
fun <P : Parameters, I : Input<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs0>.output(status: Status = Status.OK, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs1<Output<Headers0, B>>>

Adds a new output that is selected when the response status equals status.

@JvmName(name = "outputMatcher0")
fun <P : Parameters, I : Input<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs0>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs1<Output<Headers0, B>>>

Adds a new output that is selected when statusMatcher accepts the response and uses body.

@JvmName(name = "outputWithStatus1")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs1<O1>>.output(status: Status = Status.OK, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs2<O1, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving the existing output O1.

@JvmName(name = "outputMatcher1")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs1<O1>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs2<O1, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving the existing output O1.

@JvmName(name = "outputWithStatus2")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs2<O1, O2>>.output(status: Status = Status.OK, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1 and O2.

@JvmName(name = "outputMatcher2")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs2<O1, O2>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1 and O2.

@JvmName(name = "outputWithStatus3")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, O3>>.output(status: Status = Status.OK, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, and O3.

@JvmName(name = "outputMatcher3")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, O3>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, and O3.

@JvmName(name = "outputWithStatus4")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, O4>>.output(status: Status = Status.OK, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, and O4.

@JvmName(name = "outputMatcher4")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, O4>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, and O4.

@JvmName(name = "outputWithStatus5")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(status: Status = Status.OK, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, O4, and O5.

@JvmName(name = "outputMatcher5")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, O4, and O5.

@JvmName(name = "outputWithStatus6")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(status: Status = Status.OK, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, O4, O5, and O6.

@JvmName(name = "outputMatcher6")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, O4, O5, and O6.

@JvmName(name = "outputWithStatus7")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(status: Status = Status.OK, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, O4, O5, O6, and O7.

@JvmName(name = "outputMatcher7")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, O4, O5, O6, and O7.

@JvmName(name = "outputWithStatus8")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(status: Status = Status.OK, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, O4, O5, O6, O7, and O8.

@JvmName(name = "outputMatcher8")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, O4, O5, O6, O7, and O8.

@JvmName(name = "outputWithStatus9")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, O9 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(status: Status = Status.OK, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs10<O1, O2, O3, O4, O5, O6, O7, O8, O9, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, O4, O5, O6, O7, O8, and O9.

@JvmName(name = "outputMatcher9")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, O9 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs10<O1, O2, O3, O4, O5, O6, O7, O8, O9, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, O4, O5, O6, O7, O8, and O9.

@JvmName(name = "outputWithStatusHeaders0")
fun <P : Parameters, I : Input<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs0>.output(status: Status = Status.OK, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs1<Output<H, B>>>

Adds a new output that uses status together with headers and body.

@JvmName(name = "outputMatcherHeaders0")
fun <P : Parameters, I : Input<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs0>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs1<Output<H, B>>>

Adds a new output that is selected when statusMatcher accepts the response and uses headers and body.

@JvmName(name = "outputWithStatusHeaders1")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs1<O1>>.output(status: Status = Status.OK, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs2<O1, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving the existing output O1.

@JvmName(name = "outputMatcherHeaders1")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs1<O1>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs2<O1, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving the existing output O1.

@JvmName(name = "outputWithStatusHeaders2")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs2<O1, O2>>.output(status: Status = Status.OK, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1 and O2.

@JvmName(name = "outputMatcherHeaders2")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs2<O1, O2>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1 and O2.

@JvmName(name = "outputWithStatusHeaders3")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, O3>>.output(status: Status = Status.OK, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, and O3.

@JvmName(name = "outputMatcherHeaders3")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, O3>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, and O3.

@JvmName(name = "outputWithStatusHeaders4")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, O4>>.output(status: Status = Status.OK, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, and O4.

@JvmName(name = "outputMatcherHeaders4")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, O4>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, and O4.

@JvmName(name = "outputWithStatusHeaders5")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(status: Status = Status.OK, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, O4, and O5.

@JvmName(name = "outputMatcherHeaders5")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, O4, and O5.

@JvmName(name = "outputWithStatusHeaders6")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(status: Status = Status.OK, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, O4, O5, and O6.

@JvmName(name = "outputMatcherHeaders6")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, O4, O5, and O6.

@JvmName(name = "outputWithStatusHeaders7")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(status: Status = Status.OK, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, O4, O5, O6, and O7.

@JvmName(name = "outputMatcherHeaders7")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, O4, O5, O6, and O7.

@JvmName(name = "outputWithStatusHeaders8")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(status: Status = Status.OK, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, O4, O5, O6, O7, and O8.

@JvmName(name = "outputMatcherHeaders8")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, O4, O5, O6, O7, and O8.

@JvmName(name = "outputWithStatusHeaders9")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, O9 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(status: Status = Status.OK, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs10<O1, O2, O3, O4, O5, O6, O7, O8, O9, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, O4, O5, O6, O7, O8, and O9.

@JvmName(name = "outputMatcherHeaders9")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, O9 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs10<O1, O2, O3, O4, O5, O6, O7, O8, O9, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, O4, O5, O6, O7, O8, and O9.