Class FileDownloadResource

java.lang.Object
ch.rswk.meta.engine.rs.FileDownloadResource

@Path("download") public class FileDownloadResource extends Object
FileDownloadResource provides a REST-like API to download files.

Delegates to FileService.downloadAndReceive(Executor, AtomicInteger, Consumer, DownloadRequest, Function, long, TemporalUnit).

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private static final int
     
    private final FileService
     
    private static final org.slf4j.Logger
     
    private final org.eclipse.jetty.util.thread.QueuedThreadPool
     
    private final UserService
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    FileDownloadResource(FileService fileService, org.eclipse.jetty.util.thread.QueuedThreadPool threadPool, UserService userService)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    download(jakarta.ws.rs.container.AsyncResponse async, jakarta.ws.rs.core.HttpHeaders headers, String key, jakarta.servlet.http.HttpServletRequest request, int timeout)
     
    void
    download(jakarta.ws.rs.container.AsyncResponse async, String fileName, jakarta.ws.rs.core.HttpHeaders headers, String key, jakarta.servlet.http.HttpServletRequest request, int timeout, String token)
     
    private void
    processDownload(jakarta.ws.rs.container.AsyncResponse async, jakarta.ws.rs.core.HttpHeaders headers, String key, jakarta.servlet.http.HttpServletRequest request, int timeout, @Nullable String token)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • LOG

      private static final org.slf4j.Logger LOG
    • DEFAULT_TIMEOUT

      private static final int DEFAULT_TIMEOUT
      See Also:
    • fileService

      private final FileService fileService
    • threadPool

      private final org.eclipse.jetty.util.thread.QueuedThreadPool threadPool
    • userService

      private final UserService userService
  • Constructor Details

    • FileDownloadResource

      @Inject public FileDownloadResource(FileService fileService, org.eclipse.jetty.util.thread.QueuedThreadPool threadPool, UserService userService)
  • Method Details

    • download

      @Path("/{key}") @GET @Produces("application/octet-stream") public void download(@Suspended jakarta.ws.rs.container.AsyncResponse async, @Context jakarta.ws.rs.core.HttpHeaders headers, @PathParam("key") String key, @Context jakarta.servlet.http.HttpServletRequest request, @QueryParam("timeout") int timeout)
    • download

      @Path("/{key}/{fileName}") @GET @Produces("application/octet-stream") public void download(@Suspended jakarta.ws.rs.container.AsyncResponse async, @PathParam("fileName") String fileName, @Context jakarta.ws.rs.core.HttpHeaders headers, @PathParam("key") String key, @Context jakarta.servlet.http.HttpServletRequest request, @QueryParam("timeout") int timeout, @QueryParam("token") String token)
    • processDownload

      private void processDownload(jakarta.ws.rs.container.AsyncResponse async, jakarta.ws.rs.core.HttpHeaders headers, String key, jakarta.servlet.http.HttpServletRequest request, int timeout, @Nullable String token)