@Produces(value={"application/octet-stream","*/*"}) @Singleton public final class StreamingOutputProvider extends Object implements MessageBodyWriter<StreamingOutput>
streaming output
marshalling.Constructor and Description |
---|
StreamingOutputProvider() |
Modifier and Type | Method and Description |
---|---|
long |
getSize(StreamingOutput o,
Class<?> type,
Type genericType,
Annotation[] annotations,
MediaType mediaType)
Originally, the method has been called before
writeTo to ascertain the length in bytes of the serialized form
of t . |
boolean |
isWriteable(Class<?> t,
Type gt,
Annotation[] as,
MediaType mediaType)
Ascertain if the MessageBodyWriter supports a particular type.
|
void |
writeTo(StreamingOutput o,
Class<?> t,
Type gt,
Annotation[] as,
MediaType mediaType,
MultivaluedMap<String,Object> httpHeaders,
OutputStream entity)
Write a type to an HTTP message.
|
public boolean isWriteable(Class<?> t, Type gt, Annotation[] as, MediaType mediaType)
MessageBodyWriter
isWriteable
in interface MessageBodyWriter<StreamingOutput>
t
- the class of instance that is to be written.gt
- the type of instance to be written, obtained either by reflection of a resource method return type
or via inspection of the returned instance. GenericEntity
provides a way to specify this
information at runtime.as
- an array of the annotations attached to the message entity instance.mediaType
- the media type of the HTTP entity.true
if the type is supported, otherwise false
.public long getSize(StreamingOutput o, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType)
MessageBodyWriter
writeTo
to ascertain the length in bytes of the serialized form
of t
. A non-negative return value has been used in a HTTP Content-Length
header.
As of JAX-RS 2.0, the method has been deprecated and the value returned by the method is ignored by a JAX-RS runtime.
All MessageBodyWriter
implementations are advised to return -1
from the method. Responsibility to
compute the actual Content-Length
header value has been delegated to JAX-RS runtime.
getSize
in interface MessageBodyWriter<StreamingOutput>
o
- the instance to writetype
- 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.public void writeTo(StreamingOutput o, Class<?> t, Type gt, Annotation[] as, MediaType mediaType, MultivaluedMap<String,Object> httpHeaders, OutputStream entity) throws IOException
MessageBodyWriter
writeTo
in interface MessageBodyWriter<StreamingOutput>
o
- the instance to write.t
- the class of instance that is to be written.gt
- the type of instance to be written. GenericEntity
provides a way to
specify this information at runtime.as
- 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.entity
- the OutputStream
for the HTTP entity. The implementation must not close the output
stream.IOException
- if an IO error arises.Copyright © 2007-2024, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.