Class JaxRsResult<T>

java.lang.Object
se.fortnox.reactivewizard.jaxrs.response.JaxRsResult<T>
Direct Known Subclasses:
JaxRsStreamingResult

public class JaxRsResult<T> extends Object
Represents a result of a call to a JaxRs resource. Contains the output but also some meta data about the call. This class is passed to the output processors.
  • Field Details

    • EMPTY_RESPONSE

      protected static final byte[] EMPTY_RESPONSE
    • EMPTY_RESPONSE_MONO

      protected static final reactor.core.publisher.Mono<byte[]> EMPTY_RESPONSE_MONO
    • serializer

      protected final rx.functions.Func1<reactor.core.publisher.Flux<T>,reactor.core.publisher.Flux<byte[]>> serializer
    • headers

      protected final Map<String,String> headers
    • output

      protected reactor.core.publisher.Flux<T> output
    • responseStatus

      protected io.netty.handler.codec.http.HttpResponseStatus responseStatus
  • Constructor Details

    • JaxRsResult

      public JaxRsResult(reactor.core.publisher.Flux<T> output, io.netty.handler.codec.http.HttpResponseStatus responseStatus, rx.functions.Func1<reactor.core.publisher.Flux<T>,reactor.core.publisher.Flux<byte[]>> serializer, Map<String,String> headers)
  • Method Details

    • getResponseStatus

      public io.netty.handler.codec.http.HttpResponseStatus getResponseStatus()
    • addHeader

      public JaxRsResult<T> addHeader(String key, String value)
    • doOnOutput

      public JaxRsResult<T> doOnOutput(rx.functions.Action1<T> action)
    • map

      public JaxRsResult<T> map(rx.functions.Func1<reactor.core.publisher.Flux<T>,reactor.core.publisher.Flux<T>> mapFunction)
    • write

      public org.reactivestreams.Publisher<Void> write(reactor.netty.http.server.HttpServerResponse response)
      Write the response.
      Parameters:
      response - the response
      Returns:
      empty publisher