c

sttp.tapir.server

PartialServerEndpoint

abstract class PartialServerEndpoint[U, I, E, O, -R, F[_]] extends EndpointInputsOps[I, E, O, R] with EndpointOutputsOps[I, E, O, R] with EndpointInfoOps[I, E, O, R] with EndpointMetaOps[I, E, O, R]

An endpoint, with some of the server logic already provided, and some left unspecified. See Endpoint.serverLogicForCurrent.

The part of the server logic which is provided transforms some inputs either to an error of type E, or value of type U.

The part of the server logic which is not provided, transforms a tuple: (U, I) either into an error, or a value of type O.

Inputs/outputs can be added to partial endpoints as to regular endpoints, however the shape of the error outputs is fixed and cannot be changed.

U

Type of partially transformed input.

I

Input parameter types.

E

Error output parameter types.

O

Output parameter types.

R

The capabilities that are required by this endpoint's inputs/outputs. Any, if no requirements.

F

The effect type used in the provided partial server logic.

Self Type
PartialServerEndpoint[U, I, E, O, R, F]
Linear Supertypes
EndpointMetaOps[I, E, O, R], EndpointInfoOps[I, E, O, R], EndpointOutputsOps[I, E, O, R], EndpointInputsOps[I, E, O, R], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. PartialServerEndpoint
  2. EndpointMetaOps
  3. EndpointInfoOps
  4. EndpointOutputsOps
  5. EndpointInputsOps
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new PartialServerEndpoint(partialEndpoint: Endpoint[I, E, O, R])

Type Members

  1. type EndpointType[_I, _E, _O, -_R] = PartialServerEndpoint[U, _I, _E, _O, _R, F]
  2. abstract type T

