spray.routing

HttpServiceBase

trait HttpServiceBase extends Directives

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. HttpServiceBase
  2. Directives
  3. SecurityDirectives
  4. SchemeDirectives
  5. RouteDirectives
  6. RespondWithDirectives
  7. RangeDirectives
  8. PathDirectives
  9. ImplicitPathMatcherConstruction
  10. PathMatchers
  11. ParameterDirectives
  12. MiscDirectives
  13. MethodDirectives
  14. MarshallingDirectives
  15. HostDirectives
  16. HeaderDirectives
  17. FutureDirectives
  18. FormFieldDirectives
  19. ToNameReceptaclePimps
  20. FileAndResourceDirectives
  21. ExecutionDirectives
  22. EncodingDirectives
  23. DebuggingDirectives
  24. CookieDirectives
  25. ChunkingDirectives
  26. CacheConditionDirectives
  27. BasicDirectives
  28. AnyParamDirectives
  29. RouteConcatenation
  30. AnyRef
  31. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. abstract class NumberMatcher[T] extends PathMatcher1[T]

    Definition Classes
    PathMatchers
  2. class RouteConcatenation extends AnyRef

    Definition Classes
    RouteConcatenation

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. val DoubleNumber: PathMatcher1[Double]

    A PathMatcher that matches and extracts a Double value.

    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.

    Definition Classes
    PathMatchers
  7. object HexIntNumber extends NumberMatcher[Int]

    A PathMatcher that efficiently matches a number of hex-digits and extracts their (non-negative) Int value.

  8. object HexLongNumber extends NumberMatcher[Long]

    A PathMatcher that efficiently matches a number of hex-digits and extracts their (non-negative) Long value.

  9. object IntNumber extends NumberMatcher[Int]

    A PathMatcher that efficiently matches a number of digits and extracts their (non-negative) Int value.

  10. val JavaUUID: PathMatcher1[UUID]

    A PathMatcher that matches and extracts a java.

    A PathMatcher that matches and extracts a java.util.UUID instance.

    Definition Classes
    PathMatchers
  11. object LongNumber extends NumberMatcher[Long]

    A PathMatcher that efficiently matches a number of digits and extracts their (non-negative) Long value.

  12. val Neutral: PathMatcher0

    A PathMatcher that always matches, doesn't consume anything and extracts nothing.

    A PathMatcher that always matches, doesn't consume anything and extracts nothing. Serves mainly as a neutral element in PathMatcher composition.

    Definition Classes
    PathMatchers
  13. object PathEnd extends PathMatcher0

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

  14. object Rest extends PathMatcher1[String]

    A PathMatcher that matches and extracts the complete remaining, unmatched part of the request's URI path as an (encoded!) String.

  15. object RestPath extends PathMatcher1[Path]

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

  16. object Segment extends PathMatcher1[String]

    A PathMatcher that matches if the unmatched path starts with a path segment.

  17. val Segments: PathMatcher1[List[String]]

    A PathMatcher that matches all remaining segments as a List[String].

    A PathMatcher that matches all 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.

    Definition Classes
    PathMatchers
  18. object Slash extends PathMatcher0

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

  19. def anyParam(apdm: AnyParamDefMagnet): Out

    Definition Classes
    AnyParamDirectives
  20. def anyParams(apdm: AnyParamDefMagnet): Out

    Definition Classes
    AnyParamDirectives
  21. 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.

    Definition Classes
    MarshallingDirectives
  22. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  23. def authenticate[T](magnet: AuthMagnet[T]): Directive1[T]

    Wraps its inner Route with authentication support.

    Wraps its inner Route with authentication support. Can be called either with a Future[Authentication[T]] or ContextAuthenticator[T].

    Definition Classes
    SecurityDirectives
  24. def authorize(check: (RequestContext) ⇒ Boolean): Directive0

    Applies the given authorization check to the request.

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

    Definition Classes
    SecurityDirectives
  25. def authorize(check: ⇒ Boolean): Directive0

    Applies the given authorization check to the request.

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

    Definition Classes
    SecurityDirectives
  26. def autoChunk(csm: ChunkSizeMagnet): Directive0

    Converts unchunked HttpResponses coming back from its inner route into chunked responses of which each chunk is smaller or equal to the given size, if the response entity is at least as large as the given threshold.

    Converts unchunked HttpResponses coming back from its inner route into chunked responses of which each chunk is smaller or equal to the given size, if the response entity is at least as large as the given threshold. If the response content from the inner route is smaller than the given threshold the response is left untouched.

    Definition Classes
    ChunkingDirectives
  27. def autoChunkFileBytes(csm: ChunkSizeMagnet): Directive0

    Converts unchunked HttpResponses coming back from its inner route into chunked responses of which each chunk is smaller or equal to the given size, if the response entity contains HttpData.

    Converts unchunked HttpResponses coming back from its inner route into chunked responses of which each chunk is smaller or equal to the given size, if the response entity contains HttpData.FileBytes and is at least as large as the given threshold. If the response content from the inner route is smaller than the given threshold the response is left untouched.

    Definition Classes
    ChunkingDirectives
  28. def cancelAllRejections(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.

    Definition Classes
    MiscDirectives
  29. 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.

    Definition Classes
    MiscDirectives
  30. def clientIP: Directive1[RemoteAddress]

    Directive extracting the IP of the client from either the X-Forwarded-For, Remote-Address or X-Real-IP header (in that order of priority).

    Directive extracting the IP of the client from either the X-Forwarded-For, Remote-Address or X-Real-IP header (in that order of priority).

    Definition Classes
    MiscDirectives
  31. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. def complete: (⇒ ToResponseMarshallable) ⇒ StandardRoute

    Completes the request using the given arguments.

    Completes the request using the given arguments.

    Definition Classes
    RouteDirectives
  33. def compressResponse(magnet: CompressResponseMagnet): Directive0

    Wraps its inner Route with response compression, using the specified encoders in the given order of preference.

    Wraps its inner Route with response compression, using the specified encoders in the given order of preference. If no encoders are specifically given Gzip, Deflate and NoEncoding are used in this order, depending on what the client accepts.

    Definition Classes
    EncodingDirectives
  34. def compressResponseIfRequested(magnet: RefFactoryMagnet): Directive0

    Wraps its inner Route with response compression if and only if the client specifically requests compression with an Accept-Encoding header.

    Wraps its inner Route with response compression if and only if the client specifically requests compression with an Accept-Encoding header.

    Definition Classes
    EncodingDirectives
  35. def conditional(eTag: EntityTag, lastModified: DateTime): Directive0

    Wraps its inner route with support for Conditional Requests as defined by tools.

    Wraps its inner route with support for Conditional Requests as defined by tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-26

    In particular the algorithm defined by tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-26#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.

    Definition Classes
    CacheConditionDirectives
  36. def cookie(name: String): Directive1[HttpCookie]

    Extracts an HttpCookie with the given name.

    Extracts an HttpCookie with the given name. If the cookie is not present the request is rejected with a respective spray.routing.MissingCookieRejection.

    Definition Classes
    CookieDirectives
  37. def decodeRequest(decoder: Decoder): Directive0

    Wraps its inner Route with decoding support using the given Decoder.

    Wraps its inner Route with decoding support using the given Decoder.

    Definition Classes
    EncodingDirectives
  38. def decompressRequest(first: Decoder, more: Decoder*): Directive0

    Decompresses the incoming request if it is encoded with one of the given encoders.

    Decompresses 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.

    Definition Classes
    EncodingDirectives
  39. def decompressRequest(): Directive0

    Decompresses the incoming request if it is GZip or Deflate encoded.

    Decompresses the incoming request if it is GZip or Deflate encoded. Uncompressed requests are passed on to the inner route unchanged.

    Definition Classes
    EncodingDirectives
  40. def delete: Directive0

    A route filter that rejects all non-DELETE requests.

    A route filter that rejects all non-DELETE requests.

    Definition Classes
    MethodDirectives
  41. def deleteCookie(name: String, domain: String = "", path: String = ""): Directive0

    Adds a Set-Cookie header expiring the given cookie to all responses of its inner route.

    Adds a Set-Cookie header expiring the given cookie to all responses of its inner route.

    Definition Classes
    CookieDirectives
  42. def deleteCookie(first: HttpCookie, more: HttpCookie*): Directive0

    Adds a Set-Cookie header expiring the given cookies to all responses of its inner route.

    Adds a Set-Cookie header expiring the given cookies to all responses of its inner route.

    Definition Classes
    CookieDirectives
  43. def detach(dm: DetachMagnet): Directive0

    Executes its inner Route in a Future.

    Executes its inner Route in a Future.

    Definition Classes
    ExecutionDirectives
  44. def dynamic: ByNameDirective0

    Definition Classes
    ExecutionDirectives
  45. def dynamicIf(enabled: Boolean): ByNameDirective0

    Definition Classes
    ExecutionDirectives
  46. def encodeResponse(magnet: EncodeResponseMagnet): Directive0

    Wraps its inner Route with encoding support using the given Encoder.

    Wraps its inner Route with encoding support using the given Encoder.

    Definition Classes
    EncodingDirectives
  47. def entity[T](um: FromRequestUnmarshaller[T]): Directive1[T]

    Unmarshalls the requests entity to the given type passes it to its inner Route.

    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 spray.routing.Rejection produced by the unmarshaller.

    Definition Classes
    MarshallingDirectives
  48. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  49. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  50. def extract[T](f: (RequestContext) ⇒ T): Directive1[T]

    Extracts a single value using the given function.

    Extracts a single value using the given function.

    Definition Classes
    BasicDirectives
  51. 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.

    Definition Classes
    RouteDirectives
  52. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  53. def formField(fdm: FieldDefMagnet): Out

    Definition Classes
    FormFieldDirectives
  54. def formFields(fdm: FieldDefMagnet): Out

    Definition Classes
    FormFieldDirectives
  55. def get: Directive0

    A route filter that rejects all non-GET requests.

    A route filter that rejects all non-GET requests.

    Definition Classes
    MethodDirectives
  56. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  57. def getFromBrowseableDirectories(directories: String*)(implicit renderer: Marshaller[DirectoryListing], settings: RoutingSettings, resolver: ContentTypeResolver, refFactory: ActorRefFactory, log: LoggingContext): (RequestContext) ⇒ Unit

    Serves the content of the given directories as a file system browser, i.

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

    Definition Classes
    FileAndResourceDirectives
  58. def getFromBrowseableDirectory(directory: String)(implicit renderer: Marshaller[DirectoryListing], settings: RoutingSettings, resolver: ContentTypeResolver, refFactory: ActorRefFactory, log: LoggingContext): (RequestContext) ⇒ Unit

    Same as getFromBrowseableDirectories with only one directory.

    Same as getFromBrowseableDirectories with only one directory.

    Definition Classes
    FileAndResourceDirectives
  59. def getFromDirectory(directoryName: String)(implicit settings: RoutingSettings, resolver: ContentTypeResolver, refFactory: ActorRefFactory, log: LoggingContext): (RequestContext) ⇒ Unit

    Completes GET requests with the content of a file underneath the given directory.

    Completes GET requests with the content of a file underneath the given directory. The unmatchedPath of the spray.RequestContext is first transformed by the given pathRewriter function before being appended to the given directoryName to build the final fileName. The actual I/O operation is running detached in a Future, so it doesn't block the current thread. If the file cannot be read the Route rejects the request.

    Definition Classes
    FileAndResourceDirectives
  60. def getFromFile(file: File, contentType: ContentType)(implicit settings: RoutingSettings, refFactory: ActorRefFactory): (RequestContext) ⇒ Unit

    Completes GET requests with the content of the given file.

    Completes GET requests with the content of the given file. The actual I/O operation is running detached in a Future, so it doesn't block the current thread (but potentially some other thread !). If the file cannot be found or read the request is rejected.

    Definition Classes
    FileAndResourceDirectives
  61. def getFromFile(file: File)(implicit settings: RoutingSettings, resolver: ContentTypeResolver, refFactory: ActorRefFactory): (RequestContext) ⇒ Unit

    Completes GET requests with the content of the given file.

    Completes GET requests with the content of the given file. The actual I/O operation is running detached in a Future, so it doesn't block the current thread (but potentially some other thread !). If the file cannot be found or read the request is rejected.

    Definition Classes
    FileAndResourceDirectives
  62. def getFromFile(fileName: String)(implicit settings: RoutingSettings, resolver: ContentTypeResolver, refFactory: ActorRefFactory): (RequestContext) ⇒ Unit

    Completes GET requests with the content of the given file.

    Completes GET requests with the content of the given file. The actual I/O operation is running detached in a Future, so it doesn't block the current thread (but potentially some other thread !). If the file cannot be found or read the request is rejected.

    Definition Classes
    FileAndResourceDirectives
  63. def getFromResource(resourceName: String, contentType: ContentType)(implicit refFactory: ActorRefFactory): (RequestContext) ⇒ Unit

    Completes GET requests with the content of the given resource.

    Completes GET requests with the content of the given resource. The actual I/O operation is running detached in a Future, so it doesn't block the current thread (but potentially some other thread !). If the file cannot be found or read the Route rejects the request.

    Definition Classes
    FileAndResourceDirectives
  64. def getFromResource(resourceName: String)(implicit resolver: ContentTypeResolver, refFactory: ActorRefFactory): (RequestContext) ⇒ Unit

    Completes GET requests with the content of the given resource.

    Completes GET requests with the content of the given resource. The actual I/O operation is running detached in a Future, so it doesn't block the current thread (but potentially some other thread !). If the file cannot be found or read the Route rejects the request.

    Definition Classes
    FileAndResourceDirectives
  65. def getFromResourceDirectory(directoryName: String)(implicit resolver: ContentTypeResolver, refFactory: ActorRefFactory, log: LoggingContext): (RequestContext) ⇒ Unit

    Same as "getFromDirectory" except that the file is not fetched from the file system but rather from a "resource directory".

    Same as "getFromDirectory" except that the file is not fetched from the file system but rather from a "resource directory".

    Definition Classes
    FileAndResourceDirectives
  66. def handleExceptions(handler: ExceptionHandler): Directive0

    Transforms exceptions thrown during evaluation of its inner route using the given spray.routing.ExceptionHandler.

    Transforms exceptions thrown during evaluation of its inner route using the given spray.routing.ExceptionHandler.

    Definition Classes
    ExecutionDirectives
  67. def handleRejections(handler: RejectionHandler): Directive0

    Transforms rejections produced by its inner route using the given spray.routing.RejectionHandler.

    Transforms rejections produced by its inner route using the given spray.routing.RejectionHandler.

    Definition Classes
    ExecutionDirectives
  68. def handleUnhandledRejections: PF

  69. def handleWith[A, B](f: (A) ⇒ B)(implicit um: FromRequestUnmarshaller[A], m: ToResponseMarshaller[B]): (RequestContext) ⇒ Unit

    Completes the request using the given function.

    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.

    Definition Classes
    MarshallingDirectives
  70. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  71. def head: Directive0

    A route filter that rejects all non-HEAD requests.

    A route filter that rejects all non-HEAD requests.

    Definition Classes
    MethodDirectives
  72. def headerValue[T](f: (HttpHeader) ⇒ Option[T]): Directive1[T]

    Extracts an HTTP header value using the given function.

    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 spray.routing.MalformedHeaderRejection.

    Definition Classes
    HeaderDirectives
  73. def headerValueByName(headerName: String): Directive1[String]

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

    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 spray.routing.MissingHeaderRejection.

    Definition Classes
    HeaderDirectives
  74. def headerValueByName(headerName: Symbol): Directive1[String]

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

    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 spray.routing.MissingHeaderRejection.

    Definition Classes
    HeaderDirectives
  75. def headerValueByType[T <: HttpHeader](magnet: ClassMagnet[T]): Directive1[T]

    Extracts the HTTP request header of the given type.

    Extracts the HTTP request header of the given type. If no header with a matching type is found the request is rejected with a spray.routing.MissingHeaderRejection.

    Definition Classes
    HeaderDirectives
  76. def headerValuePF[T](pf: PartialFunction[HttpHeader, T]): Directive1[T]

    Extracts an HTTP header value using the given partial function.

    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.

    Definition Classes
    HeaderDirectives
  77. def hextract[L <: HList](f: (RequestContext) ⇒ L): Directive[L]

    Extracts a number of values using the given function.

    Extracts a number of values using the given function.

    Definition Classes
    BasicDirectives
  78. def host(regex: Regex): Directive1[String]

    Rejects all requests with a host name that doesn't have a prefix matching the given regular expression.

    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.

    Definition Classes
    HostDirectives
  79. 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.

    Definition Classes
    HostDirectives
  80. 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.

    Definition Classes
    HostDirectives
  81. def hostName: Directive1[String]

    Extracts the hostname part of the Host header value in the request.

    Extracts the hostname part of the Host header value in the request.

    Definition Classes
    HostDirectives
  82. def hprovide[L <: HList](values: L): Directive[L]

    Injects the given values into a directive.

    Injects the given values into a directive.

    Definition Classes
    BasicDirectives
  83. 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.

    Definition Classes
    MarshallingDirectives
  84. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  85. def jsonpWithParameter(parameterName: String): Directive0

    Wraps the inner Route with JSONP support.

    Wraps the inner Route with JSONP support. If a query parameter with the given name is present in the request and the inner Route returns content with content-type application/json the response content is wrapped with a call to a Javascript function having the name of query parameters value. The name of this function is validated to prevent XSS vulnerabilities. Only alphanumeric, underscore (_), dollar ($) and dot (.) characters are allowed. Additionally the content-type is changed from application/json to application/javascript in these cases.

    Definition Classes
    MiscDirectives
  86. def listDirectoryContents(directories: String*)(implicit renderer: Marshaller[DirectoryListing], refFactory: ActorRefFactory, log: LoggingContext): (RequestContext) ⇒ Unit

    Completes GET requests with a unified listing of the contents of all given directories.

    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].

    Definition Classes
    FileAndResourceDirectives
  87. def logRequest(magnet: LoggingMagnet[(HttpRequest) ⇒ Unit]): Directive0

    Definition Classes
    DebuggingDirectives
  88. def logRequestResponse(magnet: LoggingMagnet[(HttpRequest) ⇒ (Any) ⇒ Unit]): Directive0

    Definition Classes
    DebuggingDirectives
  89. def logResponse(magnet: LoggingMagnet[(Any) ⇒ Unit]): Directive0

    Definition Classes
    DebuggingDirectives
  90. def mapHttpResponse(f: (HttpResponse) ⇒ HttpResponse): Directive0

    Definition Classes
    BasicDirectives
  91. def mapHttpResponseEntity(f: (HttpEntity) ⇒ HttpEntity): Directive0

    Definition Classes
    BasicDirectives
  92. def mapHttpResponseHeaders(f: (List[HttpHeader]) ⇒ List[HttpHeader]): Directive0

    Definition Classes
    BasicDirectives
  93. def mapHttpResponsePart(f: (HttpResponsePart) ⇒ HttpResponsePart): Directive0

    Definition Classes
    BasicDirectives
  94. def mapInnerRoute(f: ((RequestContext) ⇒ Unit) ⇒ (RequestContext) ⇒ Unit): Directive0

    Definition Classes
    BasicDirectives
  95. def mapRejections(f: (List[Rejection]) ⇒ List[Rejection]): Directive0

    Definition Classes
    BasicDirectives
  96. def mapRequest(f: (HttpRequest) ⇒ HttpRequest): Directive0

    Definition Classes
    BasicDirectives
  97. def mapRequestContext(f: (RequestContext) ⇒ RequestContext): Directive0

    Definition Classes
    BasicDirectives
  98. def mapRouteResponse(f: (Any) ⇒ Any): Directive0

    Definition Classes
    BasicDirectives
  99. def mapRouteResponsePF(f: PartialFunction[Any, Any]): Directive0

    Definition Classes
    BasicDirectives
  100. 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.

    Definition Classes
    MethodDirectives
  101. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  102. def noop: Directive0

    A Directive0 that always passes the request on to its inner route (i.

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

    Definition Classes
    BasicDirectives
  103. def nothingMatcher[L <: HList]: PathMatcher[L]

    A PathMatcher that never matches.

    A PathMatcher that never matches.

    Definition Classes
    PathMatchers
  104. final def notify(): Unit

    Definition Classes
    AnyRef
  105. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  106. def ofType[T <: Rejection](implicit arg0: ClassTag[T]): (Rejection) ⇒ Boolean

    Definition Classes
    MiscDirectives
  107. def ofTypes(classes: Class[_]*): (Rejection) ⇒ Boolean

    Definition Classes
    MiscDirectives
  108. def onComplete[T](magnet: OnCompleteFutureMagnet[T]): Directive1[Try[T]]

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

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

    Definition Classes
    FutureDirectives
  109. def onConnectionClosed(ev: ConnectionClosed): Unit

    Called by the runRoute behavior when a ConnectionClosed event is received.

    Called by the runRoute behavior when a ConnectionClosed event is received. Override with custom logic if required (by default the method does nothing).

  110. def onFailure(magnet: OnFailureFutureMagnet): Directive1[Throwable]

    "Unwraps" a Future[T] and runs its inner route when the future has failed with the future's failure exception as an extraction of type Throwable.

    "Unwraps" a Future[T] and runs its 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.)

    Definition Classes
    FutureDirectives
  111. def onSuccess(magnet: OnSuccessFutureMagnet): Directive[Out]

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

    "Unwraps" a Future[T] and runs its 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 an HList it is directly expanded into the respective number of extractions.

    Definition Classes
    FutureDirectives
  112. def optionalAuthenticate[T](magnet: AuthMagnet[T]): Directive1[Option[T]]

    Wraps its inner Route with optional authentication support.

    Wraps its inner Route with optional authentication support. Can be called either with a Future[Authentication[T]] or ContextAuthenticator[T].

    Definition Classes
    SecurityDirectives
  113. def optionalCookie(name: String): Directive1[Option[HttpCookie]]

    Extracts an HttpCookie with the given name.

    Extracts an HttpCookie with the given name. If the cookie is not present a value of None is extracted.

    Definition Classes
    CookieDirectives
  114. def optionalHeaderValue[T](f: (HttpHeader) ⇒ Option[T]): Directive1[Option[T]]

    Extracts an optional HTTP header value using the given function.

    Extracts an optional HTTP header value using the given function. If the given function throws an exception the request is rejected with a spray.routing.MalformedHeaderRejection.

    Definition Classes
    HeaderDirectives
  115. 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.

    Definition Classes
    HeaderDirectives
  116. 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.

    Definition Classes
    HeaderDirectives
  117. def optionalHeaderValueByType[T <: HttpHeader](magnet: ClassMagnet[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.

    Definition Classes
    HeaderDirectives
  118. def optionalHeaderValuePF[T](pf: PartialFunction[HttpHeader, T]): Directive1[Option[T]]

    Extracts an optional HTTP header value using the given partial function.

    Extracts an optional HTTP header value using the given partial function. If the given function throws an exception the request is rejected with a spray.routing.MalformedHeaderRejection.

    Definition Classes
    HeaderDirectives
  119. def options: Directive0

    A route filter that rejects all non-OPTIONS requests.

    A route filter that rejects all non-OPTIONS requests.

    Definition Classes
    MethodDirectives
  120. def overrideMethodWithParameter(paramName: String): Directive0

    Changes the HTTP method of the request to the value of the specified query string parameter.

    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
    Definition Classes
    MethodDirectives
  121. def parameter(pdm: ParamDefMagnet): Out

    Definition Classes
    ParameterDirectives
  122. def parameterMap: Directive[::[Map[String, String], HNil]]

    Extracts the requests query parameters as a Map[String, String].

    Extracts the requests query parameters as a Map[String, String].

    Definition Classes
    ParameterDirectives
  123. def parameterMultiMap: Directive[::[Map[String, List[String]], HNil]]

    Extracts the requests query parameters as a Map[String, List[String]].

    Extracts the requests query parameters as a Map[String, List[String]].

    Definition Classes
    ParameterDirectives
  124. def parameterSeq: Directive[::[Seq[(String, String)], HNil]]

    Extracts the requests query parameters as a Seq[(String, String)].

    Extracts the requests query parameters as a Seq[(String, String)].

    Definition Classes
    ParameterDirectives
  125. def parameters(pdm: ParamDefMagnet): Out

    Definition Classes
    ParameterDirectives
  126. def pass: Directive0

    A simple alias for the noop directive.

    A simple alias for the noop directive.

    Definition Classes
    BasicDirectives
  127. def patch: Directive0

    A route filter that rejects all non-PATCH requests.

    A route filter that rejects all non-PATCH requests.

    Definition Classes
    MethodDirectives
  128. def path[L <: HList](pm: PathMatcher[L]): Directive[L]

    Tries to consume a leading slash from the unmatched path of the spray.routing.RequestContext before applying the given matcher.

    Tries to consume a leading slash from the unmatched path of the spray.routing.RequestContext before applying the given matcher. The matcher has to match the remaining path completely or leave only a single trailing slash. If matched the value extracted by the PathMatcher is extracted on the directive level.

    Definition Classes
    PathDirectives
  129. def pathEnd: Directive0

    Rejects the request if the unmatchedPath of the spray.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 spray.RequestContext is non-empty, or said differently: only passes on the request to its inner route if the request path has been matched completely.

    Definition Classes
    PathDirectives
  130. 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.

    Definition Classes
    PathDirectives
  131. def pathPrefix[L <: HList](pm: PathMatcher[L]): Directive[L]

    Tries to consume a leading slash from the unmatched path of the spray.routing.RequestContext before applying the given matcher.

    Tries to consume a leading slash from the unmatched path of the spray.routing.RequestContext before applying the given matcher. 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.

    Definition Classes
    PathDirectives
  132. def pathPrefixTest[L <: HList](pm: PathMatcher[L]): Directive[L]

    Checks whether the unmatchedPath of the spray.RequestContext has a prefix matched by the given PathMatcher.

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

    Definition Classes
    PathDirectives
  133. 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.

    Definition Classes
    PathDirectives
  134. def pathSuffix[L <: HList](pm: PathMatcher[L]): Directive[L]

    Rejects the request if the unmatchedPath of the spray.RequestContext does not have a suffix matched the given PathMatcher.

    Rejects the request if the unmatchedPath of the spray.RequestContext does not have a suffix matched the given PathMatcher. 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!

    Definition Classes
    PathDirectives
  135. def pathSuffixTest[L <: HList](pm: PathMatcher[L]): Directive[L]

    Checks whether the unmatchedPath of the spray.RequestContext has a suffix matched by the given PathMatcher.

    Checks whether the unmatchedPath of the spray.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!

    Definition Classes
    PathDirectives
  136. implicit def pimpRouteWithConcatenation(route: (RequestContext) ⇒ Unit): RouteConcatenation

    Definition Classes
    RouteConcatenation
  137. def post: Directive0

    A route filter that rejects all non-POST requests.

    A route filter that rejects all non-POST requests.

    Definition Classes
    MethodDirectives
  138. def produce[T](marshaller: ToResponseMarshaller[T]): Directive[::[(T) ⇒ Unit, HNil]]

    Uses the marshaller for the given type to produce a completion function that is passed to its inner route.

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

    Definition Classes
    MarshallingDirectives
  139. def provide[T](value: T): Directive1[T]

    Injects the given value into a directive.

    Injects the given value into a directive.

    Definition Classes
    BasicDirectives
  140. def put: Directive0

    A route filter that rejects all non-PUT requests.

    A route filter that rejects all non-PUT requests.

    Definition Classes
    MethodDirectives
  141. def rawPathPrefix[L <: HList](pm: PathMatcher[L]): Directive[L]

    Applies the given matcher directly to the unmatched path of the spray.routing.RequestContext (i.

    Applies the given matcher directly to the unmatched path of the spray.routing.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.

    Definition Classes
    PathDirectives
  142. def rawPathPrefixTest[L <: HList](pm: PathMatcher[L]): Directive[L]

    Checks whether the unmatchedPath of the spray.RequestContext has a prefix matched by the given PathMatcher.

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

    Definition Classes
    PathDirectives
  143. 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.

    Definition Classes
    RouteDirectives
  144. 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.

    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.

    Definition Classes
    ImplicitPathMatcherConstruction
  145. def reject(rejections: Rejection*): StandardRoute

    Rejects the request with the given rejections.

    Rejects the request with the given rejections.

    Definition Classes
    RouteDirectives
  146. def reject: StandardRoute

    Rejects the request with an empty set of rejections.

    Rejects the request with an empty set of rejections.

    Definition Classes
    RouteDirectives
  147. def rejectEmptyResponse: Directive0

    Converts responses with an empty entity into (empty) rejections.

    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.

    Definition Classes
    MiscDirectives
  148. 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.

    Definition Classes
    EncodingDirectives
  149. def requestEntityEmpty: Directive0

    Rejects the request if its entity is not empty.

    Rejects the request if its entity is not empty.

    Definition Classes
    MiscDirectives
  150. def requestEntityPresent: Directive0

    Rejects empty requests with a RequestEntityExpectedRejection.

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

    Definition Classes
    MiscDirectives
  151. def requestInstance: Directive1[HttpRequest]

    Extracts the complete request.

    Extracts the complete request.

    Definition Classes
    MiscDirectives
  152. def requestUri: Directive1[Uri]

    Extracts the complete request URI.

    Extracts the complete request URI.

    Definition Classes
    MiscDirectives
  153. 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.

    Definition Classes
    RespondWithDirectives
  154. def respondWithHeaders(responseHeaders: List[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.

    Definition Classes
    RespondWithDirectives
  155. def respondWithHeaders(responseHeaders: 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.

    Definition Classes
    RespondWithDirectives
  156. def respondWithLastModifiedHeader(timestamp: Long): Directive0

    Adds a Last-Modified header to all HttpResponses from its inner Route.

    Adds a Last-Modified header to all HttpResponses from its inner Route.

    Definition Classes
    FileAndResourceDirectives
  157. def respondWithMediaType(mediaType: MediaType): Directive0

    Overrides the media-type of the response returned by its inner route with the given one.

    Overrides the media-type of the response returned by its inner route with the given one. If the given media-type is not accepted by the client the request is rejected with an UnacceptedResponseContentTypeRejection. Note, that this directive removes a potentially existing 'Accept' header from the request, in order to "disable" content negotiation in a potentially running Marshaller in its inner route. Also note that this directive does *not* change the response entity buffer content in any way, it merely overrides the media-type component of the entities Content-Type.

    Definition Classes
    RespondWithDirectives
  158. def respondWithSingletonHeader(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.

    Definition Classes
    RespondWithDirectives
  159. def respondWithSingletonHeaders(responseHeaders: List[HttpHeader]): Directive0

    Definition Classes
    RespondWithDirectives
  160. def respondWithSingletonHeaders(responseHeaders: 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.

    Definition Classes
    RespondWithDirectives
  161. def respondWithStatus(responseStatus: StatusCode): Directive0

    Overrides the given response status on all HTTP responses of its inner Route.

    Overrides the given response status on all HTTP responses of its inner Route.

    Definition Classes
    RespondWithDirectives
  162. def responseEncodingAccepted(encoding: HttpEncoding): Directive0

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

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

    Definition Classes
    EncodingDirectives
  163. def rewriteUnmatchedPath(f: (Path) ⇒ Path): Directive0

    Transforms the unmatchedPath of the RequestContext using the given function.

    Transforms the unmatchedPath of the RequestContext using the given function.

    Definition Classes
    MiscDirectives
  164. def routeRouteResponse(f: PartialFunction[Any, (RequestContext) ⇒ Unit]): Directive0

    Definition Classes
    BasicDirectives
  165. def runRoute(route: (RequestContext) ⇒ Unit)(implicit eh: ExceptionHandler, rh: RejectionHandler, ac: ActorContext, rs: RoutingSettings, log: LoggingContext): Receive

    Supplies the actor behavior for executing the given route.

  166. def scheme(schm: 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.

    Definition Classes
    SchemeDirectives
  167. def schemeName: Directive1[String]

    Extracts the Uri scheme from the request.

    Extracts the Uri scheme from the request.

    Definition Classes
    SchemeDirectives
  168. def sealRejectionHandler(rh: RejectionHandler): RejectionHandler

  169. def sealRoute(route: (RequestContext) ⇒ Unit)(implicit eh: ExceptionHandler, rh: RejectionHandler): (RequestContext) ⇒ Unit

    "Seals" a route by wrapping it with exception handling and rejection conversion.

  170. 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).

    Definition Classes
    ImplicitPathMatcherConstruction
  171. 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.

    Definition Classes
    PathMatchers
  172. def setCookie(first: HttpCookie, more: HttpCookie*): Directive0

    Adds a Set-Cookie header with the given cookies to all responses of its inner route.

    Adds a Set-Cookie header with the given cookies to all responses of its inner route.

    Definition Classes
    CookieDirectives
  173. implicit def string2NR(string: String): NameReceptacle[String]

    Definition Classes
    ToNameReceptaclePimps
  174. 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.

    Definition Classes
    ImplicitPathMatcherConstruction
  175. implicit def stringOptionNameReceptacle2PathMatcher(nr: NameReceptacle[Option[String]]): PathMatcher0

  176. implicit def symbol2NR(symbol: Symbol): NameReceptacle[String]

    Definition Classes
    ToNameReceptaclePimps
  177. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  178. def timeoutRoute: (RequestContext) ⇒ Unit

  179. def toString(): String

    Definition Classes
    AnyRef → Any
  180. def unmatchedPath: Directive1[Path]

    Extracts the unmatched path from the RequestContext.

    Extracts the unmatched path from the RequestContext.

    Definition Classes
    MiscDirectives
  181. def validate(check: ⇒ Boolean, errorMsg: String): Directive0

    Returns a Directive which checks the given condition before passing on the spray.routing.RequestContext to its inner Route.

    Returns a Directive which checks the given condition before passing on the spray.routing.RequestContext to its inner Route. If the condition fails the route is rejected with a spray.routing.ValidationRejection.

    Definition Classes
    MiscDirectives
  182. implicit def valueMap2PathMatcher[T](valueMap: Map[String, T]): PathMatcher1[T]

    Creates a PathMatcher from the given Map of path segments (prefixes) to extracted values.

    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.

    Definition Classes
    ImplicitPathMatcherConstruction
  183. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  184. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  185. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  186. def withRangeSupport(m: WithRangeSupportMagnet): 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.

    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.

    Definition Classes
    RangeDirectives
    See also

    https://tools.ietf.org/html/draft-ietf-httpbis-p5-range/

Deprecated Value Members

  1. def PathElement: Segment.type

    Definition Classes
    PathMatchers
    Annotations
    @deprecated
    Deprecated

    (Since version 1.0-M8/1.1-M8) Use Segment instead

Inherited from Directives

Inherited from SecurityDirectives

Inherited from SchemeDirectives

Inherited from RouteDirectives

Inherited from RespondWithDirectives

Inherited from RangeDirectives

Inherited from PathDirectives

Inherited from PathMatchers

Inherited from ParameterDirectives

Inherited from MiscDirectives

Inherited from MethodDirectives

Inherited from MarshallingDirectives

Inherited from HostDirectives

Inherited from HeaderDirectives

Inherited from FutureDirectives

Inherited from FormFieldDirectives

Inherited from ToNameReceptaclePimps

Inherited from FileAndResourceDirectives

Inherited from ExecutionDirectives

Inherited from EncodingDirectives

Inherited from DebuggingDirectives

Inherited from CookieDirectives

Inherited from ChunkingDirectives

Inherited from CacheConditionDirectives

Inherited from BasicDirectives

Inherited from AnyParamDirectives

Inherited from AnyRef

Inherited from Any

Ungrouped