Class MagicHttpClient.Builder

java.lang.Object
dev.ua.theroer.magicutils.http.MagicHttpClient.Builder
Enclosing class:
MagicHttpClient

public static final class MagicHttpClient.Builder extends Object
Builder for MagicHttpClient.
  • Method Details

    • logger

      public MagicHttpClient.Builder logger(PlatformLogger logger)
      Overrides logger used for request logging.
      Parameters:
      logger - platform logger
      Returns:
      this builder
    • config

      public MagicHttpClient.Builder config(HttpClientConfig config)
      Overrides the configuration instance.
      Parameters:
      config - configuration to use
      Returns:
      this builder
    • logging

      Overrides logging settings.
      Parameters:
      logging - logging settings
      Returns:
      this builder
    • retryPolicy

      public MagicHttpClient.Builder retryPolicy(RetryPolicy retryPolicy)
      Overrides retry policy.
      Parameters:
      retryPolicy - retry policy
      Returns:
      this builder
    • mapper

      public MagicHttpClient.Builder mapper(com.fasterxml.jackson.databind.ObjectMapper mapper)
      Overrides JSON mapper.
      Parameters:
      mapper - object mapper
      Returns:
      this builder
    • baseUrl

      public MagicHttpClient.Builder baseUrl(String baseUrl)
      Sets a base URL used for relative paths.
      Parameters:
      baseUrl - base URL
      Returns:
      this builder
    • userAgent

      public MagicHttpClient.Builder userAgent(String userAgent)
      Sets default User-Agent header value.
      Parameters:
      userAgent - user agent value
      Returns:
      this builder
    • header

      public MagicHttpClient.Builder header(String name, String value)
      Adds a default header.
      Parameters:
      name - header name
      value - header value
      Returns:
      this builder
    • headers

      public MagicHttpClient.Builder headers(Map<String,String> headers)
      Adds default headers.
      Parameters:
      headers - header map
      Returns:
      this builder
    • connectTimeout

      public MagicHttpClient.Builder connectTimeout(Duration connectTimeout)
      Overrides connect timeout.
      Parameters:
      connectTimeout - connect timeout
      Returns:
      this builder
    • requestTimeout

      public MagicHttpClient.Builder requestTimeout(Duration requestTimeout)
      Overrides per-request timeout.
      Parameters:
      requestTimeout - request timeout
      Returns:
      this builder
    • followRedirects

      public MagicHttpClient.Builder followRedirects(boolean followRedirects)
      Overrides redirect behavior.
      Parameters:
      followRedirects - whether to follow redirects
      Returns:
      this builder
    • version

      public MagicHttpClient.Builder version(HttpClient.Version version)
      Overrides HTTP protocol version.
      Parameters:
      version - HTTP version
      Returns:
      this builder
    • client

      public MagicHttpClient.Builder client(HttpClient client)
      Overrides the underlying HTTP client.
      Parameters:
      client - HTTP client
      Returns:
      this builder
    • httpBuilder

      public MagicHttpClient.Builder httpBuilder(HttpClient.Builder httpBuilder)
      Overrides the HTTP client builder used to create the client.
      Parameters:
      httpBuilder - HTTP client builder
      Returns:
      this builder
    • build

      public MagicHttpClient build()
      Builds the client instance.
      Returns:
      HTTP client