io.fintrospect

parameters

package parameters

Visibility
  1. Public
  2. All

Type Members

  1. trait Bindable[T, B <: Binding] extends AnyRef

  2. sealed trait Binding extends AnyRef

  3. abstract class Body[T] extends Iterable[BodyParameter[_]] with Retrieval[T, HttpRequest] with Bindable[T, Binding]

  4. trait BodyParameter[T] extends Parameter[T]

  5. case class BodySpec[T](description: Option[String], contentType: ContentType, deserialize: (String) ⇒ T, serialize: (T) ⇒ String) extends Product with Serializable

    Spec required to marshall a body of a custom type

    Spec required to marshall a body of a custom type

    T

    the type of the parameter

    description

    Description to be used in the documentation

    contentType

    The HTTP content type header value

    deserialize

    function to take the input string from the request and attempt to construct a deserialized instance. Exceptions are automatically caught and translated into the appropriate result, so just concentrate on the Happy-path case

    serialize

    function to take the input type and serialize it to a string to be represented in the request

  6. case class Form(fields: Map[String, Set[String]]) extends Iterable[(String, Set[String])] with Product with Serializable

  7. class FormBody extends Body[Form]

  8. abstract class FormField[T] extends Validatable[T, Form] with BodyParameter[T] with Bindable[T, FormFieldBinding]

  9. class FormFieldBinding extends Binding

  10. abstract class HeaderParameter[T] extends Parameter[T] with Validatable[T, HttpRequest] with Bindable[T, RequestBinding]

  11. trait Mandatory[T, From] extends Retrieval[T, From] with Parameter[T] with Validatable[T, From]

  12. trait Optional[T, From] extends Retrieval[Option[T], From] with Parameter[T] with Validatable[T, From]

  13. sealed class ParamType extends AnyRef

  14. trait Parameter[T] extends AnyRef

  15. case class ParameterSpec[T](name: String, description: Option[String] = None, paramType: ParamType, deserialize: (String) ⇒ T, serialize: (T) ⇒ String) extends Product with Serializable

    Spec required to marshall a parameter of a custom type

    Spec required to marshall a parameter of a custom type

    T

    the type of the parameter

    description

    optional description of the parameter (for use in description endpoints)

    deserialize

    function to take the input string from the request and attempt to construct a deserialized instance of T. Exceptions are automatically caught and translated into the appropriate result, so just concentrate on the Happy-path case

    serialize

    function to take the input type and serialize it to a string to be represented in the request

    returns

    a parameter for retrieving a value of type [T] from the request

  16. trait Parameters[P[_], R[_]] extends AnyRef

    Prototype functions for creating parameters of various types.

  17. trait PathBindable[T] extends Bindable[T, PathBinding]

  18. class PathBinding extends Binding

  19. abstract class PathParameter[T] extends Parameter[T] with Iterable[PathParameter[_]]

  20. class QueryBinding extends Binding

  21. abstract class QueryParameter[T] extends Parameter[T] with Validatable[T, HttpRequest] with Bindable[T, QueryBinding]

  22. class RequestBinding extends Binding

  23. case class RequestBuild(uriParts: Seq[String] = Seq(), queries: Map[String, String] = Map(), fn: (HttpRequest) ⇒ HttpRequest = identity) extends Product with Serializable

  24. trait Retrieval[T, From] extends AnyRef

  25. class UniBody[T] extends Body[T]

    Represents a generic body which can be written to and retrieved from a request.

    Represents a generic body which can be written to and retrieved from a request.

    T

    the type of the request when it has been deserialized from the request

  26. trait Validatable[T, From] extends AnyRef

Value Members

  1. object ArrayParamType extends ParamType

  2. object Body

  3. object BooleanParamType extends ParamType

  4. object Form extends Serializable

  5. object FormBody

  6. object FormField

  7. object Header

  8. object IntegerParamType extends ParamType

  9. object NullParamType extends ParamType

  10. object NumberParamType extends ParamType

  11. object ObjectParamType extends ParamType

  12. object ParameterSpec extends Serializable

    Predefined ParameterSpec instances for common types

  13. object Path extends Parameters[PathParameter, PathBindable]

  14. object Query

  15. object StringParamType extends ParamType

Ungrouped