Package org.nuxeo.ecm.webengine.model.io
Class DocumentBlobHolderWriter
java.lang.Object
org.nuxeo.ecm.webengine.model.io.DocumentBlobHolderWriter
- All Implemented Interfaces:
javax.ws.rs.ext.MessageBodyWriter<DocumentBlobHolder>
@Provider
public class DocumentBlobHolderWriter
extends Object
implements javax.ws.rs.ext.MessageBodyWriter<DocumentBlobHolder>
Writer for a
DocumentBlobHolder, keeping the context of the current document, which allows for later
filtering by the DownloadService.- Since:
- 9.3
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidlonggetSize(DocumentBlobHolder blobHolder, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType) booleanisWriteable(Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType) protected voidtransferBlob(Blob blob, OutputStream entityStream) voidwriteTo(DocumentBlobHolder blobHolder, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String, Object> httpHeaders, OutputStream entityStream)
-
Field Details
-
request
@Context protected javax.servlet.http.HttpServletRequest request -
response
@Context protected javax.servlet.http.HttpServletResponse response
-
-
Constructor Details
-
DocumentBlobHolderWriter
public DocumentBlobHolderWriter()
-
-
Method Details
-
isWriteable
public boolean isWriteable(Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType) - Specified by:
isWriteablein interfacejavax.ws.rs.ext.MessageBodyWriter<DocumentBlobHolder>
-
getSize
public long getSize(DocumentBlobHolder blobHolder, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType) - Specified by:
getSizein interfacejavax.ws.rs.ext.MessageBodyWriter<DocumentBlobHolder>
-
writeTo
public void writeTo(DocumentBlobHolder blobHolder, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String, Object> httpHeaders, OutputStream entityStream) throws IOException- Specified by:
writeToin interfacejavax.ws.rs.ext.MessageBodyWriter<DocumentBlobHolder>- Throws:
IOException
-
commitAndReopenTransaction
protected void commitAndReopenTransaction() -
transferBlob
- Throws:
IOException
-