Class BasicDirectives

    • Constructor Detail

      • BasicDirectives

        public BasicDirectives()
    • Method Detail

      • cancelRejection

        public Route cancelRejection​(Rejection rejection,
                                     java.util.function.Supplier<Route> inner)
        Adds a TransformationRejection cancelling all rejections equal to the given one to the list of rejections potentially coming back from the inner route.
        Parameters:
        rejection - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • cancelRejections

        public Route cancelRejections​(java.lang.Iterable<java.lang.Class<?>> classes,
                                      java.util.function.Supplier<Route> inner)
        Adds a TransformationRejection cancelling all rejections of one of the given classes to the list of rejections potentially coming back from the inner route.
        Parameters:
        classes - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • cancelRejections

        public Route cancelRejections​(java.util.function.Predicate<Rejection> filter,
                                      java.util.function.Supplier<Route> inner)
        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.
        Parameters:
        filter - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • extract

        public <T> Route extract​(java.util.function.Function<RequestContext,​T> extract,
                                 java.util.function.Function<T,​Route> inner)
        Extracts a single value using the given function.
        Parameters:
        extract - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractActorSystem

        public Route extractActorSystem​(java.util.function.Function<akka.actor.ActorSystem,​Route> inner)
        Extracts the ActorSystem if the available Materializer is an ActorMaterializer. Otherwise throws an exception as it won't be able to extract the system from arbitrary materializers.
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractDataBytes

        public RouteAdapter extractDataBytes​(java.util.function.Function<akka.stream.javadsl.Source<akka.util.ByteString,​java.lang.Object>,​Route> inner)
        Extracts the entities dataBytes Source from the RequestContext.
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractEntity

        public Route extractEntity​(java.util.function.Function<RequestEntity,​Route> inner)
        Extracts the current http request entity.
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractExecutionContext

        public Route extractExecutionContext​(java.util.function.Function<scala.concurrent.ExecutionContextExecutor,​Route> inner)
        Extracts the ExecutionContextExecutor from the RequestContext.
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractLog

        public Route extractLog​(java.util.function.Function<akka.event.LoggingAdapter,​Route> inner)
        Extracts the LoggingAdapter
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractMatchedPath

        public RouteAdapter extractMatchedPath​(java.util.function.Function<java.lang.String,​Route> inner)
        Extracts the already matched path from the RequestContext.
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractMaterializer

        public Route extractMaterializer​(java.util.function.Function<akka.stream.Materializer,​Route> inner)
        Extracts the Materializer from the RequestContext.
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractRequest

        public RouteAdapter extractRequest​(java.util.function.Function<HttpRequest,​Route> inner)
        Extracts the current HttpRequest instance.
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractRequestContext

        public RouteAdapter extractRequestContext​(java.util.function.Function<RequestContext,​Route> inner)
        Extracts the RequestContext itself.
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractSettings

        public RouteAdapter extractSettings​(java.util.function.Function<RoutingSettings,​Route> inner)
        Extracts the RoutingSettings from the RequestContext.
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractStrictEntity

        public Route extractStrictEntity​(scala.concurrent.duration.FiniteDuration timeout,
                                         java.util.function.Function<HttpEntity.Strict,​Route> inner)
        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 akka.http.parsing.max-to-strict-bytes configuration setting.

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

        Parameters:
        timeout - The directive is failed if the stream isn't completed after the given timeout.
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractStrictEntity

        public Route extractStrictEntity​(scala.concurrent.duration.FiniteDuration timeout,
                                         long maxBytes,
                                         java.util.function.Function<HttpEntity.Strict,​Route> inner)
        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 akka.http.parsing.max-to-strict-bytes configuration setting.

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

        Parameters:
        timeout - The directive is failed if the stream isn't completed after the given timeout.
        maxBytes - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractUnmatchedPath

        public RouteAdapter extractUnmatchedPath​(java.util.function.Function<java.lang.String,​Route> inner)
        Extracts the yet unmatched path from the RequestContext.
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • extractUri

        public RouteAdapter extractUri​(java.util.function.Function<Uri,​Route> inner)
        Extracts the complete request URI.
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • mapInnerRoute

        public Route mapInnerRoute​(java.util.function.Function<Route,​Route> f,
                                   java.util.function.Supplier<Route> inner)
      • mapRejections

        public Route mapRejections​(java.util.function.Function<java.util.List<Rejection>,​java.util.List<Rejection>> f,
                                   java.util.function.Supplier<Route> inner)
      • mapResponseHeaders

        public Route mapResponseHeaders​(java.util.function.Function<java.util.List<HttpHeader>,​java.util.List<HttpHeader>> f,
                                        java.util.function.Supplier<Route> inner)
      • mapRouteResultFuture

        public Route mapRouteResultFuture​(java.util.function.Function<java.util.concurrent.CompletionStage<RouteResult>,​java.util.concurrent.CompletionStage<RouteResult>> f,
                                          java.util.function.Supplier<Route> inner)
      • mapRouteResultWith

        public Route mapRouteResultWith​(java.util.function.Function<RouteResult,​java.util.concurrent.CompletionStage<RouteResult>> f,
                                        java.util.function.Supplier<Route> inner)
      • mapRouteResultWithPF

        public Route mapRouteResultWithPF​(scala.PartialFunction<RouteResult,​java.util.concurrent.CompletionStage<RouteResult>> f,
                                          java.util.function.Supplier<Route> inner)
      • mapSettings

        public Route mapSettings​(java.util.function.Function<RoutingSettings,​RoutingSettings> f,
                                 java.util.function.Supplier<Route> inner)
        Runs the inner route with settings mapped by the given function.
        Parameters:
        f - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • mapUnmatchedPath

        public Route mapUnmatchedPath​(java.util.function.Function<java.lang.String,​java.lang.String> f,
                                      java.util.function.Supplier<Route> inner)
        Transforms the unmatchedPath of the RequestContext using the given function.
        Parameters:
        f - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • pass

        public Route pass​(java.util.function.Supplier<Route> inner)
        Always passes the request on to its inner route (i.e. does nothing with the request or the response).
        Parameters:
        inner - (undocumented)
        Returns:
        (undocumented)
      • provide

        public <T> Route provide​(T t,
                                 java.util.function.Function<T,​Route> inner)
        Injects the given value into a directive.
        Parameters:
        t - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • recoverRejections

        public Route recoverRejections​(java.util.function.Function<java.lang.Iterable<Rejection>,​RouteResult> f,
                                       java.util.function.Supplier<Route> inner)
      • recoverRejectionsWith

        public Route recoverRejectionsWith​(java.util.function.Function<java.lang.Iterable<Rejection>,​java.util.concurrent.CompletionStage<RouteResult>> f,
                                           java.util.function.Supplier<Route> inner)
      • toStrictEntity

        public Route toStrictEntity​(scala.concurrent.duration.FiniteDuration timeout,
                                    java.util.function.Supplier<Route> inner)
        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 akka.http.parsing.max-to-strict-bytes configuration setting.

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

        Parameters:
        timeout - The directive is failed if the stream isn't completed after the given timeout.
        inner - (undocumented)
        Returns:
        (undocumented)
      • toStrictEntity

        public Route toStrictEntity​(scala.concurrent.duration.FiniteDuration timeout,
                                    long maxBytes,
                                    java.util.function.Supplier<Route> inner)
        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 akka.http.parsing.max-to-strict-bytes configuration setting.

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

        Parameters:
        timeout - The directive is failed if the stream isn't completed after the given timeout.
        maxBytes - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • withExecutionContext

        public Route withExecutionContext​(scala.concurrent.ExecutionContextExecutor ec,
                                          java.util.function.Supplier<Route> inner)
        Runs its inner route with the given alternative ExecutionContextExecutor.
        Parameters:
        ec - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • withLog

        public Route withLog​(akka.event.LoggingAdapter log,
                             java.util.function.Supplier<Route> inner)
        Runs its inner route with the given alternative LoggingAdapter.
        Parameters:
        log - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • withMaterializer

        public Route withMaterializer​(akka.stream.Materializer mat,
                                      java.util.function.Supplier<Route> inner)
        Runs its inner route with the given alternative Materializer.
        Parameters:
        mat - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)
      • withSettings

        public Route withSettings​(RoutingSettings s,
                                  java.util.function.Supplier<Route> inner)
        Runs its inner route with the given alternative RoutingSettings.
        Parameters:
        s - (undocumented)
        inner - (undocumented)
        Returns:
        (undocumented)