HttpEndpoint

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

Fully-configured HTTP endpoint ready for code generation.

Constructors

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

Properties

Link copied to clipboard
open override val description: String?

short summary describing the endpoint intent.

Link copied to clipboard
open override val details: String?

optional long-form documentation such as business rules.

Link copied to clipboard
open override val id: String

unique identifier inferred from the property name.

Link copied to clipboard
open override val input: I

request definition including headers and body.

Link copied to clipboard

HTTP verb associated with the endpoint.

Link copied to clipboard
open override val outputs: O

candidate response definitions matched by status.

Link copied to clipboard
open override val parameters: P

tuple capturing referenced path and query parameters.

Link copied to clipboard
open override val path: List<String>

ordered path segments that form the template.

Functions

Link copied to clipboard

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

@JvmName(name = "inputBody")
fun <P : Parameters, O : Outputs, B : Body<*>> HttpEndpoint<P, Input<Headers0, EmptyBody>, O>.input(body: () -> B): HttpEndpoint<P, Input<Headers0, B>, O>

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

@JvmName(name = "inputHeaders2")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any> HttpEndpoint<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>): HttpEndpoint<P, Input<Headers2<H1, H2>, EmptyBody>, O>

Adds two request header definitions while keeping the empty body.

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

Adds a single header definition and replaces the body.

@JvmName(name = "inputHeaders3")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any> HttpEndpoint<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>): HttpEndpoint<P, Input<Headers3<H1, H2, H3>, EmptyBody>, O>

Adds three request header definitions while keeping the empty body.

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

Adds a header definition and replaces the body.

@JvmName(name = "inputHeaders4")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any> HttpEndpoint<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>): HttpEndpoint<P, Input<Headers4<H1, H2, H3, H4>, EmptyBody>, O>

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<*>> HttpEndpoint<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, body: () -> B): HttpEndpoint<P, Input<Headers3<H1, H2, H3>, B>, O>

Adds two header definitions and replaces the body.

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

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<*>> HttpEndpoint<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, body: () -> B): HttpEndpoint<P, Input<Headers4<H1, H2, H3, H4>, B>, O>

Adds three 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> HttpEndpoint<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>): HttpEndpoint<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<*>> HttpEndpoint<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, body: () -> B): HttpEndpoint<P, Input<Headers5<H1, H2, H3, H4, H5>, B>, O>

Adds four 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> HttpEndpoint<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>): HttpEndpoint<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<*>> HttpEndpoint<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): HttpEndpoint<P, Input<Headers6<H1, H2, H3, H4, H5, H6>, B>, O>

Adds five 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> HttpEndpoint<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>): HttpEndpoint<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<*>> HttpEndpoint<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): HttpEndpoint<P, Input<Headers7<H1, H2, H3, H4, H5, H6, H7>, B>, O>

Adds six 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> HttpEndpoint<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>): HttpEndpoint<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<*>> HttpEndpoint<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): HttpEndpoint<P, Input<Headers8<H1, H2, H3, H4, H5, H6, H7, H8>, B>, O>

Adds seven 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> HttpEndpoint<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>): HttpEndpoint<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<*>> HttpEndpoint<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): HttpEndpoint<P, Input<Headers9<H1, H2, H3, H4, H5, H6, H7, H8, H9>, B>, O>

Adds eight 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<*>> HttpEndpoint<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): HttpEndpoint<P, Input<Headers10<H1, H2, H3, H4, H5, H6, H7, H8, H9, H10>, B>, O>

Adds nine header definitions and replaces the body.

