@Produces(value={"application/xml","text/xml","*/*"}) @Consumes(value={"application/xml","text/xml","*/*"}) @Singleton public static final class SourceProvider.SourceWriter extends Object implements MessageBodyWriter<Source>
Source instances.| Constructor and Description |
|---|
SourceWriter(jakarta.inject.Provider<SAXParserFactory> spf,
jakarta.inject.Provider<TransformerFactory> tf) |
| Modifier and Type | Method and Description |
|---|---|
long |
getSize(Source 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(Source source,
Class<?> t,
Type gt,
Annotation[] as,
MediaType mediaType,
MultivaluedMap<String,Object> httpHeaders,
OutputStream entityStream)
Write a type to an HTTP message.
|
@Inject public SourceWriter(@Context jakarta.inject.Provider<SAXParserFactory> spf, @Context jakarta.inject.Provider<TransformerFactory> tf)
public boolean isWriteable(Class<?> t, Type gt, Annotation[] as, MediaType mediaType)
MessageBodyWriterisWriteable in interface MessageBodyWriter<Source>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(Source o, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType)
MessageBodyWriterwriteTo 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<Source>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(Source source, Class<?> t, Type gt, Annotation[] as, MediaType mediaType, MultivaluedMap<String,Object> httpHeaders, OutputStream entityStream) throws IOException
MessageBodyWriterwriteTo in interface MessageBodyWriter<Source>source - 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.entityStream - the OutputStream for the HTTP entity. The implementation must not close the output
stream.IOException - if an IO error arises.Copyright © 2007-2023, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.