public class ClientRequest extends org.glassfish.jersey.message.internal.OutboundMessageContext implements ClientRequestContext, HttpHeaders, org.glassfish.jersey.internal.inject.InjectionManagerSupplier
org.glassfish.jersey.message.internal.OutboundMessageContext.StreamProviderACCEPT, ACCEPT_CHARSET, ACCEPT_ENCODING, ACCEPT_LANGUAGE, ALLOW, AUTHORIZATION, CACHE_CONTROL, CONTENT_DISPOSITION, CONTENT_ENCODING, CONTENT_ID, CONTENT_LANGUAGE, CONTENT_LENGTH, CONTENT_LOCATION, CONTENT_TYPE, COOKIE, DATE, ETAG, EXPIRES, HOST, IF_MATCH, IF_MODIFIED_SINCE, IF_NONE_MATCH, IF_UNMODIFIED_SINCE, LAST_EVENT_ID_HEADER, LAST_MODIFIED, LINK, LOCATION, RETRY_AFTER, SET_COOKIE, USER_AGENT, VARY, WWW_AUTHENTICATE| Modifier | Constructor and Description |
|---|---|
|
ClientRequest(ClientRequest original)
Copy constructor.
|
protected |
ClientRequest(URI requestUri,
ClientConfig clientConfig,
org.glassfish.jersey.internal.PropertiesDelegate propertiesDelegate)
Create new Jersey client request context.
|
| Modifier and Type | Method and Description |
|---|---|
void |
abortWith(Response response)
Abort the filter chain with a response.
|
void |
accept(MediaType... types)
Add new accepted types to the message headers.
|
void |
accept(String... types)
Add new accepted types to the message headers.
|
void |
acceptLanguage(Locale... locales)
Add new accepted languages to the message headers.
|
void |
acceptLanguage(String... locales)
Add new accepted languages to the message headers.
|
void |
cacheControl(CacheControl cacheControl)
Add new cache control entry to the message headers.
|
void |
cookie(Cookie cookie)
Add new cookie to the message headers.
|
void |
enableBuffering()
Enable a buffering of serialized entity.
|
void |
encoding(String encoding)
Set message encoding.
|
Response |
getAbortResponse()
Get the request filter chain aborting response if set, or
null otherwise. |
JerseyClient |
getClient()
Get the client instance associated with the request.
|
Configuration |
getConfiguration()
The related client/server side
Configuration. |
Map<String,Cookie> |
getCookies()
Get any cookies that accompanied the request.
|
org.glassfish.jersey.internal.inject.InjectionManager |
getInjectionManager()
Get injection manager.
|
String |
getMethod()
Get the request method.
|
Object |
getProperty(String name)
Returns the property with the given name registered in the current request/response exchange context, or
null
if there is no property by that name. |
Collection<String> |
getPropertyNames()
Returns an immutable
collection containing the property names available within the context of the
current request/response exchange context. |
Iterable<ReaderInterceptor> |
getReaderInterceptors()
Get reader interceptors of this request.
|
List<String> |
getRequestHeader(String name)
Get the values of a HTTP request header.
|
MultivaluedMap<String,String> |
getRequestHeaders()
Get the values of HTTP request headers.
|
URI |
getUri()
Get the request URI.
|
MessageBodyWorkers |
getWorkers()
Get the message body workers associated with the request.
|
Iterable<WriterInterceptor> |
getWriterInterceptors()
Get writer interceptors of this request.
|
boolean |
ignoreUserAgent()
Indicates whether the User-Agent header should be omitted if not directly set to the map of headers.
|
void |
ignoreUserAgent(boolean ignore)
Indicates whether the User-Agent header should be omitted if not directly set to the map of headers.
|
boolean |
isAsynchronous()
Returns true if the request is called asynchronously using
AsyncInvoker |
void |
language(Locale language)
Set message language.
|
void |
language(String language)
Set message language.
|
void |
removeProperty(String name)
Removes a property with the given name from the current request/response exchange context.
|
<T> T |
resolveProperty(String name,
Class<T> type)
Resolve a property value for the specified property
name. |
<T> T |
resolveProperty(String name,
T defaultValue)
Resolve a property value for the specified property
name. |
void |
setMethod(String method)
Set the request method.
|
void |
setProperty(String name,
Object object)
Binds an object to a given property name in the current request/response exchange context.
|
void |
setUri(URI uri)
Set a new request URI.
|
void |
setWorkers(MessageBodyWorkers workers)
Set the message body workers associated with the request.
|
void |
type(MediaType type)
Set message content type.
|
void |
type(String type)
Set message content type.
|
void |
variant(Variant variant)
Set message content variant (type, language and encoding).
|
void |
writeEntity()
Write (serialize) the entity set in this request into the
entity stream. |
close, commitStream, enableBuffering, getAcceptableLanguages, getAcceptableMediaTypes, getAllowedMethods, getDate, getEntity, getEntityAnnotations, getEntityClass, getEntityStream, getEntityTag, getEntityType, getHeaders, getHeaderString, getLanguage, getLastModified, getLength, getLengthLong, getLink, getLinkBuilder, getLinks, getLocation, getMediaType, getRequestCookies, getResponseCookies, getStringHeaders, hasEntity, hasLink, isCommitted, replaceHeaders, setEntity, setEntity, setEntity, setEntity, setEntityAnnotations, setEntityStream, setEntityType, setMediaType, setStreamProviderclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetAcceptableLanguages, getAcceptableMediaTypes, getDate, getEntity, getEntityAnnotations, getEntityClass, getEntityStream, getEntityType, getHeaders, getHeaderString, getLanguage, getMediaType, getStringHeaders, hasEntity, setEntity, setEntity, setEntityStreamgetAcceptableLanguages, getAcceptableMediaTypes, getDate, getHeaderString, getLanguage, getLength, getMediaTypeprotected ClientRequest(URI requestUri, ClientConfig clientConfig, org.glassfish.jersey.internal.PropertiesDelegate propertiesDelegate)
requestUri - request Uri.clientConfig - request configuration.propertiesDelegate - properties delegate.public ClientRequest(ClientRequest original)
original - original instance.public <T> T resolveProperty(String name, Class<T> type)
name.
The method returns the value of the property registered in the request-specific
property bag, if available. If no property for the given property name is found
in the request-specific property bag, the method looks at the properties stored
in the global client-runtime configuration this request
belongs to. If there is a value defined in the client-runtime configuration,
it is returned, otherwise the method returns null if no such property is
registered neither in the client runtime nor in the request-specific property bag.
T - property Java type.name - property name.type - expected property class type.null if no such property is registered.public <T> T resolveProperty(String name, T defaultValue)
name.
The method returns the value of the property registered in the request-specific
property bag, if available. If no property for the given property name is found
in the request-specific property bag, the method looks at the properties stored
in the global client-runtime configuration this request
belongs to. If there is a value defined in the client-runtime configuration,
it is returned, otherwise the method returns defaultValue if no such property is
registered neither in the client runtime nor in the request-specific property bag.
T - property Java type.name - property name.defaultValue - default value to return if the property is not registered.defaultValue if no such property is registered.public Object getProperty(String name)
ClientRequestContextnull
if there is no property by that name.
A property allows a JAX-RS filters and interceptors to exchange additional custom information not already provided by this interface.
A list of supported properties can be retrieved using ClientRequestContext.getPropertyNames(). Custom property names should
follow the same convention as package names.
getProperty in interface ClientRequestContextname - a String specifying the name of the property.Object containing the value of the property, or null if no property exists matching the
given name.ClientRequestContext.getPropertyNames()public Collection<String> getPropertyNames()
ClientRequestContextcollection containing the property names available within the context of the
current request/response exchange context.
Use the ClientRequestContext.getProperty(java.lang.String) method with a property name to get the value of a property.
getPropertyNames in interface ClientRequestContextcollection of property names.ClientRequestContext.getProperty(java.lang.String)public void setProperty(String name, Object object)
ClientRequestContextA property allows a JAX-RS filters and interceptors to exchange additional custom information not already provided by this interface.
A list of supported properties can be retrieved using ClientRequestContext.getPropertyNames(). Custom property names should
follow the same convention as package names.
If a null value is passed, the effect is the same as calling the ClientRequestContext.removeProperty(String) method.
setProperty in interface ClientRequestContextname - a String specifying the name of the property.object - an Object representing the property to be bound.public void removeProperty(String name)
ClientRequestContextClientRequestContext.getProperty(java.lang.String) to retrieve the property value will return null.removeProperty in interface ClientRequestContextname - a String specifying the name of the property to be removed.public URI getUri()
ClientRequestContextgetUri in interface ClientRequestContextpublic void setUri(URI uri)
ClientRequestContextsetUri in interface ClientRequestContexturi - new request URI.public String getMethod()
ClientRequestContextgetMethod in interface ClientRequestContextHttpMethodpublic void setMethod(String method)
ClientRequestContextsetMethod in interface ClientRequestContextmethod - new request method.HttpMethodpublic JerseyClient getClient()
ClientRequestContextgetClient in interface ClientRequestContextpublic void abortWith(Response response)
ClientRequestContextabortWith in interface ClientRequestContextresponse - response to be sent back to the client.public Response getAbortResponse()
null otherwise.null otherwise.public Configuration getConfiguration()
org.glassfish.jersey.message.internal.OutboundMessageContextConfiguration. Can be null.getConfiguration in interface ClientRequestContextgetConfiguration in class org.glassfish.jersey.message.internal.OutboundMessageContextConfiguration the configurationpublic List<String> getRequestHeader(String name)
HttpHeadersgetRequestHeaders().get(name).getRequestHeader in interface HttpHeadersname - the header name, case insensitive.public MultivaluedMap<String,String> getRequestHeaders()
HttpHeadersnull.getRequestHeaders in interface HttpHeaderspublic Map<String,Cookie> getCookies()
ClientRequestContextgetCookies in interface ClientRequestContextgetCookies in interface HttpHeadersCookie.public MessageBodyWorkers getWorkers()
public void setWorkers(MessageBodyWorkers workers)
workers - message body workers.public void accept(MediaType... types)
types - accepted types to be added.public void accept(String... types)
types - accepted types to be added.public void acceptLanguage(Locale... locales)
locales - accepted languages to be added.public void acceptLanguage(String... locales)
locales - accepted languages to be added.public void cookie(Cookie cookie)
cookie - cookie to be added.public void cacheControl(CacheControl cacheControl)
cacheControl - cache control entry to be added.public void encoding(String encoding)
encoding - message encoding to be set.public void language(String language)
language - message language to be set.public void language(Locale language)
language - message language to be set.public void type(MediaType type)
type - message content type to be set.public void type(String type)
type - message content type to be set.public void variant(Variant variant)
variant - message content content variant (type, language and encoding)
to be set.public boolean isAsynchronous()
AsyncInvokerpublic void enableBuffering()
CommonProperties.OUTBOUND_CONTENT_LENGTH_BUFFER.
The buffering functionality is by default disabled and could be enabled by calling this method. In this case
this method must be called before first bytes are written to the entity stream.public void writeEntity()
throws IOException
entity stream. The method
use writer interceptors and message body writer.
This method modifies the state of this request and therefore it can be called only once per request life cycle otherwise
IllegalStateException is thrown.
Note that OutboundMessageContext.setStreamProvider(org.glassfish.jersey.message.internal.OutboundMessageContext.StreamProvider)
and optionally enableBuffering() must be called before calling this method.IOException - In the case of IO error.public Iterable<WriterInterceptor> getWriterInterceptors()
public Iterable<ReaderInterceptor> getReaderInterceptors()
public org.glassfish.jersey.internal.inject.InjectionManager getInjectionManager()
org.glassfish.jersey.internal.inject.InjectionManagerSuppliergetInjectionManager in interface org.glassfish.jersey.internal.inject.InjectionManagerSupplierpublic boolean ignoreUserAgent()
true if the header should be omitted, false otherwise.public void ignoreUserAgent(boolean ignore)
ignore - true if the header should be omitted, false otherwise.Copyright © 2007-2020, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.