ServerEndpoint

case class ServerEndpoint[I, E, O, -R, F[_]](endpoint: Endpoint[I, E, O, R], logic: MonadError[F] => I => F[Either[E, O]]) extends EndpointInfoOps[I, E, O, R] with EndpointMetaOps[I, E, O, R]
Type Params
E

Error output parameter types.

F

The effect type used in the provided server logic.

I

Input parameter types.

O

Output parameter types.

R

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

trait Serializable
trait Product
trait Equals
trait EndpointMetaOps[I, E, O, R]
trait EndpointInfoOps[I, E, O, R]
class Object
trait Matchable
class Any

Type members

Types

override type EndpointType[_I, _E, _O, -_R] = ServerEndpoint[_I, _E, _O, _R, F]

Value members

Concrete methods

override def errorOutput: EndpointOutput[E]
Definition Classes
override def info: EndpointInfo
Definition Classes
override def input: EndpointInput[I]
Definition Classes
override def output: EndpointOutput[O]
Definition Classes

Inherited methods

protected def additionalInputsForShow: Vector[Basic[_]]
Inherited from
EndpointMetaOps
def deprecated(): EndpointType[I, E, O, R]
Inherited from
EndpointInfoOps
def description(d: String): EndpointType[I, E, O, R]
Inherited from
EndpointInfoOps
def docsExtension[A](key: String, value: A)(implicit evidence$2: JsonCodec[A]): EndpointType[I, E, O, R]
Inherited from
EndpointInfoOps
def info(i: EndpointInfo): EndpointType[I, E, O, R]
Inherited from
EndpointInfoOps
def name(n: String): EndpointType[I, E, O, R]
Inherited from
EndpointInfoOps
def productElementNames: Iterator[String]
Inherited from
Product
def productIterator: Iterator[Any]
Inherited from
Product
def renderPathTemplate(renderPathParam: RenderPathParam, renderQueryParam: Option[RenderQueryParam], includeAuth: Boolean): String

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

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}

Value Params
includeAuth

Should authentication inputs be included in the result.

Inherited from
EndpointMetaOps
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.)

Inherited from
EndpointMetaOps
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.

Inherited from
EndpointMetaOps
def showRaw: String

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

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

Inherited from
EndpointMetaOps
def summary(s: String): EndpointType[I, E, O, R]
Inherited from
EndpointInfoOps
def tag(t: String): EndpointType[I, E, O, R]
Inherited from
EndpointInfoOps
def tags(ts: List[String]): EndpointType[I, E, O, R]
Inherited from
EndpointInfoOps