Class RestRequest
java.lang.Object
org.refcodes.web.AbstractHttpRequest
org.refcodes.web.HttpClientRequest
org.refcodes.rest.RestRequest
- All Implemented Interfaces:
HeaderFieldsAccessor<RequestHeaderFields>, HeaderFieldsAccessor.HeaderFieldsMutator<RequestHeaderFields>, HeaderFieldsAccessor.HeaderFieldsProperty<RequestHeaderFields>, HttpBodyAccessor.HttpBodyProvider<BadRequestException>, HttpMethodAccessor, HttpRequest, RedirectDepthAccessor, RedirectDepthAccessor.RedirectDepthMutator, RedirectDepthAccessor.RedirectDepthProperty, UrlAccessor
- Direct Known Subclasses:
RestRequestBuilder
public class RestRequest
extends HttpClientRequest
implements HeaderFieldsAccessor.HeaderFieldsProperty<RequestHeaderFields>
A
RestRequest describes a REST request and the RestResponse
providing the response. The RestRequest describes the
HttpMethod to be used, the targeted URL, the HeaderFields as
well as the Query-Fields and the request Object or
InputStream.-
Nested Class Summary
Nested classes/interfaces inherited from interface HeaderFieldsAccessor
HeaderFieldsAccessor.HeaderFieldsBuilder<T,B>, HeaderFieldsAccessor.HeaderFieldsMutator<T>, HeaderFieldsAccessor.HeaderFieldsProperty<T> Nested classes/interfaces inherited from interface HttpMethodAccessor
HttpMethodAccessor.HttpMethodBuilder<B>, HttpMethodAccessor.HttpMethodMutator, HttpMethodAccessor.HttpMethodPropertyNested classes/interfaces inherited from interface RedirectDepthAccessor
RedirectDepthAccessor.RedirectDepthBuilder<B>, RedirectDepthAccessor.RedirectDepthMutator, RedirectDepthAccessor.RedirectDepthPropertyNested classes/interfaces inherited from interface UrlAccessor
UrlAccessor.UrlBuilder, UrlAccessor.UrlMutator, UrlAccessor.UrlProperty -
Field Summary
Fields inherited from class HttpClientRequest
_mediaTypeFactoryLookup, DEFAULT_REDIRECT_DEPTHFields inherited from class AbstractHttpRequest
_headerFields, _httpMethod, _url -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedRestRequest(RestClient aRestClient) Instantiates a new rest request builder impl.protectedRestRequest(HttpMethod aHttpMethod, Url aUrl, int aRedirectDepth, RestClient aRestClient) Instantiates a new rest request builder impl.protectedRestRequest(HttpMethod aHttpMethod, Url aUrl, Object aRequest, int aRedirectDepth, RestClient aRestClient) Instantiates a new rest request builder impl.protectedRestRequest(HttpMethod aHttpMethod, Url aUrl, Object aRequest, RestClient aRestClient) Instantiates a new rest request builder impl.protectedRestRequest(HttpMethod aHttpMethod, Url aUrl, RestClient aRestClient) Instantiates a new rest request builder impl.protectedRestRequest(HttpMethod aHttpMethod, Url aUrl, RequestHeaderFields aHeaderFields, Object aRequest, int aRedirectDepth, RestClient aRestClient) Instantiates a new rest request builder impl.protectedRestRequest(HttpMethod aHttpMethod, Url aUrl, RequestHeaderFields aHeaderFields, Object aRequest, RestClient aRestClient) Instantiates a new rest request builder impl. -
Method Summary
Modifier and TypeMethodDescriptionbuild(RestClient aRestClient) This is a convenience method for easily instantiating the according builder.getUrl()voidsetHeaderFields(RequestHeaderFields aHeaderFields) Sends the request and returns synchronously the accordingRestResponse.toString()Methods inherited from class HttpClientRequest
getRedirectDepth, getRequest, setRedirectDepth, setRequest, toHttpBodyMethods inherited from class AbstractHttpRequest
getHeaderFieldsMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface HeaderFieldsAccessor
getHeaderFieldsMethods inherited from interface HeaderFieldsAccessor.HeaderFieldsProperty
letHeaderFieldsMethods inherited from interface RedirectDepthAccessor.RedirectDepthProperty
letRedirectDepth
-
Constructor Details
-
RestRequest
protected RestRequest(HttpMethod aHttpMethod, Url aUrl, RequestHeaderFields aHeaderFields, Object aRequest, RestClient aRestClient) Instantiates a new rest request builder impl.- Parameters:
aHttpMethod- the http methodaUrl- TheUrlfrom which to take the URL specific data.aHeaderFields- the Header-FieldsaRequest- the requestaRestClient- the rest client
-
RestRequest
Instantiates a new rest request builder impl.- Parameters:
aHttpMethod- the http methodaUrl- TheUrlfrom which to take the URL specific data.aRestClient- the rest client
-
RestRequest
Instantiates a new rest request builder impl.- Parameters:
aRestClient- the rest client
-
RestRequest
Instantiates a new rest request builder impl.- Parameters:
aHttpMethod- the http methodaUrl- TheUrlfrom which to take the URL specific data.aRequest- the requestaRestClient- the rest client
-
RestRequest
Instantiates a new rest request builder impl.- Parameters:
aHttpMethod- the http methodaUrl- TheUrlfrom which to take the URL specific data.aRedirectDepth- The redirect depth provides the count of HTTP-Request and HTTP-Response cycles where the response represents a redirect as ofHttpStatusCode.isRedirectStatus(). A value of -1 represents the default behavior, e.g. usingHttpURLConnection's redirection means.aRestClient- the rest client
-
RestRequest
protected RestRequest(HttpMethod aHttpMethod, Url aUrl, Object aRequest, int aRedirectDepth, RestClient aRestClient) Instantiates a new rest request builder impl.- Parameters:
aHttpMethod- the http methodaUrl- TheUrlfrom which to take the URL specific data.aRequest- the requestaRedirectDepth- The redirect depth provides the count of HTTP-Request and HTTP-Response cycles where the response represents a redirect as ofHttpStatusCode.isRedirectStatus(). A value of -1 represents the default behavior, e.g. usingHttpURLConnection's redirection means.aRestClient- the rest client
-
RestRequest
protected RestRequest(HttpMethod aHttpMethod, Url aUrl, RequestHeaderFields aHeaderFields, Object aRequest, int aRedirectDepth, RestClient aRestClient) Instantiates a new rest request builder impl.- Parameters:
aHttpMethod- the http methodaUrl- TheUrlfrom which to take the URL specific data.aHeaderFields- the Header-FieldsaRequest- the requestaRedirectDepth- The redirect depth provides the count of HTTP-Request and HTTP-Response cycles where the response represents a redirect as ofHttpStatusCode.isRedirectStatus(). A value of -1 represents the default behavior, e.g. usingHttpURLConnection's redirection means.aRestClient- the rest client
-
-
Method Details
-
build
This is a convenience method for easily instantiating the according builder.- Parameters:
aRestClient- the rest client- Returns:
- an instance (using a public implementation) of this builder
-
getUrl
- Specified by:
getUrlin interfaceUrlAccessor- Overrides:
getUrlin classAbstractHttpRequest
-
getHttpMethod
- Specified by:
getHttpMethodin interfaceHttpMethodAccessor- Overrides:
getHttpMethodin classAbstractHttpRequest
-
toString
- Overrides:
toStringin classHttpClientRequest
-
setHeaderFields
- Specified by:
setHeaderFieldsin interfaceHeaderFieldsAccessor.HeaderFieldsMutator<RequestHeaderFields>
-
toRestResponse
Sends the request and returns synchronously the accordingRestResponse.- Returns:
- the rest response
- Throws:
HttpResponseException- the http response exception
-