public class ClientResponse extends InboundMessageContext implements ClientResponseContext, InjectionManagerSupplier
runtimeDelegateDecorator
Constructor and Description |
---|
ClientResponse(ClientRequest requestContext,
Response response)
Create new Jersey client response context initialized from a JAX-RS
response . |
ClientResponse(Response.StatusType status,
ClientRequest requestContext)
Create a new Jersey client response context.
|
ClientResponse(Response.StatusType status,
ClientRequest requestContext,
URI resolvedRequestUri)
Create a new Jersey client response context.
|
Modifier and Type | Method and Description |
---|---|
Map<String,NewCookie> |
getCookies() |
Object |
getEntity()
Get the message entity Java instance.
|
InjectionManager |
getInjectionManager()
Get injection manager.
|
Set<Link> |
getLinks()
Get the links attached to the message as header.
|
protected Iterable<ReaderInterceptor> |
getReaderInterceptors()
Get reader interceptors bound to this context.
|
ClientRequest |
getRequestContext()
Get the associated client request context paired with this response context.
|
URI |
getResolvedRequestUri()
Get the absolute URI of the ultimate request made to receive this response.
|
int |
getStatus() |
Response.StatusType |
getStatusInfo() |
<T> T |
readEntity(Class<T> entityType)
Read the message entity input stream as an instance of specified Java type
using a
MessageBodyReader that supports mapping the
message entity stream onto the requested type. |
<T> T |
readEntity(Class<T> entityType,
Annotation[] annotations)
Read the message entity input stream as an instance of specified Java type
using a
MessageBodyReader that supports mapping the
message entity stream onto the requested type. |
<T> T |
readEntity(GenericType<T> entityType)
Read the message entity input stream as an instance of specified Java type
using a
MessageBodyReader that supports mapping the
message entity stream onto the requested type. |
<T> T |
readEntity(GenericType<T> entityType,
Annotation[] annotations)
Read the message entity input stream as an instance of specified Java type
using a
MessageBodyReader that supports mapping the
message entity stream onto the requested type. |
void |
setResolvedRequestUri(URI uri)
Set the absolute URI of the ultimate request that was made to receive this response.
|
void |
setStatus(int code) |
void |
setStatusInfo(Response.StatusType status) |
String |
toString() |
bufferEntity, close, getConfiguration, getEntityStream, getHeaders, getHeaderString, getHeaderValueExceptionContext, getIfMatch, getIfNoneMatch, getMediaType, getQualifiedAcceptableLanguages, getQualifiedAcceptableMediaTypes, getQualifiedAcceptCharset, getQualifiedAcceptEncoding, getWorkers, hasEntity, header, headers, headers, headers, headers, readEntity, readEntity, readEntity, readEntity, remove, setEntityStream, setWorkers
containsHeaderString, containsHeaderString, exception, getAllowedMethods, getDate, getEntityTag, getLanguage, getLastModified, getLength, getLengthLong, getLink, getLinkBuilder, getLocation, getRequestCookies, getResponseCookies, hasLink, singleHeader, singleHeader
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getAllowedMethods, getDate, getEntityStream, getEntityTag, getHeaders, getHeaderString, getLanguage, getLastModified, getLength, getLink, getLinkBuilder, getLocation, getMediaType, hasEntity, hasLink, setEntityStream
public ClientResponse(ClientRequest requestContext, Response response)
response
.requestContext
- associated request context.response
- JAX-RS response to be used to initialize the response context.public ClientResponse(Response.StatusType status, ClientRequest requestContext)
status
- response status.requestContext
- associated client request context.public ClientResponse(Response.StatusType status, ClientRequest requestContext, URI resolvedRequestUri)
status
- response status.requestContext
- associated client request context.resolvedRequestUri
- resolved request URI (see getResolvedRequestUri()
).public int getStatus()
getStatus
in interface ClientResponseContext
public void setStatus(int code)
setStatus
in interface ClientResponseContext
public void setStatusInfo(Response.StatusType status)
setStatusInfo
in interface ClientResponseContext
public Response.StatusType getStatusInfo()
getStatusInfo
in interface ClientResponseContext
public URI getResolvedRequestUri()
The returned URI points to the ultimate location of the requested resource that
provided the data represented by this response instance. Because Jersey client connectors
may be configured to automatically follow redirect responses
, the value of the URI returned by this method may
be different from the value of the original request URI
that can be retrieved using response.getRequestContext().getUri()
chain of method calls.
ClientProperties.FOLLOW_REDIRECTS
,
setResolvedRequestUri(java.net.URI)
public void setResolvedRequestUri(URI uri)
If the original request URI has been modified (e.g. due to redirections), the absolute URI of the ultimate request being made to receive the response should be set by the caller on the response instance using this method.
uri
- absolute URI of the ultimate request made to receive this response. Must not be null
.NullPointerException
- in case the passed uri
parameter is null.IllegalArgumentException
- in case the passed uri
parameter does
not represent an absolute URI.ClientProperties.FOLLOW_REDIRECTS
,
getResolvedRequestUri()
public ClientRequest getRequestContext()
public Map<String,NewCookie> getCookies()
getCookies
in interface ClientResponseContext
public Set<Link> getLinks()
InboundMessageContext
getLinks
in interface ClientResponseContext
getLinks
in class InboundMessageContext
Set
if no links are present. Never
returns null
.public Object getEntity() throws IllegalStateException
null
if the message
does not contain an entity body.
If the entity is represented by an un-consumed input stream
the method will return the input stream.
null
if message does not contain an
entity body (i.e. when InboundMessageContext.hasEntity()
returns false
).IllegalStateException
- if the entity was previously fully consumed
as an input stream
, or
if the response has been closed
.Response.getEntity()
public <T> T readEntity(Class<T> entityType) throws ProcessingException, IllegalStateException
MessageBodyReader
that supports mapping the
message entity stream onto the requested type.
Method throws an ProcessingException
if the content of the
message cannot be mapped to an entity of the requested type and
IllegalStateException
in case the entity is not backed by an input
stream or if the original entity input stream has already been consumed
without buffering
the entity data prior consuming.
A message instance returned from this method will be cached for
subsequent retrievals via getEntity()
. Unless the supplied entity
type is an input stream
, this method automatically
closes
the an unconsumed original response entity data stream
if open. In case the entity data has been buffered, the buffer will be reset
prior consuming the buffered data to enable subsequent invocations of
readEntity(...)
methods on this response.
T
- entity instance Java type.entityType
- the type of entity.ProcessingException
wrapping the
underlying NoContentException
is thrown.ProcessingException
- if the content of the message cannot be
mapped to an entity of the requested type.IllegalStateException
- if the entity is not backed by an input stream,
the response has been closed
already,
or if the entity input stream has been fully consumed already and has
not been buffered prior consuming.MessageBodyReader
,
Response.readEntity(Class)
public <T> T readEntity(GenericType<T> entityType) throws ProcessingException, IllegalStateException
MessageBodyReader
that supports mapping the
message entity stream onto the requested type.
Method throws an ProcessingException
if the content of the
message cannot be mapped to an entity of the requested type and
IllegalStateException
in case the entity is not backed by an input
stream or if the original entity input stream has already been consumed
without buffering
the entity data prior consuming.
A message instance returned from this method will be cached for
subsequent retrievals via getEntity()
. Unless the supplied entity
type is an input stream
, this method automatically
closes
the an unconsumed original response entity data stream
if open. In case the entity data has been buffered, the buffer will be reset
prior consuming the buffered data to enable subsequent invocations of
readEntity(...)
methods on this response.
T
- entity instance Java type.entityType
- the type of entity; may be generic.ProcessingException
wrapping the
underlying NoContentException
is thrown.ProcessingException
- if the content of the message cannot be
mapped to an entity of the requested type.IllegalStateException
- if the entity is not backed by an input stream,
the response has been closed
already,
or if the entity input stream has been fully consumed already and has
not been buffered prior consuming.MessageBodyReader
,
Response.readEntity(jakarta.ws.rs.core.GenericType)
public <T> T readEntity(Class<T> entityType, Annotation[] annotations) throws ProcessingException, IllegalStateException
MessageBodyReader
that supports mapping the
message entity stream onto the requested type.
Method throws an ProcessingException
if the content of the
message cannot be mapped to an entity of the requested type and
IllegalStateException
in case the entity is not backed by an input
stream or if the original entity input stream has already been consumed
without buffering
the entity data prior consuming.
A message instance returned from this method will be cached for
subsequent retrievals via getEntity()
. Unless the supplied entity
type is an input stream
, this method automatically
closes
the an unconsumed original response entity data stream
if open. In case the entity data has been buffered, the buffer will be reset
prior consuming the buffered data to enable subsequent invocations of
readEntity(...)
methods on this response.
T
- entity instance Java type.entityType
- the type of entity.annotations
- annotations that will be passed to the MessageBodyReader
.ProcessingException
wrapping the
underlying NoContentException
is thrown.ProcessingException
- if the content of the message cannot be
mapped to an entity of the requested type.IllegalStateException
- if the entity is not backed by an input stream,
the response has been closed
already,
or if the entity input stream has been fully consumed already and has
not been buffered prior consuming.MessageBodyReader
,
Response.readEntity(Class, java.lang.annotation.Annotation[])
public <T> T readEntity(GenericType<T> entityType, Annotation[] annotations) throws ProcessingException, IllegalStateException
MessageBodyReader
that supports mapping the
message entity stream onto the requested type.
Method throws an ProcessingException
if the content of the
message cannot be mapped to an entity of the requested type and
IllegalStateException
in case the entity is not backed by an input
stream or if the original entity input stream has already been consumed
without buffering
the entity data prior consuming.
A message instance returned from this method will be cached for
subsequent retrievals via getEntity()
. Unless the supplied entity
type is an input stream
, this method automatically
closes
the an unconsumed original response entity data stream
if open. In case the entity data has been buffered, the buffer will be reset
prior consuming the buffered data to enable subsequent invocations of
readEntity(...)
methods on this response.
T
- entity instance Java type.entityType
- the type of entity; may be generic.annotations
- annotations that will be passed to the MessageBodyReader
.ProcessingException
wrapping the
underlying NoContentException
is thrown.ProcessingException
- if the content of the message cannot be
mapped to an entity of the requested type.IllegalStateException
- if the entity is not backed by an input stream,
the response has been closed
already,
or if the entity input stream has been fully consumed already and has
not been buffered prior consuming.MessageBodyReader
,
Response.readEntity(jakarta.ws.rs.core.GenericType, java.lang.annotation.Annotation[])
public InjectionManager getInjectionManager()
InjectionManagerSupplier
getInjectionManager
in interface InjectionManagerSupplier
protected Iterable<ReaderInterceptor> getReaderInterceptors()
InboundMessageContext
Interceptors will be used when one of the readEntity
methods is invoked.
getReaderInterceptors
in class InboundMessageContext
Copyright © 2007-2024, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.