Package org.projectnessie.client.http
Class HttpClientBuilder
- java.lang.Object
-
- org.projectnessie.client.http.HttpClientBuilder
-
- All Implemented Interfaces:
NessieClientBuilder<HttpClientBuilder>
public class HttpClientBuilder extends Object implements NessieClientBuilder<HttpClientBuilder>
A builder class that creates aNessieHttpClientviabuilder().
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedHttpClientBuilder()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description <API extends NessieApi>
APIbuild(Class<API> apiVersion)Builds a newNessieApi.static HttpClientBuilderbuilder()HttpClientBuilderfromConfig(Function<String,String> configuration)Configure this HttpClientBuilder instance using a configuration object and standard Nessie configuration keys defined by the constants defined inNessieConfigConstants.HttpClientBuilderfromSystemProperties()Same semantics asfromConfig(Function), uses the system properties.HttpClientBuilderwithAuthentication(NessieAuthentication authentication)Sets theNessieAuthenticationinstance to be used.HttpClientBuilderwithAuthenticationFromConfig(Function<String,String> configuration)Configure only authentication in this HttpClientBuilder instance using a configuration object and standard Nessie configuration keys defined by the constants defined inNessieConfigConstants.HttpClientBuilderwithConnectionTimeout(int connectionTimeoutMillis)Set the connection timeout in milliseconds for this client.HttpClientBuilderwithReadTimeout(int readTimeoutMillis)Set the read timeout in milliseconds for this client.HttpClientBuilderwithTracing(boolean tracing)Whether to enable adding the HTTP headers of an active OpenTracing span to all Nessie requests.HttpClientBuilderwithUri(String uri)Convenience method forwithUri(URI)taking a string.HttpClientBuilderwithUri(URI uri)Set the Nessie server URI.
-
-
-
Method Detail
-
builder
public static HttpClientBuilder builder()
-
fromSystemProperties
public HttpClientBuilder fromSystemProperties()
Same semantics asfromConfig(Function), uses the system properties.- Specified by:
fromSystemPropertiesin interfaceNessieClientBuilder<HttpClientBuilder>- Returns:
this- See Also:
fromConfig(Function)
-
fromConfig
public HttpClientBuilder fromConfig(Function<String,String> configuration)
Configure this HttpClientBuilder instance using a configuration object and standard Nessie configuration keys defined by the constants defined inNessieConfigConstants. Non-nullvalues returned by theconfiguration-function will override previously configured values.- Specified by:
fromConfigin interfaceNessieClientBuilder<HttpClientBuilder>- Parameters:
configuration- The function that returns a configuration value for a configuration key.- Returns:
this- See Also:
fromSystemProperties()
-
withAuthenticationFromConfig
public HttpClientBuilder withAuthenticationFromConfig(Function<String,String> configuration)
Configure only authentication in this HttpClientBuilder instance using a configuration object and standard Nessie configuration keys defined by the constants defined inNessieConfigConstants.- Specified by:
withAuthenticationFromConfigin interfaceNessieClientBuilder<HttpClientBuilder>- Parameters:
configuration- The function that returns a configuration value for a configuration key.- Returns:
this- See Also:
fromConfig(Function)
-
withUri
public HttpClientBuilder withUri(URI uri)
Set the Nessie server URI. A server URI must be configured.- Specified by:
withUriin interfaceNessieClientBuilder<HttpClientBuilder>- Parameters:
uri- server URI- Returns:
this
-
withUri
public HttpClientBuilder withUri(String uri)
Convenience method forwithUri(URI)taking a string.- Specified by:
withUriin interfaceNessieClientBuilder<HttpClientBuilder>- Parameters:
uri- server URI- Returns:
this
-
withAuthentication
public HttpClientBuilder withAuthentication(NessieAuthentication authentication)
Description copied from interface:NessieClientBuilderSets theNessieAuthenticationinstance to be used.- Specified by:
withAuthenticationin interfaceNessieClientBuilder<HttpClientBuilder>- Parameters:
authentication- authentication for this client- Returns:
this
-
withTracing
public HttpClientBuilder withTracing(boolean tracing)
Whether to enable adding the HTTP headers of an active OpenTracing span to all Nessie requests. If enabled, the OpenTracing dependencies must be present at runtime.- Parameters:
tracing-trueto enable passing HTTP headers for active tracing spans.- Returns:
this
-
withReadTimeout
public HttpClientBuilder withReadTimeout(int readTimeoutMillis)
Set the read timeout in milliseconds for this client. Timeout will throwHttpClientReadTimeoutException.- Parameters:
readTimeoutMillis- number of seconds to wait for a response from server.- Returns:
this
-
withConnectionTimeout
public HttpClientBuilder withConnectionTimeout(int connectionTimeoutMillis)
Set the connection timeout in milliseconds for this client. Timeout will throwHttpClientException.- Parameters:
connectionTimeoutMillis- number of seconds to wait to connect to the server.- Returns:
this
-
build
public <API extends NessieApi> API build(Class<API> apiVersion)
Description copied from interface:NessieClientBuilderBuilds a newNessieApi.- Specified by:
buildin interfaceNessieClientBuilder<HttpClientBuilder>- Returns:
- A new
NessieApi.
-
-