Class MockRestRequest
- All Implemented Interfaces:
AutoCloseable
,Configurable
,HttpUriRequest
,HttpMessage
,HttpRequest
RestRequest
with additional features for mocked testing.
Instances of this class are instantiated through methods on MockRestClient
such as MockRestClient.post(Object,Object)
Notes:
- This class is not thread safe.
See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.juneau.BeanSession
BeanSession.Builder
-
Constructor Summary
ModifierConstructorDescriptionprotected
MockRestRequest
(RestClient client, URI uri, String method, boolean hasBody) Constructs a REST call with the specified method name. -
Method Summary
Modifier and TypeMethodDescriptionSets the value for theAccept request header.acceptCharset
(String value) Sets the value for theAccept-Charset request header.Adds an attribute to the underlyingHttpServletRequest
object.attributes
(Map<String, Object> value) Replaces the attributes on the underlyingHttpServletRequest
object.Overrides the authorization type value on the underlyingHttpServletRequest
object.cancellable
(Cancellable cancellable) SetsCancellable
for the ongoing operation.characterEncoding
(String value) Overrides the character encoding value on the underlyingHttpServletRequest
object.config
(RequestConfig value) Sets the actual request configuration.Sets the body of this request.content
(Object input, HttpPartSchema schema) Sets the body of this request.contentString
(Object input) Sets the body of this request as straight text bypassing the serializer.contentType
(String value) Sets the value for theContent-Type request header.context
(HttpContext context) Override the context to use for the execution.contextPath
(String value) Overrides the context path on the underlyingHttpServletRequest
object.cookies
(jakarta.servlet.http.Cookie[] value) Overrides the cookies on the underlyingHttpServletRequest
object.debug()
SetsDebug: value header on this request.dispatcherType
(jakarta.servlet.DispatcherType value) Overrides the dispatcher type value on the underlyingHttpServletRequest
object.errorCodes
(Predicate<Integer> value) Allows you to override what status codes are considered error codes that would result in aRestCallException
.Adds a form-data parameter to the request body.formData
(NameValuePair... parts) Appends multiple form-data parameters to the request.formDataBean
(Object value) Appends multiple form-data parameters to the request from properties defined on a Java bean.formDataCustom
(Object value) Adds form-data parameters as the entire body of the request.formDataPairs
(String... pairs) Adds form-data parameters to the request body using free-form key/value pairs.Returns the attributes to add to the underlyingHttpServletRequest
object.Returns the authorization type value to set on the underlyingHttpServletRequest
object.Returns the value to set for the return value on the underlyingServletRequest.getCharacterEncoding()
method.Returns the context path to set on the underlyingHttpServletRequest
object.jakarta.servlet.http.Cookie[]
Returns the cookies to set on the underlyingHttpServletRequest
object.jakarta.servlet.DispatcherType
Returns the dispatcher type value to set on the underlyingHttpServletRequest
object.jakarta.servlet.http.HttpSession
Returns the HTTP session to set on the underlyingHttpServletRequest
object.Returns the local address value to set on the underlyingHttpServletRequest
object.Returns the locale to set on the underlyingHttpServletRequest
object.Returns the local name value to set on the underlyingHttpServletRequest
object.Returns the local port value to set on the underlyingHttpServletRequest
object.Returns the path-info value to set on the underlyingHttpServletRequest
object.Returns the path-translated value to set on the underlyingHttpServletRequest
object.Returns the HTTP protocol value to set on the underlyingHttpServletRequest
object.Returns the query string to set on the underlyingHttpServletRequest
object.Returns the remote address value to set on the underlyingHttpServletRequest
object.Returns the remote host value to set on the underlyingHttpServletRequest
object.Returns the remote port value to set on the underlyingHttpServletRequest
object.Returns the remote user to set on the underlyingHttpServletRequest
object.Returns the request dispatcher to set on the underlyingHttpServletRequest
obhject.Returns the requested session ID to set on the underlyingHttpServletRequest
object.Returns the request URI to set on the underlyingHttpServletRequest
object.String[]
getRoles()
Returns the user roles to set on the underlyingHttpServletRequest
object.Returns the HTTP schema value to set on the underlyingHttpServletRequest
object.Returns the server name value to set on the underlyingHttpServletRequest
object.Returns the server port value to set on the underlyingHttpServletRequest
object.jakarta.servlet.ServletContext
Returns the servlet context to set on the underlyingHttpServletRequest
object.Returns the servlet path to set on the underlyingHttpServletRequest
object.Returns the user principal to set on the underlyingHttpServletRequest
object.Appends a header to the request.Appends a header to the request.headerPairs
(String... pairs) Appends multiple headers to the request using freeform key/value pairs.Appends multiple headers to the request.headersBean
(Object value) Appends multiple headers to the request from properties defined on a Java bean.html()
Convenience method for specifying HTML as the marshalling transmission media type for this request only.htmlDoc()
Convenience method for specifying HTML DOC as the marshalling transmission media type for this request only.Convenience method for specifying Stripped HTML DOC as the marshalling transmission media type for this request only.httpSession
(jakarta.servlet.http.HttpSession value) Overrides the HTTP session on the underlyingHttpServletRequest
object.PreventRestCallExceptions
from being thrown when HTTP status 400+ is encountered.interceptors
(RestCallInterceptor... interceptors) Add one or more interceptors for this call only.json()
Convenience method for specifying JSON as the marshalling transmission media type for this request only.json5()
Convenience method for specifying Simplified JSON as the marshalling transmission media type for this request only.Overrides the local address value on the underlyingHttpServletRequest
object.Overrides the locale on the underlyingHttpServletRequest
object.Overrides the local name value on the underlyingHttpServletRequest
object.localPort
(int value) Overrides the local port value on the underlyingHttpServletRequest
object.Shortcut for setting theAccept andContent-Type headers on a request.msgPack()
Convenience method for specifying MessagePack as the marshalling transmission media type for this request only.noTrace()
When called,No-Trace: true is added to requests.openApi()
Convenience method for specifying OpenAPI as the marshalling transmission media type for this request only.Specifies the parser to use on the response body.Specifies the parser to use on the response body.Sets or replaces a path parameter of the form"{name}" in the URI.pathData
(NameValuePair... parts) Sets or replaces multiple path parameters on the request.pathDataBean
(Object value) Sets multiple path parameters to the request from properties defined on a Java bean.pathDataPairs
(String... pairs) Replaces path parameters of the form"{name}" in the URI using free-form key/value pairs.Overrides the path-info value on the underlyingHttpServletRequest
object.pathTranslated
(String value) Overrides the path-translated value on the underlyingHttpServletRequest
object.Convenience method for specifying Plain Text as the marshalling transmission media type for this request only.Overrides the HTTP protocol value on the underlyingHttpServletRequest
object.protocolVersion
(ProtocolVersion version) Sets the protocol version for this request.queryCustom
(Object value) Adds a free-form custom query.Appends a query parameter to the URI of the request.queryData
(NameValuePair... parts) Appends multiple query parameters to the request.queryDataBean
(Object value) Appends multiple query parameters to the request from properties defined on a Java bean.queryDataPairs
(String... pairs) Adds query parameters to the URI query using free-form key/value pairs..queryString
(String value) Overrides the query string on the underlyingHttpServletRequest
object.remoteAddr
(String value) Overrides the remote address value on the underlyingHttpServletRequest
object.remoteHost
(String value) Overrides the remote host value on the underlyingHttpServletRequest
object.remotePort
(int value) Overrides the remote port value on the underlyingHttpServletRequest
object.remoteUser
(String value) Overrides the remote user on the underlyingHttpServletRequest
object.requestDispatcher
(String path, jakarta.servlet.RequestDispatcher value) Overrides the request dispatcher on the underlyingHttpServletRequest
object.requestedSessionId
(String value) Overrides the requested session ID on the underlyingHttpServletRequest
object.requestURI
(String value) Overrides the request URI on the underlyingHttpServletRequest
object.Rethrow any of the specified exception types if a matchingException-Name header is found.Specifies the value for the security roles on the underlyingHttpServletRequest
object.Specifies the user roles on the underlyingHttpServletRequest
object.serializer
(Class<? extends Serializer> serializer) Specifies the serializer to use on the request body.serializer
(Serializer serializer) Specifies the serializer to use on the request body.serverName
(String value) Overrides the server name value on the underlyingHttpServletRequest
object.serverPort
(int value) Overrides the server port value on the underlyingHttpServletRequest
object.servletContext
(jakarta.servlet.ServletContext value) Overrides the servlet context on the underlyingHttpServletRequest
object.servletPath
(String value) Overrides the servlet path on the underlyingHttpServletRequest
object.Causes logging to be suppressed for the duration of this request.Specifies the target host for the request.uon()
Convenience method for specifying UON as the marshalling transmission media type for this request only.Sets the URI for this request.uriFragment
(String fragment) Sets the URI fragment.Sets the URI host.uriPort
(int port) Sets the URI port.Overrides the HTTP schema value on the underlyingHttpServletRequest
object.uriUserInfo
(String userInfo) Sets the URI user info.uriUserInfo
(String username, String password) Sets the URI user info.urlEnc()
Convenience method for specifying URL-Encoding as the marshalling transmission media type for this request only.userPrincipal
(Principal value) Overrides the user principal on the underlyingHttpServletRequest
object.xml()
Convenience method for specifying XML as the marshalling transmission media type for this request only.Methods inherited from class org.apache.juneau.rest.client.RestRequest
abort, addHeader, addHeader, close, complete, completed, completeFuture, containsHeader, createHeader, createInnerRequest, createPart, getAllHeaders, getConfig, getFirstHeader, getFormData, getHeaders, getHeaders, getHttpEntity, getLastHeader, getMethod, getParams, getPathData, getProtocolVersion, getQueryData, getRequestLine, getResponse, getResponse, getResponseAsString, getURI, hasHttpEntity, headerIterator, headerIterator, isAborted, isDebug, log, log, properties, removeHeader, removeHeaders, run, runFuture, setHeader, setHeader, setHeaders, setParams
Methods inherited from class org.apache.juneau.BeanSession
_class, addWarning, convertToMemberType, convertToMemberType, convertToType, convertToType, convertToType, create, getArgsClassMeta, getBeanClassVisibility, getBeanConstructorVisibility, getBeanDictionary, getBeanFieldVisibility, getBeanMeta, getBeanMethodVisibility, getBeanRegistry, getBeanTypePropertyName, getBeanTypePropertyName, getClassMeta, getClassMeta, getClassMetaForObject, getClassMetaForObject, getMediaType, getNamePropertyName, getNotBeanClasses, getNotBeanPackagesNames, getNotBeanPackagesPrefixes, getPropertyNamer, getSwaps, getTimeZone, getTimeZoneId, isBean, isBean, isBeanMapPutReturnsOldValue, isBeansRequireDefaultConstructor, isBeansRequireSerializable, isBeansRequireSettersForGetters, isBeansRequireSomeProperties, isFindFluentSetters, isIgnoreInvocationExceptionsOnGetters, isIgnoreInvocationExceptionsOnSetters, isIgnoreMissingSetters, isIgnoreUnknownBeanProperties, isIgnoreUnknownNullBeanProperties, isSortProperties, isUseEnumNames, isUseInterfaceProxies, isUseJavaBeanIntrospector, newBean, newBean, newBeanMap, newBeanMap, newGenericMap, object, string, toArray, toBeanMap, toBeanMap, toBeanMap
Methods inherited from class org.apache.juneau.ContextSession
checkForWarnings, getContext, getSessionProperties, getWarnings, toString
-
Constructor Details
-
MockRestRequest
protected MockRestRequest(RestClient client, URI uri, String method, boolean hasBody) throws RestCallException Constructs a REST call with the specified method name.- Parameters:
client
- The client that created this request.uri
- The target URI.method
- The HTTP method name (uppercase).hasBody
- Whether this method has a body.- Throws:
RestCallException
- If an exception or non-200 response code occurred during the connection attempt.
-
-
Method Details
-
attribute
Adds an attribute to the underlyingHttpServletRequest
object.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
name
- The servlet request attribute name.value
- The servlet request attribute value.- Returns:
- This object.
-
attributes
Replaces the attributes on the underlyingHttpServletRequest
object.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new servlet attribute values.- Returns:
- This object.
-
getAttributeMap
Returns the attributes to add to the underlyingHttpServletRequest
object.- Returns:
- The attributes to add to the underlying
HttpServletRequest
object.
-
roles
Specifies the user roles on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.isUserInRole(String)
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
roles
- The roles to add to this request (e.g."ROLE_ADMIN" ).- Returns:
- This object.
-
getRoles
Returns the user roles to set on the underlyingHttpServletRequest
object.- Returns:
- The user roles to set on the underlying
HttpServletRequest
object.
-
role
Specifies the value for the security roles on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.isUserInRole(String)
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
role
- The role to add to this request (e.g."ROLE_ADMIN" ).- Returns:
- This object.
-
characterEncoding
Overrides the character encoding value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getCharacterEncoding()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getCharacterEncoding
Returns the value to set for the return value on the underlyingServletRequest.getCharacterEncoding()
method.- Returns:
- The value to set for the return value on the underlying
ServletRequest.getCharacterEncoding()
method.
-
protocol
Overrides the HTTP protocol value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getProtocol()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getProtocol
Returns the HTTP protocol value to set on the underlyingHttpServletRequest
object.- Returns:
- The HTTP protocol value to set on the underlying
HttpServletRequest
object.
-
uriScheme
Overrides the HTTP schema value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getScheme()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Overrides:
uriScheme
in classRestRequest
- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getScheme
Returns the HTTP schema value to set on the underlyingHttpServletRequest
object.- Returns:
- The HTTP schema value to set on the underlying
HttpServletRequest
object.
-
serverName
Overrides the server name value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getServerName()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getServerName
Returns the server name value to set on the underlyingHttpServletRequest
object.- Returns:
- The server name value to set on the underlying
HttpServletRequest
object.
-
serverPort
Overrides the server port value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getServerPort()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getServerPort
Returns the server port value to set on the underlyingHttpServletRequest
object.- Returns:
- The server port value to set on the underlying
HttpServletRequest
object.
-
remoteAddr
Overrides the remote address value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getRemoteAddr()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getRemoteAddr
Returns the remote address value to set on the underlyingHttpServletRequest
object.- Returns:
- The remote address value to set on the underlying
HttpServletRequest
object.
-
remoteHost
Overrides the remote host value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getRemoteHost()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getRemoteHost
Returns the remote host value to set on the underlyingHttpServletRequest
object.- Returns:
- The remote host value to set on the underlying
HttpServletRequest
object.
-
locale
Overrides the locale on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getLocale()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getLocale
Returns the locale to set on the underlyingHttpServletRequest
object.- Overrides:
getLocale
in classBeanSession
- Returns:
- The locale to set on the underlying
HttpServletRequest
object. - See Also:
-
remotePort
Overrides the remote port value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getRemotePort()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getRemotePort
Returns the remote port value to set on the underlyingHttpServletRequest
object.- Returns:
- The remote port value to set on the underlying
HttpServletRequest
object.
-
localName
Overrides the local name value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getLocalName()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getLocalName
Returns the local name value to set on the underlyingHttpServletRequest
object.- Returns:
- The local name value to set on the underlying
HttpServletRequest
object.
-
localAddr
Overrides the local address value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getLocalAddr()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getLocalAddr
Returns the local address value to set on the underlyingHttpServletRequest
object.- Returns:
- The local address value to set on the underlying
HttpServletRequest
object.
-
localPort
Overrides the local port value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getLocalPort()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getLocalPort
Returns the local port value to set on the underlyingHttpServletRequest
object.- Returns:
- The local port value to set on the underlying
HttpServletRequest
object.
-
requestDispatcher
Overrides the request dispatcher on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getRequestDispatcher(String)
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
path
- The path to the resource being resolved.value
- The new value for this setting.- Returns:
- This object.
-
getRequestDispatcherMap
Returns the request dispatcher to set on the underlyingHttpServletRequest
obhject.- Returns:
- The value of the
requestDispatcherMap property on this bean, ornull if it is not set.
-
servletContext
Overrides the servlet context on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getServletContext()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getServletContext
Returns the servlet context to set on the underlyingHttpServletRequest
object.- Returns:
- The servlet context to set on the underlying
HttpServletRequest
object.
-
dispatcherType
Overrides the dispatcher type value on the underlyingHttpServletRequest
object.Affects the results of calling
ServletRequest.getDispatcherType()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getDispatcherType
Returns the dispatcher type value to set on the underlyingHttpServletRequest
object.- Returns:
- The dispatcher type value to set on the underlying
HttpServletRequest
object.
-
authType
Overrides the authorization type value on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getAuthType()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getAuthType
Returns the authorization type value to set on the underlyingHttpServletRequest
object.- Returns:
- The authorization type value to set on the underlying
HttpServletRequest
object.
-
cookies
Overrides the cookies on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getCookies()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getCookies
Returns the cookies to set on the underlyingHttpServletRequest
object.- Returns:
- The cookies to set on the underlying
HttpServletRequest
object.
-
pathInfo
Overrides the path-info value on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getPathInfo()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getPathInfo
Returns the path-info value to set on the underlyingHttpServletRequest
object.- Returns:
- The path-info value to set on the underlying
HttpServletRequest
object.
-
pathTranslated
Overrides the path-translated value on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getPathTranslated()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getPathTranslated
Returns the path-translated value to set on the underlyingHttpServletRequest
object.- Returns:
- The path-translated value to set on the underlying
HttpServletRequest
object.
-
contextPath
Overrides the context path on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getContextPath()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getContextPath
Returns the context path to set on the underlyingHttpServletRequest
object.- Returns:
- The context path to set on the underlying
HttpServletRequest
object.
-
queryString
Overrides the query string on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getQueryString()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getQueryString
Returns the query string to set on the underlyingHttpServletRequest
object.- Returns:
- The query string to set on the underlying
HttpServletRequest
object.
-
remoteUser
Overrides the remote user on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getRemoteUser()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getRemoteUser
Returns the remote user to set on the underlyingHttpServletRequest
object.- Returns:
- The remote user to set on the underlying
HttpServletRequest
object.
-
userPrincipal
Overrides the user principal on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getUserPrincipal()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getUserPrincipal
Returns the user principal to set on the underlyingHttpServletRequest
object.- Returns:
- The user principal to set on the underlying
HttpServletRequest
object.
-
requestedSessionId
Overrides the requested session ID on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getRequestedSessionId()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getRequestedSessionId
Returns the requested session ID to set on the underlyingHttpServletRequest
object.- Returns:
- The requested session ID to set on the underlying
HttpServletRequest
object.
-
requestURI
Overrides the request URI on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getRequestURI()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getRequestURI
Returns the request URI to set on the underlyingHttpServletRequest
object.- Returns:
- The request URI to set on the underlying
HttpServletRequest
object.
-
servletPath
Overrides the servlet path on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getServletPath()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getServletPath
Returns the servlet path to set on the underlyingHttpServletRequest
object.- Returns:
- The servlet path to set on the underlying
HttpServletRequest
object.
-
httpSession
Overrides the HTTP session on the underlyingHttpServletRequest
object.Affects the results of calling
HttpServletRequest.getSession()
.This value gets copied to the servlet request after the call to
HttpClientConnection.sendRequestHeader(HttpRequest)
and right beforeHttpClientConnection.sendRequestEntity(HttpEntityEnclosingRequest)
.- Parameters:
value
- The new value for this setting.- Returns:
- This object.
-
getHttpSession
Returns the HTTP session to set on the underlyingHttpServletRequest
object.- Returns:
- The HTTP session to set on the underlying
HttpServletRequest
object.
-
accept
Description copied from class:RestRequest
Sets the value for theAccept request header.This overrides the media type specified on the parser, but is overridden by calling
header(
"Accept" , value);- Overrides:
accept
in classRestRequest
- Parameters:
value
- The new header value.- Returns:
- This object.
- Throws:
RestCallException
- Invalid input.
-
acceptCharset
Description copied from class:RestRequest
Sets the value for theAccept-Charset request header.This is a shortcut for calling
header(
"Accept-Charset" , value);- Overrides:
acceptCharset
in classRestRequest
- Parameters:
value
- The new header value.- Returns:
- This object.
- Throws:
RestCallException
- Invalid input.
-
cancellable
Description copied from class:RestRequest
SetsCancellable
for the ongoing operation.- Overrides:
cancellable
in classRestRequest
- Parameters:
cancellable
- The cancellable object.- Returns:
- This object.
-
config
Description copied from class:RestRequest
Sets the actual request configuration.- Overrides:
config
in classRestRequest
- Parameters:
value
- The new value.- Returns:
- This object.
-
content
Description copied from class:RestRequest
Sets the body of this request.- Overrides:
content
in classRestRequest
- Parameters:
value
- The input to be sent to the REST resource (only valid for PUT/POST/PATCH) requests.
Can be of the following types:-
Reader
- Raw contents ofReader
will be serialized to remote resource. -
InputStream
- Raw contents ofInputStream
will be serialized to remote resource. -
HttpResource
- Raw contents will be serialized to remote resource. Additional headers and media type will be set on request. -
HttpEntity
/BasicHttpEntity
- Bypass Juneau serialization and pass HttpEntity directly to HttpClient. -
Object
- POJO to be converted to text using theSerializer
registered with theRestClient
. -
PartList
- Converted to a URL-encoded FORM post. -
A
Supplier
of anything on this list.
-
- Returns:
- This object.
-
content
Description copied from class:RestRequest
Sets the body of this request.- Overrides:
content
in classRestRequest
- Parameters:
input
- The input to be sent to the REST resource (only valid for PUT/POST/PATCH) requests.
Can be of the following types:-
Reader
- Raw contents ofReader
will be serialized to remote resource. -
InputStream
- Raw contents ofInputStream
will be serialized to remote resource. -
HttpResource
- Raw contents will be serialized to remote resource. Additional headers and media type will be set on request. -
HttpEntity
/BasicHttpEntity
- Bypass Juneau serialization and pass HttpEntity directly to HttpClient. -
Object
- POJO to be converted to text using theSerializer
registered with theRestClient
. -
PartList
- Converted to a URL-encoded FORM post. -
A
Supplier
of anything on this list.
-
schema
- The schema object that defines the format of the output.- If
null , defaults toHttpPartSchema.DEFAULT
. - Only used if serializer is schema-aware (e.g.
OpenApiSerializer
).
- If
- Returns:
- This object.
-
contentString
Description copied from class:RestRequest
Sets the body of this request as straight text bypassing the serializer.client .put("/foo" ) .content(new StringReader("foo" )) .contentType("text/foo" ) .run();client .put("/foo" ) .bodyString("foo" ) .run();Note that this is different than the following which will serialize
foo as a JSON string"foo" .client .put("/foo" ) .json() .content("foo" ) .run();- Overrides:
contentString
in classRestRequest
- Parameters:
input
- The input to be sent to the REST resource (only valid for PUT/POST/PATCH) requests.- Returns:
- This object.
- Throws:
RestCallException
- If a retry was attempted, but the entity was not repeatable.
-
contentType
Description copied from class:RestRequest
Sets the value for theContent-Type request header.This overrides the media type specified on the serializer, but is overridden by calling
header(
"Content-Type" , value);- Overrides:
contentType
in classRestRequest
- Parameters:
value
- The new header value.- Returns:
- This object.
- Throws:
RestCallException
- Invalid input.
-
context
Description copied from class:RestRequest
Override the context to use for the execution.- Overrides:
context
in classRestRequest
- Parameters:
context
- The context to use for the execution, ornull to use the default context.- Returns:
- This object.
-
debug
Description copied from class:RestRequest
SetsDebug: value header on this request.- Overrides:
debug
in classRestRequest
- Returns:
- This object.
- Throws:
RestCallException
- Invalid input.
-
errorCodes
Description copied from class:RestRequest
Allows you to override what status codes are considered error codes that would result in aRestCallException
.The default error code predicate is:
x -> x >= 400
.- Overrides:
errorCodes
in classRestRequest
- Parameters:
value
- The new predicate for calculating error codes.- Returns:
- This object.
-
formData
Description copied from class:RestRequest
Appends multiple form-data parameters to the request.Example:
// Appends two form-data parameters to the request. client .get(URI ) .formData( BasicStringPart.of ("foo" ,"bar" ), BasicBooleanPart.of ("baz" ,true ) ) .run();- Overrides:
formData
in classRestRequest
- Parameters:
parts
- The parameters to set.null values are ignored.- Returns:
- This object.
-
formData
Description copied from class:RestRequest
Adds a form-data parameter to the request body.Example:
// Adds form data parameter "foo=bar". client .formPost(URI ) .formData("foo" ,"bar" ) .run();- Overrides:
formData
in classRestRequest
- Parameters:
name
- The parameter name.value
- The parameter value.
Non-string values are converted to strings using theHttpPartSerializer
defined on the client.- Returns:
- This object.
-
formDataBean
Description copied from class:RestRequest
Appends multiple form-data parameters to the request from properties defined on a Java bean.Example:
public class MyFormData {public String getFooBar() {return "baz" ; }public Integer getQux() {return 123; } }// Appends form data "fooBar=baz&qux=123". client .get(URI ) .formDataBean(new MyFormData()) .run();- Overrides:
formDataBean
in classRestRequest
- Parameters:
value
- The bean containing the properties to set as form-data parameter values.- Returns:
- This object.
-
formDataCustom
Description copied from class:RestRequest
Adds form-data parameters as the entire body of the request.Example:
// Creates form data "foo=bar&baz=qux". client .formPost(URI ) .formDataCustom("foo=bar&baz=qux" ) .run();// Creates form data "foo=bar&baz=qux" using StringEntity. client .formPost(URI ) .formDataCustom(new StringEntity("foo=bar&baz=qux" ,"application/x-www-form-urlencoded" )) .run();// Creates form data "foo=bar&baz=qux" using StringEntity and body(). client .formPost(URI ) .content(new StringEntity("foo=bar&baz=qux" ,"application/x-www-form-urlencoded" )) .run();- Overrides:
formDataCustom
in classRestRequest
- Parameters:
value
- The parameter value.
Can be any of the following types:-
CharSequence
-
Reader
- Raw contents ofReader
will be serialized to remote resource. -
InputStream
- Raw contents ofInputStream
will be serialized to remote resource. -
HttpResource
- Raw contents will be serialized to remote resource. Additional headers and media type will be set on request. -
HttpEntity
/BasicHttpEntity
- Bypass Juneau serialization and pass HttpEntity directly to HttpClient. -
Object
- POJO to be converted to text using theSerializer
registered with theRestClient
. -
PartList
- Converted to a URL-encoded FORM post.
-
- Returns:
- This object.
-
formDataPairs
Description copied from class:RestRequest
Adds form-data parameters to the request body using free-form key/value pairs.Example:
// Creates form data "key1=val1&key2=val2". client .formPost(URI ) .formDataPairs("key1" ,"val1" ,"key2" ,"val2" ) .run();- Overrides:
formDataPairs
in classRestRequest
- Parameters:
pairs
- The form-data key/value pairs.- Values can be any POJO.
- Values converted to a string using the configured part serializer.
- Returns:
- This object.
- Throws:
RestCallException
- Invalid input.
-
header
Description copied from class:RestRequest
Appends a header to the request.Example:
// Adds header "Foo: bar". client .get(URI ) .header(Accept.TEXT_XML ) .run();- Overrides:
header
in classRestRequest
- Parameters:
part
- The parameter to set.null values are ignored.- Returns:
- This object.
-
header
Description copied from class:RestRequest
Appends a header to the request.Example:
// Adds header "Foo: bar". client .get(URI ) .header("Foo" ,"bar" ) .run();- Overrides:
header
in classRestRequest
- Parameters:
name
- The parameter name.value
- The parameter value.
Non-string values are converted to strings using theHttpPartSerializer
defined on the client.- Returns:
- This object.
-
headerPairs
Description copied from class:RestRequest
Appends multiple headers to the request using freeform key/value pairs.Example:
// Adds headers "Foo: bar" and "Baz: qux". client .get(URI ) .headerPairs("Foo" ,"bar" ,"Baz" ,"qux" ) .run();- Overrides:
headerPairs
in classRestRequest
- Parameters:
pairs
- The form-data key/value pairs.- Returns:
- This object.
-
headers
Description copied from class:RestRequest
Appends multiple headers to the request.Example:
// Appends two headers to the request. client .get(URI ) .headers( BasicHeader.of ("Foo" ,"bar" ), Accept.TEXT_XML ) .run();- Overrides:
headers
in classRestRequest
- Parameters:
parts
- The parameters to set.null values are ignored.- Returns:
- This object.
-
headersBean
Description copied from class:RestRequest
Appends multiple headers to the request from properties defined on a Java bean.Uses
PropertyNamerDUCS
for resolving the header names from property names.Example:
@Bean public class MyHeaders {public String getFooBar() {return "baz" ; }public Integer getQux() {return 123; } }// Appends headers "Foo-Bar: baz" and "Qux: 123". client .get(URI ) .headersBean(new MyHeaders()) .run();- Overrides:
headersBean
in classRestRequest
- Parameters:
value
- The bean containing the properties to set as header values.- Returns:
- This object.
-
html
Description copied from class:RestRequest
Convenience method for specifying HTML as the marshalling transmission media type for this request only.POJOs are converted to HTML without any sort of doc wrappers.
HtmlSerializer
will be used to serialize POJOs to request bodies unless overridden per request viaRestRequest.serializer(Serializer)
.- The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
HtmlParser
will be used to parse POJOs from response bodies unless overridden per request viaRestRequest.parser(Parser)
.- The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
Accept request header will be set to"text/html" unless overridden byRestRequest.header(String,Object)
orRestRequest.accept(String)
.Content-Type request header will be set to"text/html" unless overridden byRestRequest.header(String,Object)
orRestRequest.contentType(String)
.Identical to calling
serializer(HtmlSerializer. .class ).parser(HtmlParser.class )- Overrides:
html
in classRestRequest
- Returns:
- This object.
- The serializer can be configured using any of the serializer property setters (e.g.
-
htmlDoc
Description copied from class:RestRequest
Convenience method for specifying HTML DOC as the marshalling transmission media type for this request only.POJOs are converted to fully renderable HTML pages.
HtmlDocSerializer
will be used to serialize POJOs to request bodies unless overridden per request viaRestRequest.serializer(Serializer)
.- The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
HtmlParser
will be used to parse POJOs from response bodies unless overridden per request viaRestRequest.parser(Parser)
.- The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
Accept request header will be set to"text/html" unless overridden byRestRequest.header(String,Object)
orRestRequest.accept(String)
.Content-Type request header will be set to"text/html" unless overridden byRestRequest.header(String,Object)
orRestRequest.contentType(String)
.Identical to calling
serializer(HtmlDocSerializer. .class ).parser(HtmlParser.class )- Overrides:
htmlDoc
in classRestRequest
- Returns:
- This object.
- The serializer can be configured using any of the serializer property setters (e.g.
-
htmlStrippedDoc
Description copied from class:RestRequest
Convenience method for specifying Stripped HTML DOC as the marshalling transmission media type for this request only.Same as
RestRequest.htmlDoc()
but without the header and body tags and page title and description.HtmlStrippedDocSerializer
will be used to serialize POJOs to request bodies unless overridden per request viaRestRequest.serializer(Serializer)
.- The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
HtmlParser
will be used to parse POJOs from response bodies unless overridden per request viaRestRequest.parser(Parser)
.- The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
Accept request header will be set to"text/html+stripped" unless overridden byRestRequest.header(String,Object)
orRestRequest.accept(String)
.Content-Type request header will be set to"text/html+stripped" unless overridden byRestRequest.header(String,Object)
orRestRequest.contentType(String)
.Identical to calling
serializer(HtmlStrippedDocSerializer. .class ).parser(HtmlParser.class )- Overrides:
htmlStrippedDoc
in classRestRequest
- Returns:
- This object.
- The serializer can be configured using any of the serializer property setters (e.g.
-
ignoreErrors
Description copied from class:RestRequest
PreventRestCallExceptions
from being thrown when HTTP status 400+ is encountered.This overrides the
ignoreErrors property on the client.- Overrides:
ignoreErrors
in classRestRequest
- Returns:
- This object.
-
interceptors
Description copied from class:RestRequest
Add one or more interceptors for this call only.- Overrides:
interceptors
in classRestRequest
- Parameters:
interceptors
- The interceptors to add to this call.- Returns:
- This object.
- Throws:
RestCallException
- If init method on interceptor threw an exception.
-
json
Description copied from class:RestRequest
Convenience method for specifying JSON as the marshalling transmission media type for this request only.JsonSerializer
will be used to serialize POJOs to request bodies unless overridden per request viaRestRequest.serializer(Serializer)
.- The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
JsonParser
will be used to parse POJOs from response bodies unless overridden per request viaRestRequest.parser(Parser)
.- The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
Accept request header will be set to"application/json" unless overridden byRestRequest.header(String,Object)
orRestRequest.accept(String)
.Content-Type request header will be set to"application/json" unless overriddenRestRequest.header(String,Object)
orRestRequest.contentType(String)
.Identical to calling
serializer(JsonSerializer. .class ).parser(JsonParser.class )- Overrides:
json
in classRestRequest
- Returns:
- This object.
- The serializer can be configured using any of the serializer property setters (e.g.
-
mediaType
Description copied from class:RestRequest
Shortcut for setting theAccept andContent-Type headers on a request.- Overrides:
mediaType
in classRestRequest
- Parameters:
value
- The new header values.- Returns:
- This object.
- Throws:
RestCallException
- Invalid input.
-
msgPack
Description copied from class:RestRequest
Convenience method for specifying MessagePack as the marshalling transmission media type for this request only.MessagePack is a binary equivalent to JSON that takes up considerably less space than JSON.
MsgPackSerializer
will be used to serialize POJOs to request bodies unless overridden per request viaRestRequest.serializer(Serializer)
.- The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
MsgPackParser
will be used to parse POJOs from response bodies unless overridden per request viaRestRequest.parser(Parser)
.- The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
Accept request header will be set to"octal/msgpack" unless overridden byRestRequest.header(String,Object)
orRestRequest.accept(String)
.Content-Type request header will be set to"octal/msgpack" unless overridden byRestRequest.header(String,Object)
orRestRequest.contentType(String)
.Identical to calling
serializer(MsgPackSerializer. .class ).parser(MsgPackParser.class )- Overrides:
msgPack
in classRestRequest
- Returns:
- This object.
- The serializer can be configured using any of the serializer property setters (e.g.
-
noTrace
Description copied from class:RestRequest
When called,No-Trace: true is added to requests.This gives the opportunity for the servlet to not log errors on invalid requests. This is useful for testing purposes when you don't want your log file to show lots of errors that are simply the results of testing.
- Overrides:
noTrace
in classRestRequest
- Returns:
- This object.
- Throws:
RestCallException
- Invalid input.
-
openApi
Description copied from class:RestRequest
Convenience method for specifying OpenAPI as the marshalling transmission media type for this request only.OpenAPI is a language that allows serialization to formats that use
HttpPartSchema
objects to describe their structure.OpenApiSerializer
will be used to serialize POJOs to request bodies unless overridden per request viaRestRequest.serializer(Serializer)
.- The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class. - Typically the
RestRequest.content(Object, HttpPartSchema)
method will be used to specify the body of the request with the schema describing it's structure.
OpenApiParser
will be used to parse POJOs from response bodies unless overridden per request viaRestRequest.parser(Parser)
.- The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class. - Typically the
ResponseContent.schema(HttpPartSchema)
method will be used to specify the structure of the response body.
Accept request header will be set to"text/openapi" unless overridden byRestRequest.header(String,Object)
orRestRequest.accept(String)
.Content-Type request header will be set to"text/openapi" unless overridden byRestRequest.header(String,Object)
orRestRequest.contentType(String)
.Identical to calling
serializer(OpenApiSerializer. .class ).parser(OpenApiParser.class )- Overrides:
openApi
in classRestRequest
- Returns:
- This object.
- The serializer can be configured using any of the serializer property setters (e.g.
-
parser
Description copied from class:RestRequest
Specifies the parser to use on the response body.Overrides the parsers specified on the
RestClient
.The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.If the
Accept header is not set on the request, it will be set to the media type of this parser.- Overrides:
parser
in classRestRequest
- Parameters:
parser
- The parser used to parse POJOs from the body of the HTTP response.- Returns:
- This object.
-
parser
Description copied from class:RestRequest
Specifies the parser to use on the response body.Overrides the parsers specified on the
RestClient
.The parser is not modified by any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.If the
Accept header is not set on the request, it will be set to the media type of this parser.- Overrides:
parser
in classRestRequest
- Parameters:
parser
- The parser used to parse POJOs from the body of the HTTP response.- Returns:
- This object.
-
pathData
Description copied from class:RestRequest
Sets or replaces multiple path parameters on the request.Example:
// Appends two path parameters to the request. client .get(URI ) .pathData( BasicStringPart.of ("foo" ,"bar" ), BasicBooleanPart.of ("baz" ,true ) ) .run();- Overrides:
pathData
in classRestRequest
- Parameters:
parts
- The parameters to set.null values are ignored.- Returns:
- This object.
-
pathData
Description copied from class:RestRequest
Sets or replaces a path parameter of the form"{name}" in the URI.Example:
// Sets path to "/bar". client .get("/{foo}" ) .pathData("foo" ,"bar" ) .run();- Overrides:
pathData
in classRestRequest
- Parameters:
name
- The parameter name.value
- The parameter value.
Non-string values are converted to strings using theHttpPartSerializer
defined on the client.- Returns:
- This object.
-
pathDataBean
Description copied from class:RestRequest
Sets multiple path parameters to the request from properties defined on a Java bean.Example:
public class MyPathVars {public String getFooBar() {return "baz" ; }public Integer getQux() {return 123; } }// Given path "/{fooBar}/{qux}/", gets converted to "/baz/123/". client .get(URI ) .pathDataBean(new MyPathVars()) .run();- Overrides:
pathDataBean
in classRestRequest
- Parameters:
value
- The bean containing the properties to set as path parameter values.- Returns:
- This object.
-
pathDataPairs
Description copied from class:RestRequest
Replaces path parameters of the form"{name}" in the URI using free-form key/value pairs.Example:
// Sets path to "/baz/qux". client .get("/{foo}/{bar}" ) .pathDataPairs("foo" ,"baz" ,"bar" ,"qux" ) .run();- Overrides:
pathDataPairs
in classRestRequest
- Parameters:
pairs
- The path key/value pairs.- Values can be any POJO.
- Values converted to a string using the configured part serializer.
- Returns:
- This object.
-
plainText
Description copied from class:RestRequest
Convenience method for specifying Plain Text as the marshalling transmission media type for this request only.Plain text marshalling typically only works on simple POJOs that can be converted to and from strings using swaps, swap methods, etc...
PlainTextSerializer
will be used to serialize POJOs to request bodies unless overridden per request viaRestRequest.serializer(Serializer)
.- The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
PlainTextParser
will be used to parse POJOs from response bodies unless overridden per request viaRestRequest.parser(Parser)
.- The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
Accept request header will be set to"text/plain" unless overridden byRestRequest.header(String,Object)
orRestRequest.accept(String)
.Content-Type request header will be set to"text/plain" unless overridden byRestRequest.header(String,Object)
orRestRequest.contentType(String)
.Identical to calling
serializer(PlainTextSerializer. .class ).parser(PlainTextParser.class )- Overrides:
plainText
in classRestRequest
- Returns:
- This object.
- The serializer can be configured using any of the serializer property setters (e.g.
-
protocolVersion
Description copied from class:RestRequest
Sets the protocol version for this request.- Overrides:
protocolVersion
in classRestRequest
- Parameters:
version
- The protocol version for this request.- Returns:
- This object.
-
queryCustom
Description copied from class:RestRequest
Adds a free-form custom query.Example:
// Adds query parameter "foo=bar&baz=qux". client .get(URI ) .queryCustom("foo=bar&baz=qux" ) .run();- Overrides:
queryCustom
in classRestRequest
- Parameters:
value
- The parameter value.
Can be any of the following types:-
CharSequence
-
Reader
- Raw contents ofReader
will be serialized to remote resource. -
InputStream
- Raw contents ofInputStream
will be serialized to remote resource. -
PartList
- Converted to a URL-encoded query.
-
- Returns:
- This object.
-
queryData
Description copied from class:RestRequest
Appends multiple query parameters to the request.Example:
// Appends two query parameters to the request. client .get(URI ) .queryData( BasicStringPart.of ("foo" ,"bar" ), BasicBooleanPart.of ("baz" ,true ) ) .run();- Overrides:
queryData
in classRestRequest
- Parameters:
parts
- The parameters to set.null values are ignored.- Returns:
- This object.
-
queryData
Description copied from class:RestRequest
Appends a query parameter to the URI of the request.Example:
// Adds query parameter "foo=bar". client .get(URI ) .queryData("foo" ,"bar" ) .run();- Overrides:
queryData
in classRestRequest
- Parameters:
name
- The parameter name.value
- The parameter value.
Non-string values are converted to strings using theHttpPartSerializer
defined on the client.- Returns:
- This object.
-
queryDataBean
Description copied from class:RestRequest
Appends multiple query parameters to the request from properties defined on a Java bean.Example:
public class MyQuery {public String getFooBar() {return "baz" ; }public Integer getQux() {return 123; } }// Appends query "fooBar=baz&qux=123". client .get(URI ) .queryDataBean(new MyQuery()) .run();- Overrides:
queryDataBean
in classRestRequest
- Parameters:
value
- The bean containing the properties to set as query parameter values.- Returns:
- This object.
-
queryDataPairs
Description copied from class:RestRequest
Adds query parameters to the URI query using free-form key/value pairs..Example:
// Adds query parameters "foo=bar&baz=qux". client .get(URI ) .queryDataPairs("foo" ,"bar" ,"baz" ,"qux" ) .run();- Overrides:
queryDataPairs
in classRestRequest
- Parameters:
pairs
- The query key/value pairs.- Values can be any POJO.
- Values converted to a string using the configured part serializer.
- Returns:
- This object.
- Throws:
RestCallException
- Invalid input.
-
rethrow
Description copied from class:RestRequest
Rethrow any of the specified exception types if a matchingException-Name header is found.Rethrown exceptions will be set on the caused-by exception of
RestCallException
when thrown from theRestRequest.run()
method.Can be called multiple times to append multiple rethrows.
- Overrides:
rethrow
in classRestRequest
- Parameters:
values
- The classes to rethrow.- Returns:
- This object.
-
serializer
Description copied from class:RestRequest
Specifies the serializer to use on the request body.Overrides the serializers specified on the
RestClient
.The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.If the
Content-Type header is not set on the request, it will be set to the media type of this serializer.- Overrides:
serializer
in classRestRequest
- Parameters:
serializer
- The serializer used to serialize POJOs to the body of the HTTP request.- Returns:
- This object.
-
serializer
Description copied from class:RestRequest
Specifies the serializer to use on the request body.Overrides the serializers specified on the
RestClient
.The serializer is not modified by an of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.If the
Content-Type header is not set on the request, it will be set to the media type of this serializer.- Overrides:
serializer
in classRestRequest
- Parameters:
serializer
- The serializer used to serialize POJOs to the body of the HTTP request.- Returns:
- This object.
-
json5
Description copied from class:RestRequest
Convenience method for specifying Simplified JSON as the marshalling transmission media type for this request only.Simplified JSON is typically useful for automated tests because you can do simple string comparison of results without having to escape lots of quotes.
Json5Serializer
will be used to serialize POJOs to request bodies unless overridden per request viaRestRequest.serializer(Serializer)
.- The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
Json5Parser
will be used to parse POJOs from response bodies unless overridden per request viaRestRequest.parser(Parser)
.- The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
Accept request header will be set to"application/json" unless overridden byRestRequest.header(String,Object)
orRestRequest.accept(String)
, or per-request viaRestRequest.header(String,Object)
orRestRequest.accept(String)
.Content-Type request header will be set to"application/json+simple" unless overridden byRestRequest.header(String,Object)
orRestRequest.contentType(String)
, or per-request viaRestRequest.header(String,Object)
orRestRequest.contentType(String)
.Can be combined with other marshaller setters such as
RestRequest.xml()
to provide support for multiple languages.- When multiple languages are supported, the
Accept andContent-Type headers control which marshallers are used, or uses the last-enabled language if the headers are not set.
Identical to calling
serializer(Json5Serializer. .class ).parser(Json5Parser.class )- Overrides:
json5
in classRestRequest
- Returns:
- This object.
- The serializer can be configured using any of the serializer property setters (e.g.
-
suppressLogging
Description copied from class:RestRequest
Causes logging to be suppressed for the duration of this request.Overrides the
RestRequest.debug()
setting on this request or client.- Overrides:
suppressLogging
in classRestRequest
- Returns:
- This object.
-
target
Description copied from class:RestRequest
Specifies the target host for the request.- Overrides:
target
in classRestRequest
- Parameters:
target
- The target host for the request. Implementations may acceptnull if they can still determine a route, for example to a default target or by inspecting the request.- Returns:
- This object.
-
uon
Description copied from class:RestRequest
Convenience method for specifying UON as the marshalling transmission media type for this request only.UON is Url-Encoding Object notation that is equivalent to JSON but suitable for transmission as URL-encoded query and form post values.
UonSerializer
will be used to serialize POJOs to request bodies unless overridden per request viaRestRequest.serializer(Serializer)
.- The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
UonParser
will be used to parse POJOs from response bodies unless overridden per request viaRestRequest.parser(Parser)
.- The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
Accept request header will be set to"text/uon" unless overridden byRestRequest.header(String,Object)
orRestRequest.accept(String)
.Content-Type request header will be set to"text/uon" unless overridden byRestRequest.header(String,Object)
orRestRequest.contentType(String)
.Identical to calling
serializer(UonSerializer. .class ).parser(UonParser.class )- Overrides:
uon
in classRestRequest
- Returns:
- This object.
- The serializer can be configured using any of the serializer property setters (e.g.
-
uri
Description copied from class:RestRequest
Sets the URI for this request.Can be any of the following types:
URI
URL
URIBuilder
- Anything else converted to a string using
Object.toString()
.
Relative URI strings will be interpreted as relative to the root URI defined on the client.
- Overrides:
uri
in classRestRequest
- Parameters:
uri
- The URI of the remote REST resource.
This overrides the URI passed in from the client.
Can be any of the following types:URIBuilder
URI
URL
String
Object
- Converted toString usingtoString()
- Returns:
- This object.
- Throws:
RestCallException
- Invalid URI syntax detected.
-
uriFragment
Description copied from class:RestRequest
Sets the URI fragment.- Overrides:
uriFragment
in classRestRequest
- Parameters:
fragment
- The URI fragment. The value is expected to be unescaped and may contain non ASCII characters.- Returns:
- This object.
-
uriHost
Description copied from class:RestRequest
Sets the URI host.- Overrides:
uriHost
in classRestRequest
- Parameters:
host
- The new URI host.- Returns:
- This object.
-
uriPort
Description copied from class:RestRequest
Sets the URI port.- Overrides:
uriPort
in classRestRequest
- Parameters:
port
- The new URI port.- Returns:
- This object.
-
uriUserInfo
Description copied from class:RestRequest
Sets the URI user info.- Overrides:
uriUserInfo
in classRestRequest
- Parameters:
userInfo
- The new URI user info.- Returns:
- This object.
-
uriUserInfo
Description copied from class:RestRequest
Sets the URI user info.- Overrides:
uriUserInfo
in classRestRequest
- Parameters:
username
- The new URI username.password
- The new URI password.- Returns:
- This object.
-
urlEnc
Description copied from class:RestRequest
Convenience method for specifying URL-Encoding as the marshalling transmission media type for this request only.UrlEncodingSerializer
will be used to serialize POJOs to request bodies unless overridden per request viaRestRequest.serializer(Serializer)
.- The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class. - This serializer is NOT used when using the
RestRequest.formData(String, Object)
(and related) methods for constructing the request body. Instead, the part serializer specified viaRestClient.Builder.partSerializer(Class)
is used.
UrlEncodingParser
will be used to parse POJOs from response bodies unless overridden per request viaRestRequest.parser(Parser)
.- The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
Accept request header will be set to"application/x-www-form-urlencoded" unless overridden byRestRequest.header(String,Object)
orRestRequest.accept(String)
.Content-Type request header will be set to"application/x-www-form-urlencoded" unless overridden byRestRequest.header(String,Object)
orRestRequest.contentType(String)
.Identical to calling
serializer(UrlEncodingSerializer. .class ).parser(UrlEncodingParser.class )- Overrides:
urlEnc
in classRestRequest
- Returns:
- This object.
- The serializer can be configured using any of the serializer property setters (e.g.
-
xml
Description copied from class:RestRequest
Convenience method for specifying XML as the marshalling transmission media type for this request only.XmlSerializer
will be used to serialize POJOs to request bodies unless overridden per request viaRestRequest.serializer(Serializer)
.- The serializer can be configured using any of the serializer property setters (e.g.
RestClient.Builder.sortCollections()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
XmlParser
will be used to parse POJOs from response bodies unless overridden per request viaRestRequest.parser(Parser)
.- The parser can be configured using any of the parser property setters (e.g.
RestClient.Builder.strict()
) or bean context property setters (e.g.RestClient.Builder.swaps(Class...)
) defined on this builder class.
Accept request header will be set to"text/xml" unless overridden byRestRequest.header(String,Object)
orRestRequest.accept(String)
.Content-Type request header will be set to"text/xml" unless overridden byRestRequest.header(String,Object)
orRestRequest.contentType(String)
.Identical to calling
serializer(XmlSerializer. .class ).parser(XmlParser.class )- Overrides:
xml
in classRestRequest
- Returns:
- This object.
- The serializer can be configured using any of the serializer property setters (e.g.
-