Package ch.rswk.meta.engine.rs
Class FileDownloadResource
java.lang.Object
ch.rswk.meta.engine.rs.FileDownloadResource
FileDownloadResource provides a REST-like API to download files.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final intprivate final FileServiceprivate static final org.slf4j.Loggerprivate final org.eclipse.jetty.util.thread.QueuedThreadPoolprivate final UserService -
Constructor Summary
ConstructorsConstructorDescriptionFileDownloadResource(FileService fileService, org.eclipse.jetty.util.thread.QueuedThreadPool threadPool, UserService userService) -
Method Summary
Modifier and TypeMethodDescriptionvoiddownload(jakarta.ws.rs.container.AsyncResponse async, jakarta.ws.rs.core.HttpHeaders headers, String key, jakarta.servlet.http.HttpServletRequest request, int timeout) voiddownload(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 voidprocessDownload(jakarta.ws.rs.container.AsyncResponse async, jakarta.ws.rs.core.HttpHeaders headers, String key, jakarta.servlet.http.HttpServletRequest request, int timeout, @Nullable String token)
-
Field Details
-
LOG
private static final org.slf4j.Logger LOG -
DEFAULT_TIMEOUT
private static final int DEFAULT_TIMEOUT- See Also:
-
fileService
-
threadPool
private final org.eclipse.jetty.util.thread.QueuedThreadPool threadPool -
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) -
processDownload
-
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)
-