Package fr.gouv.vitam.common.stream
Class VitamAsyncInputStreamResponse
java.lang.Object
jakarta.ws.rs.core.Response
fr.gouv.vitam.common.stream.VitamAsyncInputStreamResponse
- All Implemented Interfaces:
AutoCloseable
public class VitamAsyncInputStreamResponse
extends jakarta.ws.rs.core.Response
This class implements a fake InputStream from a Response such that the response will be closed once the stream is
closed itself. It should replace all the AsyncInputStreamHelper
Example of usages:
When using specific headers:
When using standard headers:
When using the native response as source:
Example of usages:
When using specific headers:
Map<String, String> headers = new HashMap<>();
headers.put(HttpHeaders.CONTENT_TYPE, response.getMediaType().toString());
headers.put(HttpHeaders.CONTENT_DISPOSITION, response.getHeaderString(HttpHeaders.CONTENT_DISPOSITION));
headers.put(GlobalDataRest.X_QUALIFIER, xQualifier);
headers.put(GlobalDataRest.X_VERSION, xVersion);
return new VitamAsyncInputStreamResponse(response, Status.OK, headers);
When using standard headers:
return new VitamAsyncInputStreamResponse(response, Status.OK, MediaType.APPLICATION_OCTET_STREAM_TYPE);
When using the native response as source:
return new VitamAsyncInputStreamResponse(response);
-
Nested Class Summary
Nested classes/interfaces inherited from class jakarta.ws.rs.core.Response
jakarta.ws.rs.core.Response.ResponseBuilder, jakarta.ws.rs.core.Response.Status, jakarta.ws.rs.core.Response.StatusType -
Constructor Summary
ConstructorsConstructorDescriptionVitamAsyncInputStreamResponse(jakarta.ws.rs.core.Response response) VitamAsyncInputStreamResponse(jakarta.ws.rs.core.Response response, jakarta.ws.rs.core.Response.Status status, jakarta.ws.rs.core.MediaType mediaType) VitamAsyncInputStreamResponse(jakarta.ws.rs.core.Response response, jakarta.ws.rs.core.Response.Status status, Map<String, String> headers) VitamAsyncInputStreamResponse(InputStream inputStream, jakarta.ws.rs.core.Response.Status status, Map<String, String> headers) -
Method Summary
Modifier and TypeMethodDescriptionbooleanvoidclose()getDate()getDefaultMapFromResponse(jakarta.ws.rs.core.Response response) Return the default Map of headers from Responsejakarta.ws.rs.core.EntityTaggetHeaderString(String name) intjakarta.ws.rs.core.Linkjakarta.ws.rs.core.Link.BuildergetLinkBuilder(String relation) Set<jakarta.ws.rs.core.Link> getLinks()jakarta.ws.rs.core.MediaTypeintjakarta.ws.rs.core.Response.StatusTypebooleanboolean<T> TreadEntity(jakarta.ws.rs.core.GenericType<T> entityType) <T> TreadEntity(jakarta.ws.rs.core.GenericType<T> entityType, Annotation[] annotations) <T> TreadEntity(Class<T> entityType) <T> TreadEntity(Class<T> entityType, Annotation[] annotations) Methods inherited from class jakarta.ws.rs.core.Response
accepted, accepted, created, fromResponse, isClosed, noContent, notAcceptable, notModified, notModified, notModified, ok, ok, ok, ok, ok, seeOther, serverError, status, status, status, status, temporaryRedirect
-
Constructor Details
-
VitamAsyncInputStreamResponse
public VitamAsyncInputStreamResponse(jakarta.ws.rs.core.Response response) - Parameters:
response-
-
VitamAsyncInputStreamResponse
public VitamAsyncInputStreamResponse(jakarta.ws.rs.core.Response response, jakarta.ws.rs.core.Response.Status status, jakarta.ws.rs.core.MediaType mediaType) - Parameters:
response-status-mediaType-
-
VitamAsyncInputStreamResponse
public VitamAsyncInputStreamResponse(jakarta.ws.rs.core.Response response, jakarta.ws.rs.core.Response.Status status, Map<String, String> headers) - Parameters:
response-status-headers-
-
VitamAsyncInputStreamResponse
public VitamAsyncInputStreamResponse(InputStream inputStream, jakarta.ws.rs.core.Response.Status status, Map<String, String> headers) - Parameters:
inputStream-status-headers-
-
-
Method Details
-
getDefaultMapFromResponse
Return the default Map of headers from Response- Parameters:
response-- Returns:
- the default map
-
getStatus
public int getStatus()- Specified by:
getStatusin classjakarta.ws.rs.core.Response
-
getStatusInfo
public jakarta.ws.rs.core.Response.StatusType getStatusInfo()- Specified by:
getStatusInfoin classjakarta.ws.rs.core.Response
-
getMediaType
public jakarta.ws.rs.core.MediaType getMediaType()- Specified by:
getMediaTypein classjakarta.ws.rs.core.Response
-
getEntity
- Specified by:
getEntityin classjakarta.ws.rs.core.Response
-
readEntity
- Specified by:
readEntityin classjakarta.ws.rs.core.Response
-
readEntity
public <T> T readEntity(jakarta.ws.rs.core.GenericType<T> entityType) - Specified by:
readEntityin classjakarta.ws.rs.core.Response
-
readEntity
- Specified by:
readEntityin classjakarta.ws.rs.core.Response
-
readEntity
- Specified by:
readEntityin classjakarta.ws.rs.core.Response
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein classjakarta.ws.rs.core.Response
-
getHeaders
- Overrides:
getHeadersin classjakarta.ws.rs.core.Response
-
hasEntity
public boolean hasEntity()- Specified by:
hasEntityin classjakarta.ws.rs.core.Response
-
bufferEntity
public boolean bufferEntity()- Specified by:
bufferEntityin classjakarta.ws.rs.core.Response
-
getLanguage
- Specified by:
getLanguagein classjakarta.ws.rs.core.Response
-
getLength
public int getLength()- Specified by:
getLengthin classjakarta.ws.rs.core.Response
-
getAllowedMethods
- Specified by:
getAllowedMethodsin classjakarta.ws.rs.core.Response
-
getCookies
- Specified by:
getCookiesin classjakarta.ws.rs.core.Response
-
getEntityTag
public jakarta.ws.rs.core.EntityTag getEntityTag()- Specified by:
getEntityTagin classjakarta.ws.rs.core.Response
-
getDate
- Specified by:
getDatein classjakarta.ws.rs.core.Response
-
getLastModified
- Specified by:
getLastModifiedin classjakarta.ws.rs.core.Response
-
getLocation
- Specified by:
getLocationin classjakarta.ws.rs.core.Response
-
getLinks
- Specified by:
getLinksin classjakarta.ws.rs.core.Response
-
hasLink
- Specified by:
hasLinkin classjakarta.ws.rs.core.Response
-
getLink
- Specified by:
getLinkin classjakarta.ws.rs.core.Response
-
getLinkBuilder
- Specified by:
getLinkBuilderin classjakarta.ws.rs.core.Response
-
getMetadata
- Specified by:
getMetadatain classjakarta.ws.rs.core.Response
-
getStringHeaders
- Specified by:
getStringHeadersin classjakarta.ws.rs.core.Response
-
getHeaderString
- Specified by:
getHeaderStringin classjakarta.ws.rs.core.Response
-