Package

io.udash.rest

raw

Permalink

package raw

Visibility
  1. Public
  2. All

Type Members

  1. final case class HeaderValue(value: String) extends AnyVal with RestValue with Product with Serializable

    Permalink

    Value used as encoding of Header parameters.

  2. sealed trait HttpBody extends AnyRef

    Permalink

    Value used to represent HTTP body.

    Value used to represent HTTP body. Also used as direct encoding of Body parameters. Types that have encoding to JsonValue automatically have encoding to HttpBody which uses application/json MIME type. There is also a specialized encoding provided for Unit which returns empty HTTP body when writing and ignores the body when reading.

  3. case class HttpCall(pathParams: List[PathValue], metadata: HttpMethodMetadata[_]) extends RestMethodCall with Product with Serializable

    Permalink
  4. case class HttpErrorException(code: Int, payload: com.avsystem.commons.OptArg[String] = OptArg.Empty, cause: Throwable = null) extends RuntimeException with NoStackTrace with Product with Serializable

    Permalink
  5. final class HttpMethod extends AbstractValueEnum

    Permalink

    Enum representing HTTP methods.

  6. case class HttpMethodMetadata[T](name: String, methodTag: HttpMethodTag, parametersMetadata: RestParametersMetadata, bodyFields: Mapping[ParamMetadata[_]], singleBodyParam: com.avsystem.commons.Opt[ParamMetadata[_]], formBody: Boolean, responseType: HttpResponseType[T]) extends RestMethodMetadata[T] with Product with Serializable

    Permalink
  7. case class HttpResponseType[T]() extends Product with Serializable

    Permalink

    Typeclass used during RestMetadata materialization to determine whether a real method is a valid HTTP method.

    Typeclass used during RestMetadata materialization to determine whether a real method is a valid HTTP method. Usually this means that the result must be a type wrapped into something that captures asynchronous computation, e.g. Future. Because REST framework core tries to be agnostic about this asynchronous wrapper (not everyone likes Futures), there are no default implicits provided for HttpResponseType. They must be provided externally.

    For example, FutureRestImplicits introduces an instance of HttpResponseType for Future[T], for arbitrary type T. For RestMetadata materialization this means that every method which returns a Future is considered a valid HTTP method. FutureRestImplicits is injected into materialization of RestMetadata through one of the base companion classes, e.g. DefaultRestApiCompanion. See MacroInstances for more information on injection of implicits.

    Annotations
    @implicitNotFound( ... )
  8. final case class JsonValue(value: String) extends AnyVal with RestValue with Product with Serializable

    Permalink

    Value used as encoding of BodyField parameters of non-FormBody methods.

    Value used as encoding of BodyField parameters of non-FormBody methods. Wrapped value MUST be a valid JSON.

  9. case class ParamMetadata[T]() extends TypedMetadata[T] with Product with Serializable

    Permalink
  10. case class PathName(value: PathValue) extends PathPatternElement with Product with Serializable

    Permalink
  11. case class PathParam(param: PathParamMetadata[_]) extends PathPatternElement with Product with Serializable

    Permalink
  12. case class PathParamMetadata[T](name: String, pathAnnot: Path) extends TypedMetadata[T] with Product with Serializable

    Permalink
  13. sealed trait PathPatternElement extends AnyRef

    Permalink
  14. final case class PathValue(value: String) extends AnyVal with RestValue with Product with Serializable

    Permalink

    Value used as encoding of Path parameters.

  15. case class PrefixCall(pathParams: List[PathValue], metadata: PrefixMetadata[_]) extends RestMethodCall with Product with Serializable

    Permalink
  16. case class PrefixMetadata[T](name: String, methodTag: Prefix, parametersMetadata: RestParametersMetadata, result: RestMetadata.Lazy[T]) extends RestMethodMetadata[T] with Product with Serializable

    Permalink
  17. final case class QueryValue(value: String) extends AnyVal with RestValue with Product with Serializable

    Permalink

    Value used as encoding of Query parameters and BodyField parameters of FormBody methods.

  18. trait RawRest extends AnyRef

    Permalink
    Annotations
    @methodTag( ... )
  19. case class ResolvedCall(root: RestMetadata[_], prefixes: List[PrefixCall], finalCall: HttpCall) extends Product with Serializable

    Permalink
  20. case class RestMetadata[T](prefixMethods: List[PrefixMetadata[_]], httpGetMethods: List[HttpMethodMetadata[_]], httpBodyMethods: List[HttpMethodMetadata[_]]) extends Product with Serializable

    Permalink
    Annotations
    @implicitNotFound( ... ) @methodTag( ... )
  21. sealed abstract class RestMethodCall extends AnyRef

    Permalink
  22. sealed abstract class RestMethodMetadata[T] extends TypedMetadata[T]

    Permalink
  23. case class RestParameters(path: List[PathValue] = Nil, headers: Mapping[HeaderValue] = Mapping.empty, query: Mapping[QueryValue] = Mapping.empty) extends Product with Serializable

    Permalink
  24. case class RestParametersMetadata(path: List[PathParamMetadata[_]], headers: Mapping[ParamMetadata[_]], query: Mapping[ParamMetadata[_]]) extends Product with Serializable

    Permalink
  25. case class RestRequest(method: HttpMethod, parameters: RestParameters, body: HttpBody) extends Product with Serializable

    Permalink
  26. case class RestResponse(code: Int, headers: Mapping[HeaderValue], body: HttpBody) extends Product with Serializable

    Permalink
  27. sealed trait RestValue extends Any

    Permalink

Value Members

  1. object HttpBody

    Permalink
  2. object HttpMethod extends AbstractValueEnumCompanion[HttpMethod] with Serializable

    Permalink
  3. object JsonValue extends Serializable

    Permalink
  4. object PathValue extends (String) ⇒ PathValue with Serializable

    Permalink
  5. object QueryValue extends (String) ⇒ QueryValue with Serializable

    Permalink
  6. object RawRest extends RawRpcCompanion[RawRest]

    Permalink
  7. object RestMetadata extends RpcMetadataCompanion[RestMetadata] with Serializable

    Permalink
  8. object RestParameters extends Serializable

    Permalink
  9. object RestResponse extends Serializable

    Permalink

Ungrouped