Link copied to clipboard
@JvmName(name = "outputWithStatus0")
fun <P : Parameters, I : Input<*, *>, B : Body<*>> HttpEndpoint<P, I, Outputs0>.output(status: Status = Status.OK, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs0>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs1<O1>>.output(status: Status = Status.OK, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs1<O1>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs2<O1, O2>>.output(status: Status = Status.OK, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs2<O1, O2>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs3<O1, O2, O3>>.output(status: Status = Status.OK, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs3<O1, O2, O3>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs4<O1, O2, O3, O4>>.output(status: Status = Status.OK, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs4<O1, O2, O3, O4>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(status: Status = Status.OK, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(status: Status = Status.OK, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(status: Status = Status.OK, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(status: Status = Status.OK, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(status: Status = Status.OK, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs0>.output(status: Status = Status.OK, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs0>.output(statusMatcher: StatusMatcher, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs1<O1>>.output(status: Status = Status.OK, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs1<O1>>.output(statusMatcher: StatusMatcher, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs2<O1, O2>>.output(status: Status = Status.OK, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs2<O1, O2>>.output(statusMatcher: StatusMatcher, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs3<O1, O2, O3>>.output(status: Status = Status.OK, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs3<O1, O2, O3>>.output(statusMatcher: StatusMatcher, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs4<O1, O2, O3, O4>>.output(status: Status = Status.OK, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs4<O1, O2, O3, O4>>.output(statusMatcher: StatusMatcher, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(status: Status = Status.OK, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(statusMatcher: StatusMatcher, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(status: Status = Status.OK, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(statusMatcher: StatusMatcher, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(status: Status = Status.OK, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(statusMatcher: StatusMatcher, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(status: Status = Status.OK, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(statusMatcher: StatusMatcher, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(status: Status = Status.OK, headers: () -> H, body: () -> B): HttpEndpoint<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<*>> HttpEndpoint<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(statusMatcher: StatusMatcher, headers: () -> H, body: () -> B): HttpEndpoint<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.

Link copied to clipboard

Resolves this endpoint's path into a concrete URI when no parameters are captured.

fun <P1 : Any> HttpEndpoint<Parameters1<P1>, *, *>.toURI(p1: P1): URI

Resolves this endpoint's path into a concrete URI by substituting p1.

fun <P1 : Any, P2 : Any> HttpEndpoint<Parameters2<P1, P2>, *, *>.toURI(p1: P1, p2: P2): URI

Resolves this endpoint's path into a concrete URI by substituting p1 and p2.

fun <P1 : Any, P2 : Any, P3 : Any> HttpEndpoint<Parameters3<P1, P2, P3>, *, *>.toURI(p1: P1, p2: P2, p3: P3): URI

Resolves this endpoint's path into a concrete URI by substituting p1, p2, and p3.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any> HttpEndpoint<Parameters4<P1, P2, P3, P4>, *, *>.toURI(p1: P1, p2: P2, p3: P3, p4: P4): URI

Resolves this endpoint's path into a concrete URI by substituting p1 through p4.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any> HttpEndpoint<Parameters5<P1, P2, P3, P4, P5>, *, *>.toURI(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5): URI

Resolves this endpoint's path into a concrete URI by substituting p1 through p5.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any> HttpEndpoint<Parameters6<P1, P2, P3, P4, P5, P6>, *, *>.toURI(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6): URI

Resolves this endpoint's path into a concrete URI by substituting p1 through p6.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any> HttpEndpoint<Parameters7<P1, P2, P3, P4, P5, P6, P7>, *, *>.toURI(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7): URI

Resolves this endpoint's path into a concrete URI by substituting p1 through p7.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any> HttpEndpoint<Parameters8<P1, P2, P3, P4, P5, P6, P7, P8>, *, *>.toURI(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8): URI

Resolves this endpoint's path into a concrete URI by substituting p1 through p8.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any, P9 : Any> HttpEndpoint<Parameters9<P1, P2, P3, P4, P5, P6, P7, P8, P9>, *, *>.toURI(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9): URI

Resolves this endpoint's path into a concrete URI by substituting p1 through p9.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any, P9 : Any, P10 : Any> HttpEndpoint<Parameters10<P1, P2, P3, P4, P5, P6, P7, P8, P9, P10>, *, *>.toURI(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10): URI

Resolves this endpoint's path into a concrete URI by substituting p1 through p10.