OptionalMultiQueryParamDecoderMatcher

org.http4s.dsl.impl.OptionalMultiQueryParamDecoderMatcher

Capture a query parameter that appears 0 or more times.

case class Foo(i: Int)
implicit val fooDecoder: QueryParamDecoder[Foo] = ...
implicit val fooParam: QueryParam[Foo] = ...

object FooMatcher extends OptionalMultiQueryParamDecoderMatcher[Foo]("foo")
val routes = HttpRoutes.of {
  // matches http://.../closest?foo=2&foo=3&foo=4
  case GET -> Root / "closest" :? FooMatcher(Validated.Valid(Seq(Foo(2),Foo(3),Foo(4)))) => ...

  /*
  *  matches http://.../closest?foo=2&foo=3&foo=4 as well as http://.../closest (no parameters)
  *  or http://.../closest?foo=2 (single occurrence)
  */
  case GET -> Root / "closest" :? FooMatcher(is) => ...

Attributes

Source
Path.scala
Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods