ElasticMQDirectives

org.elasticmq.rest.sqs.directives.ElasticMQDirectives

Attributes

Graph
Supertypes
trait Logging
trait LazyLogging
trait Directives
trait AttributeDirectives
trait FramedEntityStreamingDirectives
trait WebSocketDirectives
trait SecurityDirectives
trait SchemeDirectives
trait RouteDirectives
trait RespondWithDirectives
trait RangeDirectives
trait PathDirectives
trait ImplicitPathMatcherConstruction
trait PathMatchers
trait TimeoutDirectives
trait ParameterDirectives
trait ParameterDirectivesInstances
trait MiscDirectives
trait MethodDirectives
trait MarshallingDirectives
trait HostDirectives
trait HeaderDirectives
trait FutureDirectives
trait FormFieldDirectives
trait FormFieldDirectivesInstances
trait FileUploadDirectives
trait FileAndResourceDirectives
trait ExecutionDirectives
trait CodingDirectives
trait DebuggingDirectives
trait CookieDirectives
trait CacheConditionDirectives
trait BasicDirectives
trait RouteConcatenation
class Object
trait Matchable
class Any
Show all

Members list

Type members

Inherited classlikes

case class ErrorResponse(`__type`: String, Message: String)

Attributes

Inherited from:
ExceptionDirectives
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object ErrorResponse

Attributes

Inherited from:
ExceptionDirectives
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
object HexIntNumber extends NumberMatcher[Int]

A PathMatcher that efficiently matches a number of hex-digits and extracts their (non-negative) Int value. The matcher will not match 0 digits or a sequence of digits that would represent an Int value larger than Int.MaxValue.

A PathMatcher that efficiently matches a number of hex-digits and extracts their (non-negative) Int value. The matcher will not match 0 digits or a sequence of digits that would represent an Int value larger than Int.MaxValue.

Attributes

Inherited from:
PathMatchers
Supertypes
class NumberMatcher[Int]
class PathMatcher[(Int)]
trait Path => Matching[(Int)]
class Object
trait Matchable
class Any
Show all
object HexLongNumber extends NumberMatcher[Long]

A PathMatcher that efficiently matches a number of hex-digits and extracts their (non-negative) Long value. The matcher will not match 0 digits or a sequence of digits that would represent an Long value larger than Long.MaxValue.

A PathMatcher that efficiently matches a number of hex-digits and extracts their (non-negative) Long value. The matcher will not match 0 digits or a sequence of digits that would represent an Long value larger than Long.MaxValue.

Attributes

Inherited from:
PathMatchers
Supertypes
class NumberMatcher[Long]
class PathMatcher[(Long)]
trait Path => Matching[(Long)]
class Object
trait Matchable
class Any
Show all
object IntNumber extends NumberMatcher[Int]

A PathMatcher that efficiently matches a number of digits and extracts their (non-negative) Int value. The matcher will not match 0 digits or a sequence of digits that would represent an Int value larger than Int.MaxValue.

A PathMatcher that efficiently matches a number of digits and extracts their (non-negative) Int value. The matcher will not match 0 digits or a sequence of digits that would represent an Int value larger than Int.MaxValue.

Attributes

Inherited from:
PathMatchers
Supertypes
class NumberMatcher[Int]
class PathMatcher[(Int)]
trait Path => Matching[(Int)]
class Object
trait Matchable
class Any
Show all
object LongNumber extends NumberMatcher[Long]

A PathMatcher that efficiently matches a number of digits and extracts their (non-negative) Long value. The matcher will not match 0 digits or a sequence of digits that would represent an Long value larger than Long.MaxValue.

A PathMatcher that efficiently matches a number of digits and extracts their (non-negative) Long value. The matcher will not match 0 digits or a sequence of digits that would represent an Long value larger than Long.MaxValue.

Attributes

Inherited from:
PathMatchers
Supertypes
class NumberMatcher[Long]
class PathMatcher[(Long)]
trait Path => Matching[(Long)]
class Object
trait Matchable
class Any
Show all
abstract class NumberMatcher[T](max: T, base: T)(implicit x: Integral[T]) extends PathMatcher[(T)]

Attributes

Inherited from:
PathMatchers
Supertypes
class PathMatcher[(T)]
trait Path => Matching[(T)]
class Object
trait Matchable
class Any
Known subtypes
object HexIntNumber.type
object HexLongNumber.type
object IntNumber.type
object LongNumber.type
object PathEnd extends PathMatcher[Unit]

A PathMatcher that matches the very end of the requests URI path.

A PathMatcher that matches the very end of the requests URI path.

Attributes

Inherited from:
PathMatchers
Supertypes
class PathMatcher[Unit]
trait Path => Matching[Unit]
class Object
trait Matchable
class Any
object Remaining extends PathMatcher[(String)]

A PathMatcher that matches and extracts the complete remaining, unmatched part of the request's URI path as an (encoded!) String. If you need access to the remaining unencoded elements of the path use the RemainingPath matcher!

A PathMatcher that matches and extracts the complete remaining, unmatched part of the request's URI path as an (encoded!) String. If you need access to the remaining unencoded elements of the path use the RemainingPath matcher!

Attributes

Inherited from:
PathMatchers
Supertypes
class PathMatcher[(String)]
trait Path => Matching[(String)]
class Object
trait Matchable
class Any
object RemainingPath extends PathMatcher[(Path)]

A PathMatcher that matches and extracts the complete remaining, unmatched part of the request's URI path.

A PathMatcher that matches and extracts the complete remaining, unmatched part of the request's URI path.

Attributes

Inherited from:
PathMatchers
Supertypes
class PathMatcher[(Path)]
trait Path => Matching[(Path)]
class Object
trait Matchable
class Any
object Segment extends PathMatcher[(String)]

A PathMatcher that matches if the unmatched path starts with a path segment. If so the path segment is extracted as a String.

A PathMatcher that matches if the unmatched path starts with a path segment. If so the path segment is extracted as a String.

Attributes

Inherited from:
PathMatchers
Supertypes
class PathMatcher[(String)]
trait Path => Matching[(String)]
class Object
trait Matchable
class Any
object Slash extends PathMatcher[Unit]

A PathMatcher that matches a single slash character ('/').

A PathMatcher that matches a single slash character ('/').

Attributes

Inherited from:
PathMatchers
Supertypes
class PathMatcher[Unit]
trait Path => Matching[Unit]
class Object
trait Matchable
class Any

Inherited types

type AsyncAuthenticator[T] = Credentials => Future[Option[T]]

Attributes

Inherited from:
SecurityDirectives
type AsyncAuthenticatorPF[T] = PartialFunction[Credentials, Future[T]]

Attributes

Inherited from:
SecurityDirectives
type AuthenticationResult[+T] = Either[HttpChallenge, T]

The result of an HTTP authentication attempt is either the user object or an HttpChallenge to present to the browser.

The result of an HTTP authentication attempt is either the user object or an HttpChallenge to present to the browser.

Attributes

Inherited from:
SecurityDirectives
type Authenticator[T] = Credentials => Option[T]

Attributes

Inherited from:
SecurityDirectives
type AuthenticatorPF[T] = PartialFunction[Credentials, T]

Attributes

Inherited from:
SecurityDirectives
type RequestToSourceUnmarshaller[T] = FromRequestUnmarshaller[Source[T, NotUsed]]

Attributes

Inherited from:
FramedEntityStreamingDirectives

Value members

Concrete methods

protected def isValidFifoPropertyValue(propValue: String): Boolean