Abstract Value Members

  1. abstract def partialLogic: (MonadError[F]) ⇒ (T) ⇒ F[Either[E, U]]
    Attributes
    protected
  2. abstract def tInput: EndpointInput[T]
    Attributes
    protected

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def additionalInputsForShow: Vector[Basic[_]]
    Attributes
    protected
    Definition Classes
    PartialServerEndpointEndpointMetaOps
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @HotSpotIntrinsicCandidate()
  7. def connect: EndpointType[I, E, O, R]
    Definition Classes
    EndpointInputsOps
  8. def delete: EndpointType[I, E, O, R]
    Definition Classes
    EndpointInputsOps
  9. def deprecated(): EndpointType[I, E, O, R]
    Definition Classes
    EndpointInfoOps
  10. def description(d: String): EndpointType[I, E, O, R]
    Definition Classes
    EndpointInfoOps
  11. def endpoint: Endpoint[(T, I), E, O, R]
  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  14. def errorOutput: EndpointOutput[E]
    Definition Classes
    PartialServerEndpointEndpointMetaOps
  15. def get: EndpointType[I, E, O, R]
    Definition Classes
    EndpointInputsOps
  16. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  17. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  18. def head: EndpointType[I, E, O, R]
    Definition Classes
    EndpointInputsOps
  19. def httpMethod: Option[Method]
    Definition Classes
    EndpointInputsOps
  20. def in[BS, J, IJ, R2](i: StreamBodyIO[BS, J, R2])(implicit concat: typelevel.ParamConcat.Aux[I, J, IJ]): EndpointType[IJ, E, O, R with R2]
    Definition Classes
    EndpointInputsOps
  21. def in[J, IJ](i: EndpointInput[J])(implicit concat: typelevel.ParamConcat.Aux[I, J, IJ]): EndpointType[IJ, E, O, R]
    Definition Classes
    EndpointInputsOps
  22. def info: EndpointInfo
  23. def info(i: EndpointInfo): EndpointType[I, E, O, R]
    Definition Classes
    EndpointInfoOps
  24. def input: EndpointInput[I]
  25. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  26. def mapIn[II](f: (I) ⇒ II)(g: (II) ⇒ I): EndpointType[II, E, O, R]
    Definition Classes
    EndpointInputsOps
  27. def mapIn[II](m: Mapping[I, II]): EndpointType[II, E, O, R]
    Definition Classes
    EndpointInputsOps
  28. def mapInDecode[II](f: (I) ⇒ DecodeResult[II])(g: (II) ⇒ I): EndpointType[II, E, O, R]
    Definition Classes
    EndpointInputsOps
  29. def mapInTo[COMPANION, CASE_CLASS <: Product](c: COMPANION)(implicit fc: FnComponents[COMPANION, I, CASE_CLASS]): EndpointType[CASE_CLASS, E, O, R]
    Definition Classes
    EndpointInputsOps
  30. def mapOut[OO](f: (O) ⇒ OO)(g: (OO) ⇒ O): EndpointType[I, E, OO, R]
    Definition Classes
    EndpointOutputsOps
  31. def mapOut[OO](m: Mapping[O, OO]): EndpointType[I, E, OO, R]
    Definition Classes
    EndpointOutputsOps
  32. def mapOutDecode[OO](f: (O) ⇒ DecodeResult[OO])(g: (OO) ⇒ O): EndpointType[I, E, OO, R]
    Definition Classes
    EndpointOutputsOps
  33. def mapOutTo[COMPANION, CASE_CLASS <: Product](c: COMPANION)(implicit fc: FnComponents[COMPANION, O, CASE_CLASS]): EndpointType[I, E, CASE_CLASS, R]
    Definition Classes
    EndpointOutputsOps
  34. def method(m: Method): EndpointType[I, E, O, R]
    Definition Classes
    EndpointInputsOps
  35. def name(n: String): EndpointType[I, E, O, R]
    Definition Classes
    EndpointInfoOps
  36. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  37. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  38. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  39. def options: EndpointType[I, E, O, R]
    Definition Classes
    EndpointInputsOps
  40. def out[PIPE_REQ_RESP, P, OP, R2](i: WebSocketBodyOutput[PIPE_REQ_RESP, _, _, P, R2])(implicit ts: typelevel.ParamConcat.Aux[O, P, OP]): EndpointType[I, E, OP, R with R2 with WebSockets]
    Definition Classes
    EndpointOutputsOps
  41. def out[BS, P, OP, R2](i: StreamBodyIO[BS, P, R2])(implicit ts: typelevel.ParamConcat.Aux[O, P, OP]): EndpointType[I, E, OP, R with R2]
    Definition Classes
    EndpointOutputsOps
  42. def out[P, OP](i: EndpointOutput[P])(implicit ts: typelevel.ParamConcat.Aux[O, P, OP]): EndpointType[I, E, OP, R]
    Definition Classes
    EndpointOutputsOps
  43. def output: EndpointOutput[O]
  44. def patch: EndpointType[I, E, O, R]
    Definition Classes
    EndpointInputsOps
  45. def post: EndpointType[I, E, O, R]
    Definition Classes
    EndpointInputsOps
  46. def prependIn[BS, J, JI, R2](i: StreamBodyIO[BS, J, R2])(implicit concat: typelevel.ParamConcat.Aux[J, I, JI]): EndpointType[JI, E, O, R with R2]
    Definition Classes
    EndpointInputsOps
  47. def prependIn[J, JI](i: EndpointInput[J])(implicit concat: typelevel.ParamConcat.Aux[J, I, JI]): EndpointType[JI, E, O, R]
    Definition Classes
    EndpointInputsOps
  48. def prependOut[PIPE_REQ_RESP, P, PO, R2](i: WebSocketBodyOutput[PIPE_REQ_RESP, _, _, P, R2])(implicit ts: typelevel.ParamConcat.Aux[P, O, PO]): EndpointType[I, E, PO, R with R2 with WebSockets]
    Definition Classes
    EndpointOutputsOps
  49. def prependOut[BS, P, PO, R2](i: StreamBodyIO[BS, P, R2])(implicit ts: typelevel.ParamConcat.Aux[P, O, PO]): EndpointType[I, E, PO, R]
    Definition Classes
    EndpointOutputsOps
  50. def prependOut[P, PO](i: EndpointOutput[P])(implicit ts: typelevel.ParamConcat.Aux[P, O, PO]): EndpointType[I, E, PO, R]
    Definition Classes
    EndpointOutputsOps
  51. def put: EndpointType[I, E, O, R]
    Definition Classes
    EndpointInputsOps
  52. def renderPathTemplate(renderPathParam: RenderPathParam = RenderPathTemplate.Defaults.path, renderQueryParam: Option[RenderQueryParam] = ..., includeAuth: Boolean = true): String

    Renders endpoint path, by default all parametrised path and query components are replaced by {param_name} or {paramN}, e.g.

    Renders endpoint path, by default all parametrised path and query components are replaced by {param_name} or {paramN}, e.g. for

    endpoint.in("p1" / path[String] / query[String]("par2"))

    returns /p1/{param1}?par2={par2}

    includeAuth

    Should authentication inputs be included in the result.

    Definition Classes
    EndpointMetaOps
  53. def serverLogic(g: ((U, I)) ⇒ F[Either[E, O]]): ServerEndpoint[(T, I), E, O, R, F]
  54. def serverLogicForCurrent[V, UV](f: (I) ⇒ F[Either[E, V]])(implicit concat: typelevel.ParamConcat.Aux[U, V, UV]): PartialServerEndpoint[UV, Unit, E, O, R, F]
  55. def serverLogicForCurrentRecoverErrors[V, UV](f: (I) ⇒ F[V])(implicit concat: typelevel.ParamConcat.Aux[U, V, UV], eIsThrowable: <:<[E, Throwable], eClassTag: ClassTag[E]): PartialServerEndpoint[UV, Unit, E, O, R, F]
  56. def serverLogicRecoverErrors(g: ((U, I)) ⇒ F[O])(implicit eIsThrowable: <:<[E, Throwable], eClassTag: ClassTag[E]): ServerEndpoint[(T, I), E, O, R, F]
  57. def show: String

    Basic information about the endpoint, excluding mapping information, with inputs sorted (first the method, then path, etc.)

    Basic information about the endpoint, excluding mapping information, with inputs sorted (first the method, then path, etc.)

    Definition Classes
    EndpointMetaOps
  58. def showDetail: String

    Detailed description of the endpoint, with inputs/outputs represented in the same order as originally defined, including mapping information.

    Detailed description of the endpoint, with inputs/outputs represented in the same order as originally defined, including mapping information.

    Definition Classes
    EndpointMetaOps
  59. def showRaw: String

    Equivalent to .toString, shows the whole case class structure.

    Equivalent to .toString, shows the whole case class structure.

    Definition Classes
    EndpointMetaOps
  60. def showType: String
    Attributes
    protected
    Definition Classes
    PartialServerEndpointEndpointMetaOps
  61. def summary(s: String): EndpointType[I, E, O, R]
    Definition Classes
    EndpointInfoOps
  62. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  63. def tag(t: String): EndpointType[I, E, O, R]
    Definition Classes
    EndpointInfoOps
  64. def tags(ts: List[String]): EndpointType[I, E, O, R]
    Definition Classes
    EndpointInfoOps
  65. def toString(): String
    Definition Classes
    AnyRef → Any
  66. def trace: EndpointType[I, E, O, R]
    Definition Classes
    EndpointInputsOps
  67. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  68. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  69. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from EndpointMetaOps[I, E, O, R]

Inherited from EndpointInfoOps[I, E, O, R]

Inherited from EndpointOutputsOps[I, E, O, R]

Inherited from EndpointInputsOps[I, E, O, R]

Inherited from AnyRef

Inherited from Any

Ungrouped