Class ApiRestRequest<T extends ApiRequest<T>>
- java.lang.Object
 - 
- io.helidon.integrations.common.rest.ApiRestRequest<T>
 
 
- 
- Type Parameters:
 T- type of the request
- All Implemented Interfaces:
 ApiRequest<T>
- Direct Known Subclasses:
 RestRequest
public abstract class ApiRestRequest<T extends ApiRequest<T>> extends Object implements ApiRequest<T>
Common base class for REST requests. This class acts as a mutable builder without a build method, as the intended use is to pass it to aio.helidon.integrations.common.rest.RestApi, not to send it around for parallel processing. Path is not a part of this request. 
- 
- 
Constructor Summary
Constructors Modifier Constructor Description protectedApiRestRequest()Default constructor. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TaddHeader(String name, String... value)Add an HTTP header.TaddQueryParam(String name, String... value)Add an HTTP query parameter.Map<String,List<String>>headers()Returns immutable configured headers.protected Tme()Can be returned by subclasses that can be subclassed again.Map<String,List<String>>queryParams()Returns immutable configured query parameters.Optional<String>requestId()Configured request ID.TrequestId(String requestId)Configure request ID for logging (and possibly to send over the network).Optional<MediaType>requestMediaType()Request media type.TrequestMediaType(MediaType mediaType)The media type header, defaults toMediaType.APPLICATION_JSONwhen JSON entity is present, toMediaType.APPLICATION_OCTET_STREAMfor publisher base requests, empty otherwise.Optional<MediaType>responseMediaType()Response media type.TresponseMediaType(MediaType mediaType)The accept header, defaults toMediaType.APPLICATION_JSONfor most requests, except for requests that return publisher, which default toMediaType.APPLICATION_OCTET_STREAM.- 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 
- 
Methods inherited from interface io.helidon.integrations.common.rest.ApiRequest
toJson 
 - 
 
 - 
 
- 
- 
Method Detail
- 
addHeader
public T addHeader(String name, String... value)
Add an HTTP header.- Specified by:
 addHeaderin interfaceApiRequest<T extends ApiRequest<T>>- Parameters:
 name- name of the headervalue- header value(s)- Returns:
 - updated request
 
 
- 
addQueryParam
public T addQueryParam(String name, String... value)
Add an HTTP query parameter.- Specified by:
 addQueryParamin interfaceApiRequest<T extends ApiRequest<T>>- Parameters:
 name- name of the parametervalue- parameter value(s)- Returns:
 - updated request
 
 
- 
requestMediaType
public T requestMediaType(MediaType mediaType)
Description copied from interface:ApiRequestThe media type header, defaults toMediaType.APPLICATION_JSONwhen JSON entity is present, toMediaType.APPLICATION_OCTET_STREAMfor publisher base requests, empty otherwise.- Specified by:
 requestMediaTypein interfaceApiRequest<T extends ApiRequest<T>>- Parameters:
 mediaType- media type of request- Returns:
 - updated request
 
 
- 
responseMediaType
public T responseMediaType(MediaType mediaType)
Description copied from interface:ApiRequestThe accept header, defaults toMediaType.APPLICATION_JSONfor most requests, except for requests that return publisher, which default toMediaType.APPLICATION_OCTET_STREAM.- Specified by:
 responseMediaTypein interfaceApiRequest<T extends ApiRequest<T>>- Parameters:
 mediaType- accepted media type- Returns:
 - updated request
 
 
- 
requestId
public T requestId(String requestId)
Description copied from interface:ApiRequestConfigure request ID for logging (and possibly to send over the network).- Specified by:
 requestIdin interfaceApiRequest<T extends ApiRequest<T>>- Parameters:
 requestId- request id- Returns:
 - updated request
 
 
- 
headers
public Map<String,List<String>> headers()
Description copied from interface:ApiRequestReturns immutable configured headers.- Specified by:
 headersin interfaceApiRequest<T extends ApiRequest<T>>- Returns:
 - headers configured for this request
 
 
- 
queryParams
public Map<String,List<String>> queryParams()
Description copied from interface:ApiRequestReturns immutable configured query parameters.- Specified by:
 queryParamsin interfaceApiRequest<T extends ApiRequest<T>>- Returns:
 - query parameters configured for this request
 
 
- 
requestMediaType
public Optional<MediaType> requestMediaType()
Description copied from interface:ApiRequestRequest media type.- Specified by:
 requestMediaTypein interfaceApiRequest<T extends ApiRequest<T>>- Returns:
 - media type if configured
 - See Also:
 ApiRequest.requestMediaType(io.helidon.common.http.MediaType)
 
- 
responseMediaType
public Optional<MediaType> responseMediaType()
Description copied from interface:ApiRequestResponse media type.- Specified by:
 responseMediaTypein interfaceApiRequest<T extends ApiRequest<T>>- Returns:
 - media type if configured
 - See Also:
 ApiRequest.responseMediaType(io.helidon.common.http.MediaType)
 
- 
requestId
public Optional<String> requestId()
Description copied from interface:ApiRequestConfigured request ID.- Specified by:
 requestIdin interfaceApiRequest<T extends ApiRequest<T>>- Returns:
 - request ID if configured
 
 
- 
me
protected T me()
Can be returned by subclasses that can be subclassed again.- Returns:
 - this instance as a subclass type
 
 
 - 
 
 -