Class MultipartFormAnnotationWriter
- java.lang.Object
-
- org.jboss.resteasy.plugins.providers.multipart.AbstractMultipartWriter
-
- org.jboss.resteasy.plugins.providers.multipart.AbstractMultipartFormDataWriter
-
- org.jboss.resteasy.plugins.providers.multipart.MultipartFormAnnotationWriter
-
- All Implemented Interfaces:
javax.ws.rs.ext.MessageBodyWriter<Object>
,AsyncMessageBodyWriter<Object>
@Provider @Produces("multipart/form-data") public class MultipartFormAnnotationWriter extends AbstractMultipartFormDataWriter implements AsyncMessageBodyWriter<Object>
- Version:
- $Revision: 1 $
- Author:
- Bill Burke
-
-
Field Summary
-
Fields inherited from class org.jboss.resteasy.plugins.providers.multipart.AbstractMultipartWriter
COLON_SPACE_BYTES, DOUBLE_DASH_BYTES, LINE_SEPARATOR_BYTES, workers
-
-
Constructor Summary
Constructors Constructor Description MultipartFormAnnotationWriter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CompletionStage<Void>
asyncWriteTo(Object obj, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,Object> httpHeaders, AsyncOutputStream entityStream)
Write a type to an HTTP message using async IO.protected void
getFields(Class<?> type, MultipartFormDataOutput output, Object obj)
protected String
getFilename(AccessibleObject method)
long
getSize(Object o, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
boolean
isWriteable(Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
void
writeTo(Object obj, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,Object> httpHeaders, OutputStream entityStream)
-
Methods inherited from class org.jboss.resteasy.plugins.providers.multipart.AbstractMultipartFormDataWriter
asyncWriteParts, writeParts
-
Methods inherited from class org.jboss.resteasy.plugins.providers.multipart.AbstractMultipartWriter
asyncWrite, asyncWrite, asyncWritePart, asyncWritePart, asyncWriteParts, write, write, writePart, writePart, writeParts
-
-
-
-
Method Detail
-
isWriteable
public boolean isWriteable(Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
- Specified by:
isWriteable
in interfacejavax.ws.rs.ext.MessageBodyWriter<Object>
-
getSize
public long getSize(Object o, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
- Specified by:
getSize
in interfacejavax.ws.rs.ext.MessageBodyWriter<Object>
-
writeTo
public void writeTo(Object obj, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,Object> httpHeaders, OutputStream entityStream) throws IOException, javax.ws.rs.WebApplicationException
- Specified by:
writeTo
in interfacejavax.ws.rs.ext.MessageBodyWriter<Object>
- Throws:
IOException
javax.ws.rs.WebApplicationException
-
asyncWriteTo
public CompletionStage<Void> asyncWriteTo(Object obj, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,Object> httpHeaders, AsyncOutputStream entityStream)
Description copied from interface:AsyncMessageBodyWriter
Write a type to an HTTP message using async IO. The message header map is mutable but any changes must be made before writing to the async output stream since the headers will be flushed prior to writing the message body.- Specified by:
asyncWriteTo
in interfaceAsyncMessageBodyWriter<Object>
- Parameters:
obj
- the instance to write.type
- the class of instance that is to be written.genericType
- the type of instance to be written.GenericEntity
provides a way to specify this information at runtime.annotations
- an array of the annotations attached to the message entity instance.mediaType
- the media type of the HTTP entity.httpHeaders
- a mutable map of the HTTP message headers.entityStream
- theAsyncOutputStream
for the HTTP entity. The implementation should not close the output stream.- Returns:
- a
CompletionStage
indicating completion
-
getFilename
protected String getFilename(AccessibleObject method)
-
getFields
protected void getFields(Class<?> type, MultipartFormDataOutput output, Object obj) throws IOException
- Throws:
IOException
-
-