Class GrpcClientConfig.BuilderBase<BUILDER extends GrpcClientConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcClientConfig>

java.lang.Object
io.helidon.webclient.api.HttpConfigBase.BuilderBase<BUILDER,PROTOTYPE>
io.helidon.webclient.api.HttpClientConfig.BuilderBase<BUILDER,PROTOTYPE>
io.helidon.webclient.grpc.GrpcClientConfig.BuilderBase<BUILDER,PROTOTYPE>
Type Parameters:
BUILDER - type of the builder extending this abstract builder
PROTOTYPE - type of the prototype interface that would be built by Prototype.Builder.buildPrototype()
All Implemented Interfaces:
io.helidon.builder.api.Prototype.Builder<BUILDER,PROTOTYPE>, io.helidon.common.config.ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>, io.helidon.config.ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>
Direct Known Subclasses:
GrpcClientConfig.Builder
Enclosing interface:
GrpcClientConfig

public abstract static class GrpcClientConfig.BuilderBase<BUILDER extends GrpcClientConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcClientConfig> extends io.helidon.webclient.api.HttpClientConfig.BuilderBase<BUILDER,PROTOTYPE> implements io.helidon.config.ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>
Fluent API builder base for GrpcClient.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    protected static class 
    Generated implementation of the prototype, can be extended by descendant prototype implementations.

    Nested classes/interfaces inherited from class io.helidon.webclient.api.HttpClientConfig.BuilderBase

    io.helidon.webclient.api.HttpClientConfig.BuilderBase.HttpClientConfigImpl

    Nested classes/interfaces inherited from class io.helidon.webclient.api.HttpConfigBase.BuilderBase

    io.helidon.webclient.api.HttpConfigBase.BuilderBase.HttpConfigBaseImpl
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    Protected to support extensibility.
  • Method Summary

    Modifier and Type
    Method
    Description
    gRPC client services.
    addGrpcServices(List<? extends GrpcClientService> grpcServices)
    gRPC client services.
    Clear existing value of this property.
    A ClientUriSupplier that can dynamically provide zero or more ClientUris to connect.
    A ClientUriSupplier that can dynamically provide zero or more ClientUris to connect.
    Optional<io.helidon.common.config.Config>
    If this instance was configured, this would be the config instance used.
    config(io.helidon.common.config.Config config)
    config(io.helidon.config.Config config)
    Update builder from configuration (node of this type).
    boolean
    Whether to collect metrics for gRPC client calls.
    enableMetrics(boolean enableMetrics)
    Whether to collect metrics for gRPC client calls.
    Update this builder from an existing prototype instance.
    Update this builder from an existing prototype builder instance.
    gRPC client services.
    grpcServices(List<? extends GrpcClientService> grpcServices)
    gRPC client services.
    grpcServicesDiscoverServices(boolean discoverServices)
    gRPC client services.
    protected void
    Handles providers and decorators.
    gRPC specific configuration.
    gRPC specific configuration.
    gRPC specific configuration.
    gRPC specific configuration.
     
    protected void
    Validates required properties.

    Methods inherited from class io.helidon.webclient.api.HttpClientConfig.BuilderBase

    addDefaultHeadersMap, addHeader, addHeader, addHeader, addHeader, addHeader, addHeader, addHeader, addHeaders, addMediaSupport, addMediaSupports, addService, addServices, baseFragment, baseFragment, baseQuery, baseQuery, baseUri, baseUri, baseUri, baseUri, baseUri, clearBaseFragment, clearBaseQuery, clearBaseUri, clearCookieManager, connectionCacheSize, connectionCacheSize, contentEncoding, contentEncoding, contentEncoding, contentEncoding, contentEncoding, cookieManager, cookieManager, cookieManager, cookieManager, defaultHeadersMap, defaultHeadersMap, dnsAddressLookup, dnsAddressLookup, dnsResolver, dnsResolver, executor, executor, from, from, headers, headers, maxInMemoryEntity, maxInMemoryEntity, mediaContext, mediaContext, mediaContext, mediaContext, mediaContext, mediaSupports, mediaSupports, mediaTypeParserMode, mediaTypeParserMode, readContinueTimeout, readContinueTimeout, relativeUris, relativeUris, sendExpectContinue, sendExpectContinue, services, services, servicesDiscoverServices, shareConnectionCache, shareConnectionCache, socketOptions, socketOptions, socketOptions, socketOptions, writeBufferSize, writeBufferSize

    Methods inherited from class io.helidon.webclient.api.HttpConfigBase.BuilderBase

    addProperties, clearConnectTimeout, clearReadTimeout, connectTimeout, connectTimeout, followRedirects, followRedirects, from, from, keepAlive, keepAlive, maxRedirects, maxRedirects, properties, properties, proxy, proxy, proxy, proxy, putProperty, readTimeout, readTimeout, tls, tls, tls, tls, tls

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface io.helidon.builder.api.Prototype.Builder

    buildPrototype, self
  • Constructor Details

    • BuilderBase

      protected BuilderBase()
      Protected to support extensibility.
  • Method Details

    • from

      public BUILDER from(GrpcClientConfig prototype)
      Update this builder from an existing prototype instance. This method disables automatic service discovery.
      Parameters:
      prototype - existing prototype to update this builder from
      Returns:
      updated builder instance
    • from

      public BUILDER from(GrpcClientConfig.BuilderBase<?,?> builder)
      Update this builder from an existing prototype builder instance.
      Parameters:
      builder - existing builder prototype to update this builder from
      Returns:
      updated builder instance
    • config

      @Deprecated public BUILDER config(io.helidon.common.config.Config config)
      Update builder from configuration (node of this type). If a value is present in configuration, it would override currently configured values.
      Specified by:
      config in interface io.helidon.common.config.ConfigBuilderSupport.ConfiguredBuilder<BUILDER extends GrpcClientConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcClientConfig>
      Overrides:
      config in class io.helidon.webclient.api.HttpClientConfig.BuilderBase<BUILDER extends GrpcClientConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcClientConfig>
      Parameters:
      config - configuration instance used to obtain values to update this builder
      Returns:
      updated builder instance
    • config

      public BUILDER config(io.helidon.config.Config config)
      Update builder from configuration (node of this type). If a value is present in configuration, it would override currently configured values.
      Specified by:
      config in interface io.helidon.config.ConfigBuilderSupport.ConfiguredBuilder<BUILDER extends GrpcClientConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcClientConfig>
      Overrides:
      config in class io.helidon.webclient.api.HttpClientConfig.BuilderBase<BUILDER extends GrpcClientConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcClientConfig>
      Parameters:
      config - configuration instance used to obtain values to update this builder
      Returns:
      updated builder instance
    • protocolConfig

      public BUILDER protocolConfig(GrpcClientProtocolConfig protocolConfig)
      gRPC specific configuration.
      Parameters:
      protocolConfig - protocol specific configuration
      Returns:
      updated builder instance
      See Also:
    • protocolConfig

      public BUILDER protocolConfig(Consumer<GrpcClientProtocolConfig.Builder> consumer)
      gRPC specific configuration.
      Parameters:
      consumer - consumer of builder for protocol specific configuration
      Returns:
      updated builder instance
      See Also:
    • protocolConfig

      public BUILDER protocolConfig(Supplier<? extends GrpcClientProtocolConfig> supplier)
      gRPC specific configuration.
      Parameters:
      supplier - supplier of protocol specific configuration
      Returns:
      updated builder instance
      See Also:
    • clearClientUriSupplier

      public BUILDER clearClientUriSupplier()
      Clear existing value of this property.
      Returns:
      updated builder instance
      See Also:
    • clientUriSupplier

      public BUILDER clientUriSupplier(ClientUriSupplier clientUriSupplier)
      A ClientUriSupplier that can dynamically provide zero or more ClientUris to connect.
      Parameters:
      clientUriSupplier - a supplier for zero or more client URIs
      Returns:
      updated builder instance
      See Also:
    • enableMetrics

      public BUILDER enableMetrics(boolean enableMetrics)
      Whether to collect metrics for gRPC client calls.
      Parameters:
      enableMetrics - metrics flag
      Returns:
      updated builder instance
      See Also:
    • grpcServicesDiscoverServices

      public BUILDER grpcServicesDiscoverServices(boolean discoverServices)
      gRPC client services. A gRPC service needs to be explicitly added to be enabled given that discoveredServices is false.
      Parameters:
      discoverServices - whether to discover implementations through service loader
      Returns:
      updated builder instance
      See Also:
    • grpcServices

      public BUILDER grpcServices(List<? extends GrpcClientService> grpcServices)
      gRPC client services. A gRPC service needs to be explicitly added to be enabled given that discoveredServices is false.
      Parameters:
      grpcServices - services to use with this gRPC client
      Returns:
      updated builder instance
      See Also:
    • addGrpcServices

      public BUILDER addGrpcServices(List<? extends GrpcClientService> grpcServices)
      gRPC client services. A gRPC service needs to be explicitly added to be enabled given that discoveredServices is false.
      Parameters:
      grpcServices - services to use with this gRPC client
      Returns:
      updated builder instance
      See Also:
    • addGrpcService

      public BUILDER addGrpcService(GrpcClientService grpcService)
      gRPC client services. A gRPC service needs to be explicitly added to be enabled given that discoveredServices is false.
      Parameters:
      grpcService - services to use with this gRPC client
      Returns:
      updated builder instance
      See Also:
    • protocolConfig

      public GrpcClientProtocolConfig protocolConfig()
      gRPC specific configuration.
      Returns:
      the protocol config
    • clientUriSupplier

      public Optional<ClientUriSupplier> clientUriSupplier()
      A ClientUriSupplier that can dynamically provide zero or more ClientUris to connect.
      Returns:
      the client uri supplier
    • enableMetrics

      public boolean enableMetrics()
      Whether to collect metrics for gRPC client calls.
      Returns:
      the enable metrics
    • grpcServices

      public List<GrpcClientService> grpcServices()
      gRPC client services. A gRPC service needs to be explicitly added to be enabled given that discoveredServices is false.
      Returns:
      the grpc services
    • config

      public Optional<io.helidon.common.config.Config> config()
      If this instance was configured, this would be the config instance used.
      Overrides:
      config in class io.helidon.webclient.api.HttpClientConfig.BuilderBase<BUILDER extends GrpcClientConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcClientConfig>
      Returns:
      config node used to configure this builder, or empty if not configured
    • toString

      public String toString()
      Overrides:
      toString in class io.helidon.webclient.api.HttpClientConfig.BuilderBase<BUILDER extends GrpcClientConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcClientConfig>
    • preBuildPrototype

      protected void preBuildPrototype()
      Handles providers and decorators.
      Overrides:
      preBuildPrototype in class io.helidon.webclient.api.HttpClientConfig.BuilderBase<BUILDER extends GrpcClientConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcClientConfig>
    • validatePrototype

      protected void validatePrototype()
      Validates required properties.
      Overrides:
      validatePrototype in class io.helidon.webclient.api.HttpClientConfig.BuilderBase<BUILDER extends GrpcClientConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends GrpcClientConfig>