Class WebClient.Builder<B extends WebClient.Builder<B,C>,C extends WebClient>

java.lang.Object
io.helidon.nima.webclient.WebClient.Builder<B,C>
Type Parameters:
B - type of builder (subclass of this class)
C - type of web client
All Implemented Interfaces:
Builder<B,C>, Supplier<C>
Direct Known Subclasses:
Http1Client.Http1ClientBuilder, Http2Client.Http2ClientBuilder, WsClient.Builder
Enclosing interface:
WebClient

public abstract static class WebClient.Builder<B extends WebClient.Builder<B,C>,C extends WebClient> extends Object implements Builder<B,C>
Fluent API builder for WebClient.
  • Constructor Details

    • Builder

      protected Builder()
      Common builder base for all the client builder.
  • Method Details

    • baseUri

      public B baseUri(String baseUri)
      Base uri used by the client in all requests.
      Parameters:
      baseUri - base uri of the client requests
      Returns:
      updated builder
    • baseUri

      public B baseUri(URI baseUri)
      Base uri used by the client in all requests.
      Parameters:
      baseUri - base uri of the client requests
      Returns:
      updated builder
    • tls

      public B tls(Tls tls)
      TLS configuration for any TLS request from this client. TLS can also be configured per request. TLS is used when the protocol is set to https.
      Parameters:
      tls - TLS configuration to use
      Returns:
      updated builder
    • tls

      public B tls(Supplier<Tls> tls)
      TLS configuration for any TLS request from this client. TLS can also be configured per request. TLS is used when the protocol is set to https.
      Parameters:
      tls - TLS configuration to use
      Returns:
      updated builder
    • channelOptions

      public B channelOptions(SocketOptions channelOptions)
      Socket options for connections opened by this client.
      Parameters:
      channelOptions - options
      Returns:
      updated builder
    • dnsResolver

      public B dnsResolver(DnsResolver dnsResolver)
      DNS resolver to be used by this client.
      Parameters:
      dnsResolver - dns resolver
      Returns:
      updated builder
    • dnsAddressLookup

      public B dnsAddressLookup(DnsAddressLookup dnsAddressLookup)
      DNS address lookup preferences to be used by this client.
      Parameters:
      dnsAddressLookup - dns address lookup strategy
      Returns:
      updated builder