aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakob Odersky <jakob@driver.xyz>2017-08-16 13:22:45 -0700
committerJakob Odersky <jakob@driver.xyz>2017-08-16 19:26:10 -0700
commitfc08317f7a8eed466f6b52a888387e96b6a85532 (patch)
treedb823e0dd09e58c0518b74befce224a497582aa8
parent9e6c7099285280dfecd939e7c374c0ef99fe1e35 (diff)
downloadrest-query-fc08317f7a8eed466f6b52a888387e96b6a85532.tar.gz
rest-query-fc08317f7a8eed466f6b52a888387e96b6a85532.tar.bz2
rest-query-fc08317f7a8eed466f6b52a888387e96b6a85532.zip
Don't require parser query string
-rw-r--r--src/main/scala/xyz/driver/pdsuicommon/http/Directives.scala7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/main/scala/xyz/driver/pdsuicommon/http/Directives.scala b/src/main/scala/xyz/driver/pdsuicommon/http/Directives.scala
index ec89649..feb224a 100644
--- a/src/main/scala/xyz/driver/pdsuicommon/http/Directives.scala
+++ b/src/main/scala/xyz/driver/pdsuicommon/http/Directives.scala
@@ -19,8 +19,11 @@ import scala.util._
trait Directives {
- val paginated: Directive1[Pagination] = parameters(('pageSize.as[Int], 'pageNumber.as[Int])).tmap {
- case (size, number) => Pagination(size, number)
+ val paginated: Directive1[Pagination] = parameterSeq.flatMap { params =>
+ PaginationParser.parse(params) match {
+ case Success(pagination) => provide(pagination)
+ case Failure(ex) => failWith(ex)
+ }
}
def sorted(validDimensions: Set[String] = Set.empty): Directive1[Sorting] = parameterSeq.flatMap { params =>