java.lang.Object
io.helidon.webclient.api.ClientRequestBase<HttpClientRequest,HttpClientResponse>
io.helidon.webclient.api.HttpClientRequest
- All Implemented Interfaces:
ClientRequest<HttpClientRequest>
,FullClientRequest<HttpClientRequest>
Client request of any client that support HTTP protocol.
This allows configuration of a request, such as setting headers, query parameters etc.
Terminating methods are
ClientRequestBase.submit(Object)
(and its variants), and ClientRequestBase.request()
(and its variants).-
Nested Class Summary
Nested classes/interfaces inherited from interface io.helidon.webclient.api.ClientRequest
ClientRequest.OutputStreamHandler
-
Field Summary
Fields inherited from class io.helidon.webclient.api.ClientRequestBase
PROXY_CONNECTION, USER_AGENT_HEADER
-
Method Summary
Modifier and TypeMethodDescriptionprotected HttpClientResponse
doOutputStream
(ClientRequest.OutputStreamHandler outputStreamConsumer) protected HttpClientResponse
protocolId
(String protocol) Use an explicit version of HTTP by defining its ALPN protocol ID.Methods inherited from class io.helidon.webclient.api.ClientRequestBase
additionalHeaders, clientConfig, connection, connection, followRedirects, followRedirects, fragment, header, headers, headers, headers, invokeServices, keepAlive, keepAlive, maxRedirects, maxRedirects, mediaContext, method, outputStream, path, pathParam, pathParams, properties, property, proxy, proxy, queryParam, readContinueTimeout, readContinueTimeout, readTimeout, readTimeout, request, requestId, resolvedUri, resolveUri, skipUriEncoding, skipUriEncoding, submit, tls, tls, uri, uri, uri, uri
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.helidon.webclient.api.ClientRequest
accept, accept, contentType, fragment, header, header, outputStream, request, requestEntity, submit
-
Method Details
-
protocolId
Use an explicit version of HTTP by defining its ALPN protocol ID. Constants are defined on each version specific client. For example to use HTTP/2,h2
is the protocol ID. For TLS, we will attempt onlyh2
negotiation, for plaintext requests, we will either attempt an upgrade from HTTP/1.1, or use prior knowledge according to HTTP/2 protocol configuration. This method is a no-op when called on a version specific HTTP client.- Parameters:
protocol
- HTTP protocol ID to use- Returns:
- updated request
-
doSubmit
- Specified by:
doSubmit
in classClientRequestBase<HttpClientRequest,
HttpClientResponse>
-
doOutputStream
- Specified by:
doOutputStream
in classClientRequestBase<HttpClientRequest,
HttpClientResponse>
-