Valid values are alphanumeric characters and punctuation (!"#$%&'()*+,-./:;<=>?@[]^_`{|}~). The maximum length is 128 characters

Valid values are alphanumeric characters and punctuation (!"#$%&'()*+,-./:;<=>?@[]^_`{|}~). The maximum length is 128 characters

Value parameters

propValue

The string to validate

Attributes

Returns

true if the string is valid, false otherwise

def rootPath(body: Route): Route

Inherited methods

def Segments(min: Int, max: Int): PathMatcher1[List[String]]

A PathMatcher that matches between min and max (both inclusively) path segments (separated by slashes) as a List[String]. If there are more than count segments present the remaining ones will be left unmatched. If the path has a trailing slash this slash will not be matched.

A PathMatcher that matches between min and max (both inclusively) path segments (separated by slashes) as a List[String]. If there are more than count segments present the remaining ones will be left unmatched. If the path has a trailing slash this slash will not be matched.

Attributes

Inherited from:
PathMatchers
def Segments(count: Int): PathMatcher1[List[String]]

A PathMatcher that matches the given number of path segments (separated by slashes) as a List[String]. If there are more than count segments present the remaining ones will be left unmatched. If the path has a trailing slash this slash will not be matched.

A PathMatcher that matches the given number of path segments (separated by slashes) as a List[String]. If there are more than count segments present the remaining ones will be left unmatched. If the path has a trailing slash this slash will not be matched.

Attributes

Inherited from:
PathMatchers
def as[T](implicit um: FromRequestUnmarshaller[T]): FromRequestUnmarshaller[T]

Returns the in-scope FromRequestUnmarshaller for the given type.

Returns the in-scope FromRequestUnmarshaller for the given type.

Attributes

Inherited from:
MarshallingDirectives
final def asSourceOf[T](support: EntityStreamingSupport)(implicit um: FromByteStringUnmarshaller[T]): RequestToSourceUnmarshaller[T]

Extracts entity as pekko.stream.scaladsl.Source of elements of type T. This is achieved by applying the implicitly provided (in the following order):

Extracts entity as pekko.stream.scaladsl.Source of elements of type T. This is achieved by applying the implicitly provided (in the following order):

  • 1st: chunk-up the incoming ByteStrings by applying the Content-Type-aware framing
  • 2nd: apply the Unmarshaller (from ByteString to T) for each of the respective "chunks" (e.g. for each JSON element contained within an array).

The request will be rejected with an pekko.http.scaladsl.server.UnsupportedRequestContentTypeRejection if its ContentType is not supported by the used framing or unmarshaller.

Cancelling extracted pekko.stream.scaladsl.Source closes the connection abruptly (same as cancelling the entity.dataBytes).

See also MiscDirectives.withoutSizeLimit as you may want to allow streaming infinite streams of data in this route. By default the uploaded data is limited by the pekko.http.parsing.max-content-length.

Attributes

Inherited from:
FramedEntityStreamingDirectives
final def asSourceOf[T](implicit um: FromByteStringUnmarshaller[T], support: EntityStreamingSupport): RequestToSourceUnmarshaller[T]

Extracts entity as pekko.stream.scaladsl.Source of elements of type T. This is achieved by applying the implicitly provided (in the following order):

Extracts entity as pekko.stream.scaladsl.Source of elements of type T. This is achieved by applying the implicitly provided (in the following order):

  • 1st: chunk-up the incoming ByteStrings by applying the Content-Type-aware framing
  • 2nd: apply the Unmarshaller (from ByteString to T) for each of the respective "chunks" (e.g. for each JSON element contained within an array).

The request will be rejected with an pekko.http.scaladsl.server.UnsupportedRequestContentTypeRejection if its ContentType is not supported by the used framing or unmarshaller.

Cancelling extracted pekko.stream.scaladsl.Source closes the connection abruptly (same as cancelling the entity.dataBytes).

See also MiscDirectives.withoutSizeLimit as you may want to allow streaming infinite streams of data in this route. By default the uploaded data is limited by the pekko.http.parsing.max-content-length.

Attributes

Inherited from:
FramedEntityStreamingDirectives
def attribute[T](key: AttributeKey[T]): Directive1[T]

Extracts a request attribute value for the given key.

Extracts a request attribute value for the given key.

Attributes

Inherited from:
AttributeDirectives
def authenticateBasic[T](realm: String, authenticator: () => T): AuthenticationDirective[T]

Wraps the inner route with Http Basic authentication support using a given Authenticator[T]. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

Wraps the inner route with Http Basic authentication support using a given Authenticator[T]. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

Attributes

Inherited from:
SecurityDirectives
def authenticateBasicAsync[T](realm: String, authenticator: () => T): AuthenticationDirective[T]

Wraps the inner route with Http Basic authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

Wraps the inner route with Http Basic authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

Attributes

Inherited from:
SecurityDirectives
def authenticateBasicPF[T](realm: String, authenticator: AuthenticatorPF[T]): AuthenticationDirective[T]

A directive that wraps the inner route with Http Basic authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

A directive that wraps the inner route with Http Basic authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

Attributes

Inherited from:
SecurityDirectives
def authenticateBasicPFAsync[T](realm: String, authenticator: AsyncAuthenticatorPF[T]): AuthenticationDirective[T]

A directive that wraps the inner route with Http Basic authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

A directive that wraps the inner route with Http Basic authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

Attributes

Inherited from:
SecurityDirectives
def authenticateOAuth2[T](realm: String, authenticator: () => T): AuthenticationDirective[T]

A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

Attributes

Inherited from:
SecurityDirectives
def authenticateOAuth2Async[T](realm: String, authenticator: () => T): AuthenticationDirective[T]

A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

Attributes

Inherited from:
SecurityDirectives
def authenticateOAuth2PF[T](realm: String, authenticator: AuthenticatorPF[T]): AuthenticationDirective[T]

A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

Attributes

Inherited from:
SecurityDirectives
def authenticateOAuth2PFAsync[T](realm: String, authenticator: AsyncAuthenticatorPF[T]): AuthenticationDirective[T]

A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

Attributes

Inherited from:
SecurityDirectives
def authenticateOrRejectWithChallenge[C <: HttpCredentials : ClassTag, T](authenticator: Option[C] => Future[AuthenticationResult[T]]): AuthenticationDirective[T]

Lifts an authenticator function into a directive. Same as authenticateOrRejectWithChallenge but only applies the authenticator function with a certain type of credentials.

Lifts an authenticator function into a directive. Same as authenticateOrRejectWithChallenge but only applies the authenticator function with a certain type of credentials.

Attributes

Inherited from:
SecurityDirectives
def authenticateOrRejectWithChallenge[T](authenticator: Option[HttpCredentials] => Future[AuthenticationResult[T]]): AuthenticationDirective[T]

Lifts an authenticator function into a directive. The authenticator function gets passed in credentials from the Authorization header of the request. If the function returns Right(user) the user object is provided to the inner route. If the function returns Left(challenge) the request is rejected with an AuthenticationFailedRejection that contains this challenge to be added to the response.

Lifts an authenticator function into a directive. The authenticator function gets passed in credentials from the Authorization header of the request. If the function returns Right(user) the user object is provided to the inner route. If the function returns Left(challenge) the request is rejected with an AuthenticationFailedRejection that contains this challenge to be added to the response.

Attributes

Inherited from:
SecurityDirectives
def authorize(check: RequestContext => Boolean): Directive0

Applies the given authorization check to the request. If the check fails the route is rejected with an AuthorizationFailedRejection.

Applies the given authorization check to the request. If the check fails the route is rejected with an AuthorizationFailedRejection.

Attributes

Inherited from:
SecurityDirectives
def authorize(check: => Boolean): Directive0

Applies the given authorization check to the request. If the check fails the route is rejected with an AuthorizationFailedRejection.

Applies the given authorization check to the request. If the check fails the route is rejected with an AuthorizationFailedRejection.

Attributes

Inherited from:
SecurityDirectives
def authorizeAsync(check: RequestContext => Future[Boolean]): Directive0

Asynchronous version of authorize. If the Future fails or is completed with false authorization fails and the route is rejected with an AuthorizationFailedRejection.

Asynchronous version of authorize. If the Future fails or is completed with false authorization fails and the route is rejected with an AuthorizationFailedRejection.

Attributes

Inherited from:
SecurityDirectives
def authorizeAsync(check: => Future[Boolean]): Directive0

Asynchronous version of authorize. If the Future fails or is completed with false authorization fails and the route is rejected with an AuthorizationFailedRejection.

Asynchronous version of authorize. If the Future fails or is completed with false authorization fails and the route is rejected with an AuthorizationFailedRejection.

Attributes

Inherited from:
SecurityDirectives
def cancelRejection(rejection: Rejection): Directive0

Adds a TransformationRejection cancelling all rejections equal to the given one to the list of rejections potentially coming back from the inner route.

Adds a TransformationRejection cancelling all rejections equal to the given one to the list of rejections potentially coming back from the inner route.

Attributes

Inherited from:
BasicDirectives
def cancelRejections(cancelFilter: Rejection => Boolean): Directive0

Adds a TransformationRejection cancelling all rejections for which the given filter function returns true to the list of rejections potentially coming back from the inner route.

Adds a TransformationRejection cancelling all rejections for which the given filter function returns true to the list of rejections potentially coming back from the inner route.

Attributes

Inherited from:
BasicDirectives
def cancelRejections(classes: Class[_]*): Directive0

Adds a TransformationRejection cancelling all rejections of one of the given classes to the list of rejections potentially coming back from the inner route.

Adds a TransformationRejection cancelling all rejections of one of the given classes to the list of rejections potentially coming back from the inner route.

Attributes

Inherited from:
BasicDirectives
def checkSameOrigin(allowed: Default): Directive0

Checks that request comes from the same origin. Extracts the Origin header value and verifies that allowed range contains the obtained value. In the case of absent of the Origin header rejects with MissingHeaderRejection. If the origin value is not in the allowed range rejects with an InvalidOriginRejection and StatusCodes.Forbidden status.

Checks that request comes from the same origin. Extracts the Origin header value and verifies that allowed range contains the obtained value. In the case of absent of the Origin header rejects with MissingHeaderRejection. If the origin value is not in the allowed range rejects with an InvalidOriginRejection and StatusCodes.Forbidden status.

Attributes

Inherited from:
HeaderDirectives
def complete[T](status: StatusCode, headers: Seq[HttpHeader], v: => T)(implicit m: ToEntityMarshaller[T]): StandardRoute

Completes the request using the given arguments.

Completes the request using the given arguments.

Attributes

Inherited from:
RouteDirectives
def complete[T](status: StatusCode, v: => T)(implicit m: ToEntityMarshaller[T]): StandardRoute

Completes the request using the given arguments.

Completes the request using the given arguments.

Attributes

Inherited from:
RouteDirectives
def complete(m: => ToResponseMarshallable): StandardRoute

Completes the request using the given arguments.

Completes the request using the given arguments.

Attributes

Inherited from:
RouteDirectives
def completeOrRecoverWith(magnet: CompleteOrRecoverWithMagnet): Directive1[Throwable]

"Unwraps" a Future[T] and runs the inner route when the future has failed with the future's failure exception as an extraction of type Throwable. If the future succeeds the request is completed using the values marshaller (This directive therefore requires a marshaller for the futures type to be implicitly available.)

"Unwraps" a Future[T] and runs the inner route when the future has failed with the future's failure exception as an extraction of type Throwable. If the future succeeds the request is completed using the values marshaller (This directive therefore requires a marshaller for the futures type to be implicitly available.)

Attributes

Inherited from:
FutureDirectives
def completeWith[T](marshaller: ToResponseMarshaller[T])(inner: (T => Unit) => Unit): Route

Uses the marshaller for the given type to produce a completion function that is passed to its inner function. You can use it do decouple marshaller resolution from request completion.

Uses the marshaller for the given type to produce a completion function that is passed to its inner function. You can use it do decouple marshaller resolution from request completion.

Attributes

Inherited from:
MarshallingDirectives
def concat(routes: Route*): Route

Tries the supplied routes in sequence, returning the result of the first route that doesn't reject the request. This is an alternative to direct usage of the infix ~ operator. The ~ can be prone to programmer error, because if it is omitted, the program will still be syntactically correct, but will not actually attempt to match multiple routes, as intended.

Tries the supplied routes in sequence, returning the result of the first route that doesn't reject the request. This is an alternative to direct usage of the infix ~ operator. The ~ can be prone to programmer error, because if it is omitted, the program will still be syntactically correct, but will not actually attempt to match multiple routes, as intended.

Value parameters

routes

subroutes to concatenate

Attributes

Returns

the concatenated route

Inherited from:
RouteConcatenation
def conditional(eTag: Option[EntityTag], lastModified: Option[DateTime]): Directive0

Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

In particular the algorithm defined by http://tools.ietf.org/html/rfc7232#section-6 is implemented by this directive.

Note: if you want to combine this directive with withRangeSupport(...) you need to put it on the outside of the withRangeSupport(...) directive, i.e. withRangeSupport(...) must be on a deeper level in your route structure in order to function correctly.

Attributes

Inherited from:
CacheConditionDirectives
def conditional(eTag: EntityTag, lastModified: DateTime): Directive0

Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

In particular the algorithm defined by http://tools.ietf.org/html/rfc7232#section-6 is implemented by this directive.

Note: if you want to combine this directive with withRangeSupport(...) you need to put it on the outside of the withRangeSupport(...) directive, i.e. withRangeSupport(...) must be on a deeper level in your route structure in order to function correctly.

Attributes

Inherited from:
CacheConditionDirectives
def conditional(lastModified: DateTime): Directive0

Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

In particular the algorithm defined by http://tools.ietf.org/html/rfc7232#section-6 is implemented by this directive.

Note: if you want to combine this directive with withRangeSupport(...) you need to put it on the outside of the withRangeSupport(...) directive, i.e. withRangeSupport(...) must be on a deeper level in your route structure in order to function correctly.

Attributes

Inherited from:
CacheConditionDirectives
def conditional(eTag: EntityTag): Directive0

Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

In particular the algorithm defined by http://tools.ietf.org/html/rfc7232#section-6 is implemented by this directive.

Note: if you want to combine this directive with withRangeSupport(...) you need to put it on the outside of the withRangeSupport(...) directive, i.e. withRangeSupport(...) must be on a deeper level in your route structure in order to function correctly.

Attributes

Inherited from:
CacheConditionDirectives
def contextPath: String

Attributes

Inherited from:
ContextPathModule
def decodeRequest: Directive0

Decompresses the incoming request if it is gzip or deflate compressed. Uncompressed requests are passed through untouched. If the request encoded with another encoding the request is rejected with an UnsupportedRequestEncodingRejection.

Decompresses the incoming request if it is gzip or deflate compressed. Uncompressed requests are passed through untouched. If the request encoded with another encoding the request is rejected with an UnsupportedRequestEncodingRejection.

Attributes

Inherited from:
CodingDirectives
def decodeRequestWith(decoders: Decoder*): Directive0

Decodes the incoming request if it is encoded with one of the given encoders. If the request encoding doesn't match one of the given encoders the request is rejected with an UnsupportedRequestEncodingRejection. If no decoders are given the default encoders (Gzip, Deflate, NoCoding) are used.

Decodes the incoming request if it is encoded with one of the given encoders. If the request encoding doesn't match one of the given encoders the request is rejected with an UnsupportedRequestEncodingRejection. If no decoders are given the default encoders (Gzip, Deflate, NoCoding) are used.

Attributes

Inherited from:
CodingDirectives
def decodeRequestWith(decoder: Decoder): Directive0

Decodes the incoming request using the given Decoder. If the request encoding doesn't match the request is rejected with an UnsupportedRequestEncodingRejection.

Decodes the incoming request using the given Decoder. If the request encoding doesn't match the request is rejected with an UnsupportedRequestEncodingRejection.

Attributes

Inherited from:
CodingDirectives
def delete: Directive0

Rejects all non-DELETE requests.

Rejects all non-DELETE requests.

Attributes

Inherited from:
MethodDirectives
def deleteCookie(name: String, domain: String, path: String): Directive0

Adds a Set-Cookie response header expiring the cookie with the given properties.

Adds a Set-Cookie response header expiring the cookie with the given properties.

Attributes

Inherited from:
CookieDirectives
def deleteCookie(first: HttpCookie, more: HttpCookie*): Directive0

Adds a Set-Cookie response header expiring the given cookies.

Adds a Set-Cookie response header expiring the given cookies.

Attributes

Inherited from:
CookieDirectives
def emptyResponse(xmlTagName: String)(implicit marshallerDependencies: MarshallerDependencies): Route

Attributes

Inherited from:
RespondDirectives
def encodeResponse: Directive0

Encodes the response with the encoding that is requested by the client via the Accept- Encoding header. The response encoding is determined by the rules specified in http://tools.ietf.org/html/rfc7231#section-5.3.4.

Encodes the response with the encoding that is requested by the client via the Accept- Encoding header. The response encoding is determined by the rules specified in http://tools.ietf.org/html/rfc7231#section-5.3.4.

If the Accept-Encoding header is missing or empty or specifies an encoding other than identity, gzip or deflate then no encoding is used.

Attributes

Inherited from:
CodingDirectives
def encodeResponseWith(first: Encoder, more: Encoder*): Directive0

Encodes the response with the encoding that is requested by the client via the Accept- Encoding header. The response encoding is determined by the rules specified in http://tools.ietf.org/html/rfc7231#section-5.3.4.

Encodes the response with the encoding that is requested by the client via the Accept- Encoding header. The response encoding is determined by the rules specified in http://tools.ietf.org/html/rfc7231#section-5.3.4.

If the Accept-Encoding header is missing then the response is encoded using the first encoder.

If the Accept-Encoding header is empty and NoCoding is part of the encoders then no response encoding is used. Otherwise the request is rejected.

Attributes

Inherited from:
CodingDirectives
def entity[T](um: FromRequestUnmarshaller[T]): Directive1[T]

Unmarshalls the requests entity to the given type passes it to its inner Route. If there is a problem with unmarshalling the request is rejected with the Rejection produced by the unmarshaller.

Unmarshalls the requests entity to the given type passes it to its inner Route. If there is a problem with unmarshalling the request is rejected with the Rejection produced by the unmarshaller.

Attributes

Inherited from:
MarshallingDirectives
def exceptionHandlerPF(protocol: AWSProtocol): PF

Attributes

Inherited from:
ExceptionDirectives
def extract[T](f: RequestContext => T): Directive1[T]

Extracts a single value using the given function.

Extracts a single value using the given function.

Attributes

Inherited from:
BasicDirectives
def extractActorSystem: Directive1[ActorSystem]

Extracts the pekko.actor.ActorSystem if the available Materializer is an pekko.stream.ActorMaterializer. Otherwise throws an exception as it won't be able to extract the system from arbitrary materializers.

Extracts the pekko.actor.ActorSystem if the available Materializer is an pekko.stream.ActorMaterializer. Otherwise throws an exception as it won't be able to extract the system from arbitrary materializers.

Attributes

Inherited from:
BasicDirectives
def extractClientIP: Directive1[RemoteAddress]

Extracts the client's IP from either the X-Forwarded-For, Remote-Address, X-Real-IP header or pekko.http.scaladsl.model.AttributeKeys.remoteAddress attribute (in that order of priority).

Extracts the client's IP from either the X-Forwarded-For, Remote-Address, X-Real-IP header or pekko.http.scaladsl.model.AttributeKeys.remoteAddress attribute (in that order of priority).

Attributes

Inherited from:
MiscDirectives
def extractCredentials: Directive1[Option[HttpCredentials]]

Extracts the potentially present HttpCredentials provided with the request's Authorization header.

Extracts the potentially present HttpCredentials provided with the request's Authorization header.

Attributes

Inherited from:
SecurityDirectives
def extractDataBytes: Directive1[Source[ByteString, Any]]

Extracts the entities dataBytes pekko.stream.scaladsl.Source from the pekko.http.scaladsl.server.RequestContext.

Extracts the entities dataBytes pekko.stream.scaladsl.Source from the pekko.http.scaladsl.server.RequestContext.

Attributes

Inherited from:
BasicDirectives
def extractExecutionContext: Directive1[ExecutionContextExecutor]

Extracts the scala.concurrent.ExecutionContextExecutor from the pekko.http.scaladsl.server.RequestContext.

Extracts the scala.concurrent.ExecutionContextExecutor from the pekko.http.scaladsl.server.RequestContext.

Attributes

Inherited from:
BasicDirectives
def extractHost: Directive1[String]

Extracts the hostname part of the Host request header value.

Extracts the hostname part of the Host request header value.

Attributes

Inherited from:
HostDirectives
def extractLog: Directive1[LoggingAdapter]

Extracts the pekko.event.LoggingAdapter from the pekko.http.scaladsl.server.RequestContext.

Extracts the pekko.event.LoggingAdapter from the pekko.http.scaladsl.server.RequestContext.

Attributes

Inherited from:
BasicDirectives
def extractMatchedPath: Directive1[Path]

Extracts the already matched path from the RequestContext.

Extracts the already matched path from the RequestContext.

Attributes

Inherited from:
BasicDirectives
def extractMaterializer: Directive1[Materializer]

Extracts the pekko.stream.Materializer from the pekko.http.scaladsl.server.RequestContext.

Extracts the pekko.stream.Materializer from the pekko.http.scaladsl.server.RequestContext.

Attributes

Inherited from:
BasicDirectives
def extractMethod: Directive1[HttpMethod]

Extracts the request method.

Extracts the request method.

Attributes

Inherited from:
MethodDirectives
def extractOfferedWsProtocols: Directive1[Seq[String]]

Extract the list of WebSocket subprotocols as offered by the client in the Sec-WebSocket-Protocol header if this is a WebSocket request. Rejects with an ExpectedWebSocketRequestRejection, otherwise.

Extract the list of WebSocket subprotocols as offered by the client in the Sec-WebSocket-Protocol header if this is a WebSocket request. Rejects with an ExpectedWebSocketRequestRejection, otherwise.

Attributes

Inherited from:
WebSocketDirectives
def extractParserSettings: Directive1[ParserSettings]

Extracts the pekko.http.scaladsl.settings.ParserSettings from the pekko.http.scaladsl.server.RequestContext.

Extracts the pekko.http.scaladsl.settings.ParserSettings from the pekko.http.scaladsl.server.RequestContext.

Attributes

Inherited from:
BasicDirectives
def extractProtocol: Directive[(AWSProtocol)]

Attributes

Inherited from:
AWSProtocolDirectives
def extractRequest: Directive1[HttpRequest]

Extracts the current HttpRequest instance.

Extracts the current HttpRequest instance.

Attributes

Inherited from:
BasicDirectives
def extractRequestContext: Directive1[RequestContext]

Extracts the pekko.http.scaladsl.server.RequestContext itself.

Extracts the pekko.http.scaladsl.server.RequestContext itself.

Attributes

Inherited from:
BasicDirectives
def extractRequestEntity: Directive1[RequestEntity]

Extracts the pekko.http.scaladsl.model.RequestEntity from the pekko.http.scaladsl.server.RequestContext.

Extracts the pekko.http.scaladsl.model.RequestEntity from the pekko.http.scaladsl.server.RequestContext.

Attributes

Inherited from:
BasicDirectives
def extractRequestTimeout: Directive1[Duration]

Return the currently set request timeout.

Return the currently set request timeout.

Note that this may be changed in inner directives.

Attributes

Inherited from:
TimeoutDirectives
def extractScheme: Directive1[String]

Extracts the Uri scheme from the request.

Extracts the Uri scheme from the request.

Attributes

Inherited from:
SchemeDirectives
def extractSettings: Directive1[RoutingSettings]

Extracts the RoutingSettings from the pekko.http.scaladsl.server.RequestContext.

Extracts the RoutingSettings from the pekko.http.scaladsl.server.RequestContext.

Attributes

Inherited from:
BasicDirectives
def extractStrictEntity(timeout: FiniteDuration, maxBytes: Long): Directive1[Strict]

WARNING: This will read the entire request entity into memory and effectively disable streaming.

WARNING: This will read the entire request entity into memory and effectively disable streaming.

To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the pekko.http.parsing.max-to-strict-bytes configuration setting.

Converts the HttpEntity from the pekko.http.scaladsl.server.RequestContext into an pekko.http.scaladsl.model.HttpEntity.Strict and extracts it, or fails the route if unable to drain the entire request body within the timeout.

Value parameters

timeout

The directive is failed if the stream isn't completed after the given timeout.

Attributes

Inherited from:
BasicDirectives
def extractStrictEntity(timeout: FiniteDuration): Directive1[Strict]

WARNING: This will read the entire request entity into memory and effectively disable streaming.

WARNING: This will read the entire request entity into memory and effectively disable streaming.

To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the pekko.http.parsing.max-to-strict-bytes configuration setting.

Converts the HttpEntity from the pekko.http.scaladsl.server.RequestContext into an pekko.http.scaladsl.model.HttpEntity.Strict and extracts it, or fails the route if unable to drain the entire request body within the timeout.

Value parameters

timeout

The directive is failed if the stream isn't completed after the given timeout.

Attributes

Inherited from:
BasicDirectives
def extractUnmatchedPath: Directive1[Path]

Extracts the yet unmatched path from the RequestContext.

Extracts the yet unmatched path from the RequestContext.

Attributes

Inherited from:
BasicDirectives
def extractUri: Directive1[Uri]

Extracts the complete request URI.

Extracts the complete request URI.

Attributes

Inherited from:
BasicDirectives
def extractWebSocketUpgrade: Directive1[WebSocketUpgrade]

Extract the WebSocketUpgrade attribute if this is a WebSocket request. Rejects with an ExpectedWebSocketRequestRejection, otherwise.

Extract the WebSocketUpgrade attribute if this is a WebSocket request. Rejects with an ExpectedWebSocketRequestRejection, otherwise.

Attributes

Inherited from:
WebSocketDirectives
def failWith(error: Throwable): StandardRoute

Bubbles the given error up the response chain, where it is dealt with by the closest handleExceptions directive and its ExceptionHandler.

Bubbles the given error up the response chain, where it is dealt with by the closest handleExceptions directive and its ExceptionHandler.

Attributes

Inherited from:
RouteDirectives
def fileUpload(fieldName: String): Directive1[(FileInfo, Source[ByteString, Any])]

Collects each body part that is a multipart file as a tuple containing metadata and a Source for streaming the file contents somewhere. If there is no such field the request will be rejected, if there are multiple file parts with the same name, the first one will be used and the subsequent ones ignored.

Collects each body part that is a multipart file as a tuple containing metadata and a Source for streaming the file contents somewhere. If there is no such field the request will be rejected, if there are multiple file parts with the same name, the first one will be used and the subsequent ones ignored.

Attributes

Inherited from:
FileUploadDirectives
@ApiMayChange
def fileUploadAll(fieldName: String): Directive1[Seq[(FileInfo, Source[ByteString, Any])]]

Collects each body part that is a multipart file as a tuple containing metadata and a Source for streaming the file contents somewhere. If there is no such field the request will be rejected. Files are buffered into temporary files on disk so in-memory buffers don't overflow. The temporary files are cleaned up once materialized, or on exit if the stream is not consumed.

Collects each body part that is a multipart file as a tuple containing metadata and a Source for streaming the file contents somewhere. If there is no such field the request will be rejected. Files are buffered into temporary files on disk so in-memory buffers don't overflow. The temporary files are cleaned up once materialized, or on exit if the stream is not consumed.

Attributes

Inherited from:
FileUploadDirectives
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec, pdef21: FieldSpec, pdef22: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec, pdef21: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec): Directive[(Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec): Directive[(Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec): Directive[(Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec, pdef2: FieldSpec): Directive[(Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formField(pdef1: FieldSpec): Directive[(Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFieldMap: Directive1[Map[String, String]]

Extracts HTTP form fields from the request as a Map[String, String].

Extracts HTTP form fields from the request as a Map[String, String].

Attributes

Inherited from:
FormFieldDirectives
def formFieldMultiMap: Directive1[Map[String, List[String]]]

Extracts HTTP form fields from the request as a Map[String, List[String]].

Extracts HTTP form fields from the request as a Map[String, List[String]].

Attributes

Inherited from:
FormFieldDirectives
def formFieldSeq: Directive1[Seq[(String, String)]]

Extracts HTTP form fields from the request as a Seq[(String, String)].

Extracts HTTP form fields from the request as a Seq[(String, String)].

Attributes

Inherited from:
FormFieldDirectives
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec, pdef21: FieldSpec, pdef22: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec, pdef21: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec): Directive[(Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec): Directive[(Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec): Directive[(Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec, pdef2: FieldSpec): Directive[(Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def formFields(pdef1: FieldSpec): Directive[(Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
FormFieldDirectivesInstances
def get: Directive0

Rejects all non-GET requests.

Rejects all non-GET requests.

Attributes

Inherited from:
MethodDirectives
def getFromBrowseableDirectories(directories: String*)(implicit renderer: DirectoryRenderer, resolver: ContentTypeResolver): Route

Serves the content of the given directories as a file system browser, i.e. files are sent and directories served as browseable listings.

Serves the content of the given directories as a file system browser, i.e. files are sent and directories served as browseable listings.

Attributes

Inherited from:
FileAndResourceDirectives
def getFromBrowseableDirectory(directory: String)(implicit renderer: DirectoryRenderer, resolver: ContentTypeResolver): Route

Same as getFromBrowseableDirectories with only one directory.

Same as getFromBrowseableDirectories with only one directory.

Attributes

Inherited from:
FileAndResourceDirectives
def getFromDirectory(directoryName: String)(implicit resolver: ContentTypeResolver): Route

Completes GET requests with the content of a file underneath the given directory. If the file cannot be read the Route rejects the request.

Completes GET requests with the content of a file underneath the given directory. If the file cannot be read the Route rejects the request.

Attributes

Inherited from:
FileAndResourceDirectives
def getFromFile(file: File, contentType: ContentType): Route

Completes GET requests with the content of the given file. If the file cannot be found or read the request is rejected.

Completes GET requests with the content of the given file. If the file cannot be found or read the request is rejected.

Attributes

Inherited from:
FileAndResourceDirectives
def getFromFile(file: File)(implicit resolver: ContentTypeResolver): Route

Completes GET requests with the content of the given file. If the file cannot be found or read the request is rejected.

Completes GET requests with the content of the given file. If the file cannot be found or read the request is rejected.

Attributes

Inherited from:
FileAndResourceDirectives
def getFromFile(fileName: String)(implicit resolver: ContentTypeResolver): Route

Completes GET requests with the content of the given file. If the file cannot be found or read the request is rejected.

Completes GET requests with the content of the given file. If the file cannot be found or read the request is rejected.

Attributes

Inherited from:
FileAndResourceDirectives
def getFromResource(resourceName: String, contentType: ContentType, classLoader: ClassLoader): Route

Completes GET requests with the content of the given resource. If the resource is a directory or cannot be found or read the Route rejects the request.

Completes GET requests with the content of the given resource. If the resource is a directory or cannot be found or read the Route rejects the request.

Attributes

Inherited from:
FileAndResourceDirectives
def getFromResource(resourceName: String)(implicit resolver: ContentTypeResolver): Route

Completes GET requests with the content of the given class-path resource. If the resource cannot be found or read the Route rejects the request.

Completes GET requests with the content of the given class-path resource. If the resource cannot be found or read the Route rejects the request.

Attributes

Inherited from:
FileAndResourceDirectives
def getFromResourceDirectory(directoryName: String, classLoader: ClassLoader)(implicit resolver: ContentTypeResolver): Route

Same as "getFromDirectory" except that the file is not fetched from the file system but rather from a "resource directory". If the requested resource is itself a directory or cannot be found or read the Route rejects the request.

Same as "getFromDirectory" except that the file is not fetched from the file system but rather from a "resource directory". If the requested resource is itself a directory or cannot be found or read the Route rejects the request.

Attributes

Inherited from:
FileAndResourceDirectives
def handle(handler: PartialFunction[HttpRequest, Future[HttpResponse]], rejections: Seq[Rejection]): StandardRoute

Handle the request using an asynchronous partial function.

Handle the request using an asynchronous partial function.

This directive can be used to include external components request processing components defined as PartialFunction (like those provided by pekko-grpc) into a routing tree defined as routes.

Value parameters

rejections

The list of rejections to reject with if the handler is not defined for a request.

Attributes

Inherited from:
RouteDirectives
def handle(handler: PartialFunction[HttpRequest, Future[HttpResponse]]): StandardRoute

Handle the request using an asynchronous partial function.

Handle the request using an asynchronous partial function.

This directive can be used to include external components request processing components defined as PartialFunction (like those provided by pekko-grpc) into a routing tree defined as routes.

When the partial function is not defined for a request, the request is rejected with an empty list of rejections which is equivalent to a "Not Found" rejection.

Attributes

Inherited from:
RouteDirectives
def handle(handler: HttpRequest => Future[HttpResponse]): StandardRoute

Handle the request using a function.

Handle the request using a function.

Attributes

Inherited from:
RouteDirectives
def handleExceptions(handler: ExceptionHandler): Directive0

Transforms exceptions thrown during evaluation of its inner route using the given pekko.http.scaladsl.server.ExceptionHandler.

Transforms exceptions thrown during evaluation of its inner route using the given pekko.http.scaladsl.server.ExceptionHandler.

Attributes

Inherited from:
ExecutionDirectives
def handleRejections(handler: RejectionHandler): Directive0

Transforms rejections produced by its inner route using the given pekko.http.scaladsl.server.RejectionHandler.

Transforms rejections produced by its inner route using the given pekko.http.scaladsl.server.RejectionHandler.

Attributes

Inherited from:
ExecutionDirectives
def handleRejectionsWithSQSError(protocol: AWSProtocol): Directive0

Attributes

Inherited from:
RejectionDirectives
def handleServerExceptions(protocol: AWSProtocol): Directive0

Attributes

Inherited from:
ExceptionDirectives
def handleSync(handler: PartialFunction[HttpRequest, HttpResponse], rejections: Seq[Rejection]): StandardRoute

Handle the request using a synchronous partial function.

Handle the request using a synchronous partial function.

This directive can be used to include external components request processing components defined as PartialFunction (like those provided by pekko-grpc) into a routing tree defined as routes.

Value parameters

rejections

The list of rejections to reject with if the handler is not defined for a request.

Attributes

Inherited from:
RouteDirectives
def handleSync(handler: PartialFunction[HttpRequest, HttpResponse]): StandardRoute

Handle the request using a synchronous partial function.

Handle the request using a synchronous partial function.

This directive can be used to include external components request processing components defined as PartialFunction (like those provided by pekko-grpc) into a routing tree defined as routes.

When the partial function is not defined for a request, the request is rejected with an empty list of rejections which is equivalent to a "Not Found" rejection.

Attributes

Inherited from:
RouteDirectives
def handleSync(handler: HttpRequest => HttpResponse): StandardRoute

Handle the request using a function.

Handle the request using a function.

Attributes

Inherited from:
RouteDirectives
def handleWebSocketMessages(handler: Flow[Message, Message, Any]): Route

Handles WebSocket requests with the given handler and rejects other requests with an ExpectedWebSocketRequestRejection.

Handles WebSocket requests with the given handler and rejects other requests with an ExpectedWebSocketRequestRejection.

Attributes

Inherited from:
WebSocketDirectives
def handleWebSocketMessagesForOptionalProtocol(handler: Flow[Message, Message, Any], subprotocol: Option[String]): Route

Handles WebSocket requests with the given handler and rejects other requests with an ExpectedWebSocketRequestRejection.

Handles WebSocket requests with the given handler and rejects other requests with an ExpectedWebSocketRequestRejection.

If the subprotocol parameter is None any WebSocket request is accepted. If the subprotocol parameter is Some(protocol) a WebSocket request is only accepted if the list of subprotocols supported by the client (as announced in the WebSocket request) contains protocol. If the client did not offer the protocol in question the request is rejected with an UnsupportedWebSocketSubprotocolRejection rejection.

To support several subprotocols you may chain several handleWebSocketMessagesForOptionalProtocol routes.

Attributes

Inherited from:
WebSocketDirectives
def handleWebSocketMessagesForProtocol(handler: Flow[Message, Message, Any], subprotocol: String): Route

Handles WebSocket requests with the given handler if the given subprotocol is offered in the request and rejects other requests with an ExpectedWebSocketRequestRejection or an UnsupportedWebSocketSubprotocolRejection.

Handles WebSocket requests with the given handler if the given subprotocol is offered in the request and rejects other requests with an ExpectedWebSocketRequestRejection or an UnsupportedWebSocketSubprotocolRejection.

Attributes

Inherited from:
WebSocketDirectives
def handleWith[A, B](f: A => B)(implicit um: FromRequestUnmarshaller[A], m: ToResponseMarshaller[B]): Route

Completes the request using the given function. The input to the function is produced with the in-scope entity unmarshaller and the result value of the function is marshalled with the in-scope marshaller.

Completes the request using the given function. The input to the function is produced with the in-scope entity unmarshaller and the result value of the function is marshalled with the in-scope marshaller.

Attributes

Inherited from:
MarshallingDirectives
def head: Directive0

Rejects all non-HEAD requests.

Rejects all non-HEAD requests.

Attributes

Inherited from:
MethodDirectives
def headerValue[T](f: HttpHeader => Option[T]): Directive1[T]

Extracts an HTTP header value using the given function. If the function result is undefined for all headers the request is rejected with an empty rejection set. If the given function throws an exception the request is rejected with a pekko.http.scaladsl.server.MalformedHeaderRejection.

Extracts an HTTP header value using the given function. If the function result is undefined for all headers the request is rejected with an empty rejection set. If the given function throws an exception the request is rejected with a pekko.http.scaladsl.server.MalformedHeaderRejection.

Attributes

Inherited from:
HeaderDirectives
def headerValueByName(headerName: String): Directive1[String]

Extracts the value of the HTTP request header with the given name. If no header with a matching name is found the request is rejected with a pekko.http.scaladsl.server.MissingHeaderRejection.

Extracts the value of the HTTP request header with the given name. If no header with a matching name is found the request is rejected with a pekko.http.scaladsl.server.MissingHeaderRejection.

Attributes

Inherited from:
HeaderDirectives
def headerValueByType[T](magnet: HeaderMagnet[T]): Directive1[T]

Extracts the first HTTP request header of the given type. If no header with a matching type is found the request is rejected with a pekko.http.scaladsl.server.MissingHeaderRejection.

Extracts the first HTTP request header of the given type. If no header with a matching type is found the request is rejected with a pekko.http.scaladsl.server.MissingHeaderRejection.

Custom headers will only be matched by this directive if they extend ModeledCustomHeader and provide a companion extending ModeledCustomHeaderCompanion.

Attributes

Inherited from:
HeaderDirectives
def headerValuePF[T](pf: PartialFunction[HttpHeader, T]): Directive1[T]

Extracts an HTTP header value using the given partial function. If the function is undefined for all headers the request is rejected with an empty rejection set.

Extracts an HTTP header value using the given partial function. If the function is undefined for all headers the request is rejected with an empty rejection set.

Attributes

Inherited from:
HeaderDirectives
def host(regex: Regex): Directive1[String]

Rejects all requests with a host name that doesn't have a prefix matching the given regular expression. For all matching requests the prefix string matching the regex is extracted and passed to the inner route. If the regex contains a capturing group only the string matched by this group is extracted. If the regex contains more than one capturing group an IllegalArgumentException is thrown.

Rejects all requests with a host name that doesn't have a prefix matching the given regular expression. For all matching requests the prefix string matching the regex is extracted and passed to the inner route. If the regex contains a capturing group only the string matched by this group is extracted. If the regex contains more than one capturing group an IllegalArgumentException is thrown.

Attributes

Inherited from:
HostDirectives
def host(predicate: String => Boolean): Directive0

Rejects all requests for whose host name the given predicate function returns false.

Rejects all requests for whose host name the given predicate function returns false.

Attributes

Inherited from:
HostDirectives
def host(hostNames: String*): Directive0

Rejects all requests with a host name different from the given ones.

Rejects all requests with a host name different from the given ones.

Attributes

Inherited from:
HostDirectives
def ignoreTrailingSlash: Directive0

Tries to match the inner route and if it fails with an empty rejection, it tries it again adding (or removing) the trailing slash on the given path.

Tries to match the inner route and if it fails with an empty rejection, it tries it again adding (or removing) the trailing slash on the given path.

Attributes

Inherited from:
PathDirectives
def instanceOf[T](implicit m: ToResponseMarshaller[T]): ToResponseMarshaller[T]

Returns the in-scope Marshaller for the given type.

Returns the in-scope Marshaller for the given type.

Attributes

Inherited from:
MarshallingDirectives
def listDirectoryContents(directories: String*)(implicit renderer: DirectoryRenderer): Route

Completes GET requests with a unified listing of the contents of all given directories. The actual rendering of the directory contents is performed by the in-scope Marshaller[DirectoryListing].

Completes GET requests with a unified listing of the contents of all given directories. The actual rendering of the directory contents is performed by the in-scope Marshaller[DirectoryListing].

Attributes

Inherited from:
FileAndResourceDirectives
def logRequest(magnet: LoggingMagnet[HttpRequest => Unit]): Directive0

Produces a log entry for every incoming request.

Produces a log entry for every incoming request.

Attributes

Inherited from:
DebuggingDirectives
def logRequestResult(magnet: LoggingMagnet[HttpRequest => RouteResult => Unit]): Directive0

Produces a log entry for every incoming request and RouteResult.

Produces a log entry for every incoming request and RouteResult.

Attributes

Inherited from:
DebuggingDirectives
def logResult(magnet: LoggingMagnet[RouteResult => Unit]): Directive0

Produces a log entry for every RouteResult.

Produces a log entry for every RouteResult.

Attributes

Inherited from:
DebuggingDirectives
def mapInnerRoute(f: Route => Route): Directive0

Attributes

Inherited from:
BasicDirectives
def mapRejections(f: Seq[Rejection] => Seq[Rejection]): Directive0

Attributes

Inherited from:
BasicDirectives
def mapRequest(f: HttpRequest => HttpRequest): Directive0

Attributes

Inherited from:
BasicDirectives
def mapRequestContext(f: RequestContext => RequestContext): Directive0

Attributes

Inherited from:
BasicDirectives
def mapResponse(f: HttpResponse => HttpResponse): Directive0

Attributes

Inherited from:
BasicDirectives
def mapResponseEntity(f: ResponseEntity => ResponseEntity): Directive0

Attributes

Inherited from:
BasicDirectives
def mapResponseHeaders(f: Seq[HttpHeader] => Seq[HttpHeader]): Directive0

Attributes

Inherited from:
BasicDirectives
def mapRouteResult(f: RouteResult => RouteResult): Directive0

Attributes

Inherited from:
BasicDirectives
def mapRouteResultFuture(f: Future[RouteResult] => Future[RouteResult]): Directive0

Attributes

Inherited from:
BasicDirectives
def mapRouteResultPF(f: PartialFunction[RouteResult, RouteResult]): Directive0

Attributes

Inherited from:
BasicDirectives
def mapRouteResultWith(f: RouteResult => Future[RouteResult]): Directive0

Attributes

Inherited from:
BasicDirectives
def mapRouteResultWithPF(f: PartialFunction[RouteResult, Future[RouteResult]]): Directive0

Attributes

Inherited from:
BasicDirectives
def mapSettings(f: RoutingSettings => RoutingSettings): Directive0

Runs the inner route with settings mapped by the given function.

Runs the inner route with settings mapped by the given function.

Attributes

Inherited from:
BasicDirectives
def mapUnmatchedPath(f: Path => Path): Directive0

Transforms the unmatchedPath of the RequestContext using the given function.

Transforms the unmatchedPath of the RequestContext using the given function.

Attributes

Inherited from:
BasicDirectives
def method(httpMethod: HttpMethod): Directive0

Rejects all requests whose HTTP method does not match the given one.

Rejects all requests whose HTTP method does not match the given one.

Attributes

Inherited from:
MethodDirectives
def not(self: PathMatcher[_]): PathMatcher0

Attributes

Inherited from:
PathMatchers
def nothingMatcher[L : Tuple]: PathMatcher[L]

A PathMatcher that never matches anything.

A PathMatcher that never matches anything.

Attributes

Inherited from:
PathMatchers
def onComplete[T](future: => Future[T]): Directive1[Try[T]]

"Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type Try[T].

"Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type Try[T].

Attributes

Inherited from:
FutureDirectives
def onCompleteWithBreaker[T](breaker: CircuitBreaker)(future: => Future[T]): Directive1[Try[T]]

"Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type T if the supplied CircuitBreaker is closed.

"Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type T if the supplied CircuitBreaker is closed.

If the supplied CircuitBreaker is open the request is rejected with a CircuitBreakerOpenRejection.

Attributes

Inherited from:
FutureDirectives
def onSuccess(magnet: OnSuccessMagnet): Directive[Out]

"Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type T. If the future fails its failure Throwable is bubbled up to the nearest ExceptionHandler. If type T is already a Tuple it is directly expanded into the respective number of extractions.

"Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type T. If the future fails its failure Throwable is bubbled up to the nearest ExceptionHandler. If type T is already a Tuple it is directly expanded into the respective number of extractions.

Attributes

Inherited from:
FutureDirectives
def optionalAttribute[T](key: AttributeKey[T]): Directive1[Option[T]]

Extracts an optional request attribute for the given key.

Extracts an optional request attribute for the given key.

Attributes

Inherited from:
AttributeDirectives
def optionalCookie(name: String): Directive1[Option[HttpCookiePair]]

Extracts the HttpCookiePair with the given name as an Option[HttpCookiePair]. If the cookie is not present a value of None is extracted.

Extracts the HttpCookiePair with the given name as an Option[HttpCookiePair]. If the cookie is not present a value of None is extracted.

Attributes

Inherited from:
CookieDirectives
def optionalHeaderValue[T](f: HttpHeader => Option[T]): Directive1[Option[T]]

Extracts an optional HTTP header value using the given function. If the given function throws an exception the request is rejected with a pekko.http.scaladsl.server.MalformedHeaderRejection.

Extracts an optional HTTP header value using the given function. If the given function throws an exception the request is rejected with a pekko.http.scaladsl.server.MalformedHeaderRejection.

Attributes

Inherited from:
HeaderDirectives
def optionalHeaderValueByName(headerName: String): Directive1[Option[String]]

Extracts the value of the optional HTTP request header with the given name.

Extracts the value of the optional HTTP request header with the given name.

Attributes

Inherited from:
HeaderDirectives
def optionalHeaderValueByType[T <: HttpHeader](magnet: HeaderMagnet[T]): Directive1[Option[T]]

Extract the header value of the optional HTTP request header with the given type.

Extract the header value of the optional HTTP request header with the given type.

Custom headers will only be matched by this directive if they extend ModeledCustomHeader and provide a companion extending ModeledCustomHeaderCompanion.

Attributes

Inherited from:
HeaderDirectives
def optionalHeaderValuePF[T](pf: PartialFunction[HttpHeader, T]): Directive1[Option[T]]

Extracts an optional HTTP header value using the given partial function. If the given function throws an exception the request is rejected with a pekko.http.scaladsl.server.MalformedHeaderRejection.

Extracts an optional HTTP header value using the given partial function. If the given function throws an exception the request is rejected with a pekko.http.scaladsl.server.MalformedHeaderRejection.

Attributes

Inherited from:
HeaderDirectives
def options: Directive0

Rejects all non-OPTIONS requests.

Rejects all non-OPTIONS requests.

Attributes

Inherited from:
MethodDirectives
def overrideMethodWithParameter(paramName: String): Directive0

Changes the HTTP method of the request to the value of the specified query string parameter. If the query string parameter is not specified this directive has no effect. If the query string is specified as something that is not a HTTP method, then this directive completes the request with a 501 Not Implemented response.

Changes the HTTP method of the request to the value of the specified query string parameter. If the query string parameter is not specified this directive has no effect. If the query string is specified as something that is not a HTTP method, then this directive completes the request with a 501 Not Implemented response.

This directive is useful for:

  • Use in combination with JSONP (JSONP only supports GET)
  • Supporting older browsers that lack support for certain HTTP methods. E.g. IE8 does not support PATCH

Attributes

Inherited from:
MethodDirectives
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec, pdef21: ParamSpec, pdef22: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec, pdef21: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec): Directive[(Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec): Directive[(Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec): Directive[(Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec, pdef2: ParamSpec): Directive[(Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameter(pdef1: ParamSpec): Directive[(Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameterMap: Directive1[Map[String, String]]

Extracts the request's query parameters as a Map[String, String].

Extracts the request's query parameters as a Map[String, String].

Attributes

Inherited from:
ParameterDirectives
def parameterMultiMap: Directive1[Map[String, List[String]]]

Extracts the request's query parameters as a Map[String, List[String]].

Extracts the request's query parameters as a Map[String, List[String]].

Attributes

Inherited from:
ParameterDirectives
def parameterSeq: Directive1[Seq[(String, String)]]

Extracts the request's query parameters as a Seq[(String, String)].

Extracts the request's query parameters as a Seq[(String, String)].

Attributes

Inherited from:
ParameterDirectives
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec, pdef21: ParamSpec, pdef22: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec, pdef21: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec): Directive[(Out, Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec): Directive[(Out, Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec): Directive[(Out, Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec, pdef2: ParamSpec): Directive[(Out, Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def parameters(pdef1: ParamSpec): Directive[(Out)]

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

Attributes

Inherited from:
ParameterDirectivesInstances
def pass: Directive0

A Directive0 that always passes the request on to its inner route (i.e. does nothing with the request or the response).

A Directive0 that always passes the request on to its inner route (i.e. does nothing with the request or the response).

Attributes

Inherited from:
BasicDirectives
def patch: Directive0

Rejects all non-PATCH requests.

Rejects all non-PATCH requests.

Attributes

Inherited from:
MethodDirectives
def path[L](pm: PathMatcher[L]): Directive[L]

Applies the given PathMatcher to the remaining unmatched path after consuming a leading slash. The matcher has to match the remaining path completely. If matched the value extracted by the PathMatcher is extracted on the directive level.

Applies the given PathMatcher to the remaining unmatched path after consuming a leading slash. The matcher has to match the remaining path completely. If matched the value extracted by the PathMatcher is extracted on the directive level.

Attributes

Inherited from:
PathDirectives
def pathEnd: Directive0

Rejects the request if the unmatchedPath of the RequestContext is non-empty, or said differently: only passes on the request to its inner route if the request path has been matched completely.

Rejects the request if the unmatchedPath of the RequestContext is non-empty, or said differently: only passes on the request to its inner route if the request path has been matched completely.

Attributes

Inherited from:
PathDirectives
def pathEndOrSingleSlash: Directive0

Only passes on the request to its inner route if the request path has been matched completely or only consists of exactly one remaining slash.

Only passes on the request to its inner route if the request path has been matched completely or only consists of exactly one remaining slash.

Note that trailing slash and non-trailing slash URLs are '''not''' the same, although they often serve the same content. It is recommended to serve only one URL version and make the other redirect to it using redirectToTrailingSlashIfMissing or redirectToNoTrailingSlashIfPresent directive.

For example:

def route = {
 // redirect '/users/' to '/users', '/users/:userId/' to '/users/:userId'
 redirectToNoTrailingSlashIfPresent(Found) {
   pathPrefix("users") {
     concat(
       pathEnd {
         // user list ...
       },
       path(UUID) { userId =>
         // user profile ...
       }
     )
   }
 }
}

For further information, refer to:

Attributes

See also
Inherited from:
PathDirectives
def pathPrefix[L](pm: PathMatcher[L]): Directive[L]

Applies the given PathMatcher to a prefix of the remaining unmatched path after consuming a leading slash. The matcher has to match a prefix of the remaining path. If matched the value extracted by the PathMatcher is extracted on the directive level.

Applies the given PathMatcher to a prefix of the remaining unmatched path after consuming a leading slash. The matcher has to match a prefix of the remaining path. If matched the value extracted by the PathMatcher is extracted on the directive level.

Attributes

Inherited from:
PathDirectives
def pathPrefixTest[L](pm: PathMatcher[L]): Directive[L]

Checks whether the unmatchedPath of the RequestContext has a prefix matched by the given PathMatcher. In analogy to the pathPrefix directive a leading slash is implied.

Checks whether the unmatchedPath of the RequestContext has a prefix matched by the given PathMatcher. In analogy to the pathPrefix directive a leading slash is implied.

Attributes

Inherited from:
PathDirectives
def pathSingleSlash: Directive0

Only passes on the request to its inner route if the request path consists of exactly one remaining slash.

Only passes on the request to its inner route if the request path consists of exactly one remaining slash.

Attributes

Inherited from:
PathDirectives
def pathSuffix[L](pm: PathMatcher[L]): Directive[L]

Applies the given PathMatcher to a suffix of the remaining unmatchedPath of the RequestContext. If matched the value extracted by the PathMatcher is extracted and the matched parts of the path are consumed. Note that, for efficiency reasons, the given PathMatcher must match the desired suffix in reversed-segment order, i.e. pathSuffix("baz" / "bar") would match /foo/bar/baz!

Applies the given PathMatcher to a suffix of the remaining unmatchedPath of the RequestContext. If matched the value extracted by the PathMatcher is extracted and the matched parts of the path are consumed. Note that, for efficiency reasons, the given PathMatcher must match the desired suffix in reversed-segment order, i.e. pathSuffix("baz" / "bar") would match /foo/bar/baz!

Attributes

Inherited from:
PathDirectives
def pathSuffixTest[L](pm: PathMatcher[L]): Directive[L]

Checks whether the unmatchedPath of the RequestContext has a suffix matched by the given PathMatcher. However, as opposed to the pathSuffix directive the matched path is not actually "consumed". Note that, for efficiency reasons, the given PathMatcher must match the desired suffix in reversed-segment order, i.e. pathSuffixTest("baz" / "bar") would match /foo/bar/baz!

Checks whether the unmatchedPath of the RequestContext has a suffix matched by the given PathMatcher. However, as opposed to the pathSuffix directive the matched path is not actually "consumed". Note that, for efficiency reasons, the given PathMatcher must match the desired suffix in reversed-segment order, i.e. pathSuffixTest("baz" / "bar") would match /foo/bar/baz!

Attributes

Inherited from:
PathDirectives
def post: Directive0

Rejects all non-POST requests.

Rejects all non-POST requests.

Attributes

Inherited from:
MethodDirectives
def provide[T](value: T): Directive1[T]

Injects the given value into a directive.

Injects the given value into a directive.

Attributes

Inherited from:
BasicDirectives
def put: Directive0

Rejects all non-PUT requests.

Rejects all non-PUT requests.

Attributes

Inherited from:
MethodDirectives
def queueActorAndDataFromQueueName(queueName: String)(body: (ActorRef, QueueData) => Route): Route

Attributes

Inherited from:
QueueDirectives
def queueActorAndDataFromQueueUrl(queueUrl: String)(body: (ActorRef, QueueData) => Route): Route

Attributes

Inherited from:
QueueDirectives
def queueActorAndNameFromUrl(queueUrl: String)(body: (ActorRef, String) => Route): Route

Attributes

Inherited from:
QueueDirectives
def queueActorFromUrl(queueUrl: String)(body: ActorRef => Route): Route

Attributes

Inherited from:
QueueDirectives
def queueManagerActor: ActorRef

Attributes

Inherited from:
QueueManagerActorModule
def rawPathPrefix[L](pm: PathMatcher[L]): Directive[L]

Applies the given matcher directly to a prefix of the unmatched path of the RequestContext (i.e. without implicitly consuming a leading slash). The matcher has to match a prefix of the remaining path. If matched the value extracted by the PathMatcher is extracted on the directive level.

Applies the given matcher directly to a prefix of the unmatched path of the RequestContext (i.e. without implicitly consuming a leading slash). The matcher has to match a prefix of the remaining path. If matched the value extracted by the PathMatcher is extracted on the directive level.

Attributes

Inherited from:
PathDirectives
def rawPathPrefixTest[L](pm: PathMatcher[L]): Directive[L]

Checks whether the unmatchedPath of the RequestContext has a prefix matched by the given PathMatcher. However, as opposed to the pathPrefix directive the matched path is not actually "consumed".

Checks whether the unmatchedPath of the RequestContext has a prefix matched by the given PathMatcher. However, as opposed to the pathPrefix directive the matched path is not actually "consumed".

Attributes

Inherited from:
PathDirectives
def recoverRejections(f: Seq[Rejection] => RouteResult): Directive0

Attributes

Inherited from:
BasicDirectives
def recoverRejectionsWith(f: Seq[Rejection] => Future[RouteResult]): Directive0

Attributes

Inherited from:
BasicDirectives
def redirect(uri: Uri, redirectionType: Redirection): StandardRoute

Completes the request with redirection response of the given type to the given URI.

Completes the request with redirection response of the given type to the given URI.

Attributes

Inherited from:
RouteDirectives
def redirectToNoTrailingSlashIfPresent(redirectionType: Redirection): Directive0

If the request path ends with a slash, redirect to the same uri without trailing slash in the path.

If the request path ends with a slash, redirect to the same uri without trailing slash in the path.

Note, however, that this directive doesn't apply to a URI consisting of just a single slash. HTTP does not support empty target paths, so that browsers will convert a URI such as http://example.org to http://example.org/ adding the trailing slash.

Redirecting the single slash path URI would lead to a redirection loop.

'''Caveat''': pathSingleSlash directive will only match on the root path level inside of this directive.

Attributes

Inherited from:
PathDirectives
def redirectToTrailingSlashIfMissing(redirectionType: Redirection): Directive0

If the request path doesn't end with a slash, redirect to the same uri with trailing slash in the path.

If the request path doesn't end with a slash, redirect to the same uri with trailing slash in the path.

'''Caveat''': path without trailing slash and pathEnd directives will not match inside of this directive.

Attributes

Inherited from:
PathDirectives
def reject(rejections: Rejection*): StandardRoute

Rejects the request with the given rejections.

Rejects the request with the given rejections.

Attributes

Inherited from:
RouteDirectives
def reject: StandardRoute

Rejects the request with an empty set of rejections.

Rejects the request with an empty set of rejections.

Attributes

Inherited from:
RouteDirectives
def rejectEmptyResponse: Directive0

Converts responses with an empty entity into (empty) rejections. This way you can, for example, have the marshalling of a ''None'' option be treated as if the request could not be matched.

Converts responses with an empty entity into (empty) rejections. This way you can, for example, have the marshalling of a ''None'' option be treated as if the request could not be matched.

Attributes

Inherited from:
MiscDirectives
def rejectionHandler(protocol: AWSProtocol): RejectionHandler

Attributes

Inherited from:
RejectionDirectives
def requestEncodedWith(encoding: HttpEncoding): Directive0

Rejects the request with an UnsupportedRequestEncodingRejection if its encoding doesn't match the given one.

Rejects the request with an UnsupportedRequestEncodingRejection if its encoding doesn't match the given one.

Attributes

Inherited from:
CodingDirectives
def requestEntityEmpty: Directive0

Rejects if the request entity is non-empty.

Rejects if the request entity is non-empty.

Attributes

Inherited from:
MiscDirectives
def requestEntityPresent: Directive0

Rejects with a RequestEntityExpectedRejection if the request entity is empty. Non-empty requests are passed on unchanged to the inner route.

Rejects with a RequestEntityExpectedRejection if the request entity is empty. Non-empty requests are passed on unchanged to the inner route.

Attributes

Inherited from:
MiscDirectives
def respondWith(statusCode: Int)(elem: Elem): Route

Attributes

Inherited from:
RespondDirectives
def respondWith(elem: Elem): Route

Attributes

Inherited from:
RespondDirectives
def respondWithDefaultHeader(responseHeader: HttpHeader): Directive0

Adds the given response header to all HTTP responses of its inner Route, if the response from the inner Route doesn't already contain a header with the same name.

Adds the given response header to all HTTP responses of its inner Route, if the response from the inner Route doesn't already contain a header with the same name.

Attributes

Inherited from:
RespondWithDirectives
def respondWithDefaultHeaders(responseHeaders: Seq[HttpHeader]): Directive0

Adds the given response headers to all HTTP responses of its inner Route, if a header already exists it is not added again.

Adds the given response headers to all HTTP responses of its inner Route, if a header already exists it is not added again.

Attributes

Inherited from:
RespondWithDirectives
def respondWithDefaultHeaders(firstHeader: HttpHeader, otherHeaders: HttpHeader*): Directive0

Adds the given response headers to all HTTP responses of its inner Route, if a header already exists it is not added again.

Adds the given response headers to all HTTP responses of its inner Route, if a header already exists it is not added again.

Attributes

Inherited from:
RespondWithDirectives
def respondWithHeader(responseHeader: HttpHeader): Directive0

Unconditionally adds the given response header to all HTTP responses of its inner Route.

Unconditionally adds the given response header to all HTTP responses of its inner Route.

Attributes

Inherited from:
RespondWithDirectives
def respondWithHeaders(responseHeaders: Seq[HttpHeader]): Directive0

Unconditionally adds the given response headers to all HTTP responses of its inner Route.

Unconditionally adds the given response headers to all HTTP responses of its inner Route.

Attributes

Inherited from:
RespondWithDirectives
def respondWithHeaders(firstHeader: HttpHeader, otherHeaders: HttpHeader*): Directive0

Unconditionally adds the given response headers to all HTTP responses of its inner Route.

Unconditionally adds the given response headers to all HTTP responses of its inner Route.

Attributes

Inherited from:
RespondWithDirectives
def responseEncodingAccepted(encoding: HttpEncoding): Directive0

Rejects the request with an UnacceptedResponseEncodingRejection if the given response encoding is not accepted by the client.

Rejects the request with an UnacceptedResponseEncodingRejection if the given response encoding is not accepted by the client.

Attributes

Inherited from:
CodingDirectives
def scheme(name: String): Directive0

Rejects all requests whose Uri scheme does not match the given one.

Rejects all requests whose Uri scheme does not match the given one.

Attributes

Inherited from:
SchemeDirectives
def selectPreferredLanguage(first: Language, more: Language*): Directive1[Language]

Inspects the request's Accept-Language header and determines, which of the given language alternatives is preferred by the client. (See http://tools.ietf.org/html/rfc7231#section-5.3.5 for more details on the negotiation logic.) If there are several best language alternatives that the client has equal preference for (even if this preference is zero!) the order of the arguments is used as a tie breaker (First one wins).

Inspects the request's Accept-Language header and determines, which of the given language alternatives is preferred by the client. (See http://tools.ietf.org/html/rfc7231#section-5.3.5 for more details on the negotiation logic.) If there are several best language alternatives that the client has equal preference for (even if this preference is zero!) the order of the arguments is used as a tie breaker (First one wins).

Attributes

Inherited from:
MiscDirectives
def separateOnSlashes(string: String): PathMatcher0

Converts a path string containing slashes into a PathMatcher that interprets slashes as path segment separators.

Converts a path string containing slashes into a PathMatcher that interprets slashes as path segment separators.

Attributes

Inherited from:
PathMatchers
def setCookie(first: HttpCookie, more: HttpCookie*): Directive0

Adds a Set-Cookie response header with the given cookies.

Adds a Set-Cookie response header with the given cookies.

Attributes

Inherited from:
CookieDirectives
@ApiMayChange
def storeUploadedFile(fieldName: String, destFn: FileInfo => File): Directive[(FileInfo, File)]

Streams the bytes of the file submitted using multipart with the given file name into a designated file on disk. If there is an error writing to disk the request will be failed with the thrown exception, if there is no such field the request will be rejected, if there are multiple file parts with the same name, the first one will be used and the subsequent ones ignored.

Streams the bytes of the file submitted using multipart with the given file name into a designated file on disk. If there is an error writing to disk the request will be failed with the thrown exception, if there is no such field the request will be rejected, if there are multiple file parts with the same name, the first one will be used and the subsequent ones ignored.

Attributes

Inherited from:
FileUploadDirectives
@ApiMayChange
def storeUploadedFiles(fieldName: String, destFn: FileInfo => File): Directive1[Seq[(FileInfo, File)]]

Streams the bytes of the file submitted using multipart with the given field name into designated files on disk. If there is an error writing to disk the request will be failed with the thrown exception, if there is no such field the request will be rejected. Stored files are cleaned up on exit but not on failure.

Streams the bytes of the file submitted using multipart with the given field name into designated files on disk. If there is an error writing to disk the request will be failed with the thrown exception, if there is no such field the request will be rejected. Stored files are cleaned up on exit but not on failure.

Attributes

Inherited from:
FileUploadDirectives
def textract[L : Tuple](f: RequestContext => L): Directive[L]

Extracts a number of values using the given function.

Extracts a number of values using the given function.

Attributes

Inherited from:
BasicDirectives
def toStrictEntity(timeout: FiniteDuration, maxBytes: Long): Directive0

WARNING: This will read the entire request entity into memory and effectively disable streaming.

WARNING: This will read the entire request entity into memory and effectively disable streaming.

To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the pekko.http.parsing.max-to-strict-bytes configuration setting.

Extracts the pekko.http.scaladsl.server.RequestContext itself with the strict HTTP entity, or fails the route if unable to drain the entire request body within the timeout.

Value parameters

timeout

The directive is failed if the stream isn't completed after the given timeout.

Attributes

Inherited from:
BasicDirectives
def toStrictEntity(timeout: FiniteDuration): Directive0

WARNING: This will read the entire request entity into memory and effectively disable streaming.

WARNING: This will read the entire request entity into memory and effectively disable streaming.

To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the pekko.http.parsing.max-to-strict-bytes configuration setting.

Extracts the pekko.http.scaladsl.server.RequestContext itself with the strict HTTP entity, or fails the route if unable to drain the entire request body within the timeout.

Value parameters

timeout

The directive is failed if the stream isn't completed after the given timeout.

Attributes

Inherited from:
BasicDirectives
def tprovide[L : Tuple](values: L): Directive[L]

Injects the given values into a directive.

Injects the given values into a directive.

Attributes

Inherited from:
BasicDirectives
def validate(check: => Boolean, errorMsg: String): Directive0

Checks the given condition before running its inner route. If the condition fails the route is rejected with a ValidationRejection.

Checks the given condition before running its inner route. If the condition fails the route is rejected with a ValidationRejection.

Attributes

Inherited from:
MiscDirectives
def withExecutionContext(ec: ExecutionContextExecutor): Directive0

Runs its inner route with the given alternative scala.concurrent.ExecutionContextExecutor.

Runs its inner route with the given alternative scala.concurrent.ExecutionContextExecutor.

Attributes

Inherited from:
BasicDirectives
def withLog(log: LoggingAdapter): Directive0

Runs its inner route with the given alternative pekko.event.LoggingAdapter.

Runs its inner route with the given alternative pekko.event.LoggingAdapter.

Attributes

Inherited from:
BasicDirectives
def withMaterializer(materializer: Materializer): Directive0

Runs its inner route with the given alternative pekko.stream.Materializer.

Runs its inner route with the given alternative pekko.stream.Materializer.

Attributes

Inherited from:
BasicDirectives

Inspects the response entity and adds a Content-Encoding: gzip response header if the entity's media-type is precompressed with gzip and no Content-Encoding header is present yet.

Inspects the response entity and adds a Content-Encoding: gzip response header if the entity's media-type is precompressed with gzip and no Content-Encoding header is present yet.

Attributes

Inherited from:
CodingDirectives
def withRangeSupport: Directive0

Answers GET requests with an Accept-Ranges: bytes header and converts HttpResponses coming back from its inner route into partial responses if the initial request contained a valid Range request header. The requested byte-ranges may be coalesced. This directive is transparent to non-GET requests Rejects requests with unsatisfiable ranges UnsatisfiableRangeRejection. Rejects requests with too many expected ranges.

Answers GET requests with an Accept-Ranges: bytes header and converts HttpResponses coming back from its inner route into partial responses if the initial request contained a valid Range request header. The requested byte-ranges may be coalesced. This directive is transparent to non-GET requests Rejects requests with unsatisfiable ranges UnsatisfiableRangeRejection. Rejects requests with too many expected ranges.

Note: if you want to combine this directive with conditional(...) you need to put it on the inside of the conditional(...) directive, i.e. conditional(...) must be on a higher level in your route structure in order to function correctly.

Attributes

See also
Inherited from:
RangeDirectives
def withRequestTimeout(timeout: Duration, handler: Option[HttpRequest => HttpResponse]): Directive0

Tries to set a new request timeout and handler (if provided) at the same time.

Tries to set a new request timeout and handler (if provided) at the same time.

Due to the inherent raciness it is not guaranteed that the update will be applied before the previously set timeout has expired!

Value parameters

handler

optional custom "timeout response" function. If left None, the default timeout HttpResponse will be used.

Attributes

Inherited from:
TimeoutDirectives
def withRequestTimeout(timeout: Duration, handler: HttpRequest => HttpResponse): Directive0

Tries to set a new request timeout and handler (if provided) at the same time.

Tries to set a new request timeout and handler (if provided) at the same time.

Due to the inherent raciness it is not guaranteed that the update will be applied before the previously set timeout has expired!

Value parameters

handler

optional custom "timeout response" function. If left None, the default timeout HttpResponse will be used.

Attributes

Inherited from:
TimeoutDirectives
def withRequestTimeout(timeout: Duration): Directive0

Tries to set a new request timeout and handler (if provided) at the same time.

Tries to set a new request timeout and handler (if provided) at the same time.

Due to the inherent raciness it is not guaranteed that the update will be applied before the previously set timeout has expired!

Attributes

Inherited from:
TimeoutDirectives
def withRequestTimeoutResponse(handler: HttpRequest => HttpResponse): Directive0

Tries to set a new request timeout handler, which produces the timeout response for a given request. Note that the handler must produce the response synchronously and shouldn't block!

Tries to set a new request timeout handler, which produces the timeout response for a given request. Note that the handler must produce the response synchronously and shouldn't block!

Due to the inherent raciness it is not guaranteed that the update will be applied before the previously set timeout has expired!

Attributes

Inherited from:
TimeoutDirectives
def withSettings(settings: RoutingSettings): Directive0

Runs its inner route with the given alternative RoutingSettings.

Runs its inner route with the given alternative RoutingSettings.

Attributes

Inherited from:
BasicDirectives
def withSizeLimit(maxBytes: Long): Directive0

Fails the stream with pekko.http.scaladsl.model.EntityStreamSizeException if its request entity size exceeds given limit. Limit given as parameter overrides limit configured with pekko.http.parsing.max-content-length.

Fails the stream with pekko.http.scaladsl.model.EntityStreamSizeException if its request entity size exceeds given limit. Limit given as parameter overrides limit configured with pekko.http.parsing.max-content-length.

Beware that request entity size check is executed when entity is consumed.

Attributes

Inherited from:
MiscDirectives
def withoutRequestTimeout: Directive0

Attributes

Inherited from:
TimeoutDirectives
def withoutSizeLimit: Directive0

Disables the size limit (configured by pekko.http.parsing.max-content-length by default) checking on the incoming HttpRequest entity. Can be useful when handling arbitrarily large data uploads in specific parts of your routes.

Disables the size limit (configured by pekko.http.parsing.max-content-length by default) checking on the incoming HttpRequest entity. Can be useful when handling arbitrarily large data uploads in specific parts of your routes.

Attributes

Note

Usage of withoutSizeLimit is not recommended as it turns off the too large payload protection. Therefore, we highly encourage using withSizeLimit instead, providing it with a value high enough to successfully handle the route in need of big entities.

Inherited from:
MiscDirectives

Deprecated and Inherited methods

def extractUpgradeToWebSocket: Directive1[UpgradeToWebSocket]

Extract the UpgradeToWebSocket header if existent. Rejects with an ExpectedWebSocketRequestRejection, otherwise.

Extract the UpgradeToWebSocket header if existent. Rejects with an ExpectedWebSocketRequestRejection, otherwise.

Attributes

Deprecated
[Since version Akka HTTP 10.2.0]
Inherited from:
WebSocketDirectives
def headerValueByName(headerName: Symbol): Directive1[String]

Extracts the value of the first HTTP request header with the given name. If no header with a matching name is found the request is rejected with a pekko.http.scaladsl.server.MissingHeaderRejection.

Extracts the value of the first HTTP request header with the given name. If no header with a matching name is found the request is rejected with a pekko.http.scaladsl.server.MissingHeaderRejection.

Attributes

Deprecated
[Since version Akka HTTP 10.2.0]
Inherited from:
HeaderDirectives
def optionalHeaderValueByName(headerName: Symbol): Directive1[Option[String]]

Extracts the value of the optional HTTP request header with the given name.

Extracts the value of the optional HTTP request header with the given name.

Attributes

Deprecated
[Since version Akka HTTP 10.2.0]
Inherited from:
HeaderDirectives

Inherited fields

val DoubleNumber: PathMatcher1[Double]

A PathMatcher that matches and extracts a Double value. The matched string representation is the pure decimal, optionally signed form of a double value, i.e. without exponent.

A PathMatcher that matches and extracts a Double value. The matched string representation is the pure decimal, optionally signed form of a double value, i.e. without exponent.

Attributes

Inherited from:
PathMatchers
val JavaUUID: PathMatcher1[UUID]

A PathMatcher that matches and extracts a java.util.UUID instance.

A PathMatcher that matches and extracts a java.util.UUID instance.

Attributes

Inherited from:
PathMatchers
val Neutral: PathMatcher0

A PathMatcher that always matches, doesn't consume anything and extracts nothing. Serves mainly as a neutral element in PathMatcher composition.

A PathMatcher that always matches, doesn't consume anything and extracts nothing. Serves mainly as a neutral element in PathMatcher composition.

Attributes

Inherited from:
PathMatchers
val Segments: PathMatcher1[List[String]]

A PathMatcher that matches up to 128 remaining segments as a List[String]. This can also be no segments resulting in the empty list. If the path has a trailing slash this slash will not be matched.

A PathMatcher that matches up to 128 remaining segments as a List[String]. This can also be no segments resulting in the empty list. If the path has a trailing slash this slash will not be matched.

Attributes

Inherited from:
PathMatchers
lazy protected val logger: Logger

Attributes

Inherited from:
LazyLogging

Implicits

Inherited implicits

implicit def _enhanceRouteWithConcatenation(route: Route): RouteWithConcatenation

Attributes

Inherited from:
RouteConcatenation
implicit def _regex2PathMatcher(regex: Regex): PathMatcher1[String]

Creates a PathMatcher that consumes (a prefix of) the first path segment if the path begins with a segment (a prefix of) which matches the given regex. Extracts either the complete match (if the regex doesn't contain a capture group) or the capture group (if the regex contains exactly one). If the regex contains more than one capture group the method throws an IllegalArgumentException.

Creates a PathMatcher that consumes (a prefix of) the first path segment if the path begins with a segment (a prefix of) which matches the given regex. Extracts either the complete match (if the regex doesn't contain a capture group) or the capture group (if the regex contains exactly one). If the regex contains more than one capture group the method throws an IllegalArgumentException.

Attributes

Inherited from:
ImplicitPathMatcherConstruction
implicit def _segmentStringToPathMatcher(segment: String): PathMatcher0

Creates a PathMatcher that consumes (a prefix of) the first path segment (if the path begins with a segment).

Creates a PathMatcher that consumes (a prefix of) the first path segment (if the path begins with a segment).

Attributes

Inherited from:
ImplicitPathMatcherConstruction
implicit def _string2NR(string: String): NameReceptacle[String]

Attributes

Inherited from:
ToNameReceptacleEnhancements (hidden)
implicit def _stringExtractionPair2PathMatcher[T](tuple: (String, T)): PathMatcher1[T]

Creates a PathMatcher that consumes (a prefix of) the first path segment (if the path begins with a segment) and extracts a given value.

Creates a PathMatcher that consumes (a prefix of) the first path segment (if the path begins with a segment) and extracts a given value.

Attributes

Inherited from:
ImplicitPathMatcherConstruction
implicit def _stringNameOptionReceptacle2PathMatcher(nr: NameOptionReceptacle[String]): PathMatcher0

Attributes

Inherited from:
ImplicitPathMatcherConstruction
implicit def _symbol2NR(symbol: Symbol): NameReceptacle[String]

Attributes

Inherited from:
ToNameReceptacleEnhancements (hidden)
implicit def _valueMap2PathMatcher[T](valueMap: Map[String, T]): PathMatcher1[T]

Creates a PathMatcher from the given Map of path segments (prefixes) to extracted values. If the unmatched path starts with a segment having one of the maps keys as a prefix the matcher consumes this path segment (prefix) and extracts the corresponding map value. For keys sharing a common prefix the longest matching prefix is selected.

Creates a PathMatcher from the given Map of path segments (prefixes) to extracted values. If the unmatched path starts with a segment having one of the maps keys as a prefix the matcher consumes this path segment (prefix) and extracts the corresponding map value. For keys sharing a common prefix the longest matching prefix is selected.

Attributes

Inherited from:
ImplicitPathMatcherConstruction
implicit def actorSystem: ActorSystem

Attributes

Inherited from:
ActorSystemModule
implicit def futureRouteToRoute(futureRoute: Future[Route]): Route

Attributes

Inherited from:
FutureDirectives
implicit def materializer: Materializer

Attributes

Inherited from:
ActorSystemModule
implicit def messageDispatcher: ExecutionContextExecutor

Attributes

Inherited from:
ActorSystemModule
implicit def timeout: Timeout

Attributes

Inherited from:
ActorSystemModule