Interface Builder<B extends Builder<B,T>,T>

Type Parameters:
B - Type of the builder
T - Type of the built instance
All Superinterfaces:
Supplier<T>
All Known Subinterfaces:
ComponentMetricsSettings.Builder, Config.Builder, ConfigNode.ListNode.Builder, DbClientBuilder<T>, DistributionStatisticsConfig.Builder, Hson.Struct.Builder, HttpRouting.Builder, MeterRegistry.Builder<B,R>, OpenTracingTracerBuilder<T>, ResponseBuilder<B,T,X>, RestServiceSettings.Builder, Router.Builder, Span.Builder<B>, TracerBuilder<T>
All Known Implementing Classes:
AbacProvider.Builder, AbstractLogEntry.Builder, AccessLogConfig.Builder, AccessLogRoutingFeature.Builder, ActivationRequest.Builder, ActivationResult.Builder, AimdLimitConfig.Builder, AllowListConfig.Builder, Annotation.Builder, Annotation.Builder, AnnotationAnalyzer.AnalyzerResponse.Builder, AnnotationParameter.Builder, Aot.Builder, ApiEntityResponse.Builder, ApiOptionalResponse.Builder, ApiOptionalResponse.BuilderBase, ApiResponse.Builder, AppRoleVaultAuth.Builder, AqConfigBuilder, AqConnector.AqConnectorBuilder, AsymmetricCipher.Builder, AsyncConfig.Builder, AudienceValidator.Builder, AuthenticationResponse.Builder, AuthorizationResponse.Builder, BaseHandlerConfig.Builder, BatchSpanProcessorConfig.Builder, BufferedEmittingPublisher.Builder, BulkheadConfig.Builder, CacheConfig.Builder, Channel.Builder, CircuitBreakerConfig.Builder, ClassBase.Builder, ClassModel.Builder, ClasspathConfigSource.Builder, ClasspathHandlerConfig.Builder, ClasspathOverrideSource.Builder, ClientCredentialsConfig.Builder, ClientEndpoint.Builder, ClientMethodDescriptor.Builder, ClientServiceDescriptor.Builder, CodegenEvent.Builder, CodegenEvent.BuilderBase, CohereEmbeddingModelConfig.Builder, CoherenceEmbeddingStoreConfig.Builder, CohereScoringModelConfig.Builder, CompilerOptions.Builder, ComponentTracingConfig.Builder, CompositeProviderSelectionPolicy.Builder, ConfigContent.NodeContent.Builder, ConfigContent.OverrideContent.Builder, ConfigFileMethodConfig.Builder, ConfigItem.Builder, ConfigMethodConfig.Builder, ConfigObserverConfig.Builder, ConfigParser.Content.Builder, ConfigSources.SystemPropertiesConfigSource.Builder, ConfigVaultProvider.Builder, ConnectionConfig.Builder, ConnectionConfig.Builder, ConnectionFlowControl.ConnectionFlowControlBuilder, ConnectorConfigBuilder, Constructor.Builder, ContentDisposition.Builder, ContentEncodingContextConfig.Builder, Context.Builder, ContextFeatureConfig.Builder, ContextRecordConfig.Builder, CoordinatorService.Builder, CorsConfig.Builder, CorsSupport.Builder, CorsSupportBase.Builder, CorsSupportHelper.Builder, Criteria.Builder, CriteriaCondition.Builder, CronConfig.Builder, CrossOriginConfig.Builder, CubbyholeSecurityProvider.CubbyholeSecretConfig.Builder, DataQuery.Builder, DataSourceConfig.Builder, DbClient.Builder, DbClientBuilderBase, DbClientContext.Builder, DbClientContext.BuilderBase, DbClientHealthCheck.Builder, DbClientMetricBuilder, DbClientServiceBase.BuilderBase, DbClientTracing.Builder, DbExecuteContext.Builder, DbExecuteContext.BuilderBase, DbMapperManager.Builder, DbStatements.Builder, DefaultsParams.Builder, Dependency.Builder, Deprecation.Builder, DirectHandler.TransportResponse.Builder, DirectHandlers.Builder, DirectoryConfigSource.Builder, DiskSpaceHealthCheck.Builder, EmbeddedStorageManagerBuilder, EmbeddingStoreContentRetrieverConfig.Builder, EmbeddingTableConfig.Builder, Emitter.Builder, EncryptedJwt.Builder, EndpointConfig.Builder, ErrorHandling.Builder, EtcdConfigSourceBuilder, EurekaDiscoveryConfig.Builder, EurekaRegistrationConfig.Builder, EvictableCache.Builder, Executable.Builder, ExpirationValidator.Builder, FallbackConfig.Builder, FaultTolerance.Builder, FaultTolerance.TypedBuilder, FeatureMetadata.Builder, Field.Builder, FieldValidator.Builder, FileConfigSource.Builder, FileOverrideSource.Builder, FileSystemHandlerConfig.Builder, FileSystemWatcher.Builder, FixedLimitConfig.Builder, FixedRateConfig.Builder, GitConfigSourceBuilder, GoogleTokenProvider.Builder, Grant.Builder, GraphQlService.Builder, GrpcChannelDescriptor.Builder, GrpcChannelsDescriptor.Builder, GrpcChannelsProvider.Builder, GrpcClientConfig.Builder, GrpcClientMethodDescriptor.Builder, GrpcClientProtocolConfig.Builder, GrpcConfig.Builder, GrpcProxyBuilder, GrpcReflectionConfig.Builder, GrpcRouting.Builder, GrpcServiceBuilder, GrpcServiceDescriptor.Builder, GrpcServiceDescriptor.Builder, GrpcTracingConfig.Builder, GsonSupportConfig.Builder, HashDigest.Builder, HeaderAtnOutboundConfig.Builder, HeaderAtnProvider.Builder, HeaderLogEntry.Builder, HealthCheckResponse.Builder, HealthObserverConfig.Builder, HeapMemoryHealthCheck.Builder, HelidonFeatureSupport.Builder, HelidonServiceLoader.Builder, HikariDataSourceConfig.Builder, HmacDigest.Builder, HoconConfigParserBuilder, HostLogEntry.Builder, Http1ClientConfig.Builder, Http1ClientProtocolConfig.Builder, Http1Config.Builder, Http1ConnectionSelectorConfig.Builder, Http2ClientConfig.Builder, Http2ClientProtocolConfig.Builder, Http2Config.Builder, Http2ConnectionSelector.Builder, Http2Settings.Builder, Http2UpgradeProvider.Builder, HttpAnnotated.Builder, HttpBasicAuthProvider.Builder, HttpBasicOutboundConfig.Builder, HttpClientConfig.Builder, HttpConfigBase.Builder, HttpDigestAuthProvider.Builder, HttpMediaType.Builder, HttpRoute.Builder, HttpSignProvider.Builder, IdcsMtRoleMapperProvider.Builder, IdcsRoleMapperProvider.Builder, ImdsInstanceInfo.Builder, InboundClientDefinition.Builder, InfoObserverConfig.Builder, InjectionProvider.InstanceConfig.Builder, InMemoryOverrideSource.Builder, InnerClass.Builder, InstanceInfoConfig.Builder, InterceptionContext.Builder, InvocationHandler.Builder, IoMulti.MultiFromByteChannelBuilder, IoMulti.MultiFromInputStreamBuilder, IoMulti.MultiToByteChannelBuilder, IoMulti.OutputStreamMultiBuilder, IssueTimeValidator.Builder, IvfIndexConfig.Builder, JacksonSupportConfig.Builder, JaegerTracerBuilder, Javadoc.Builder, JavaxElPolicyExecutor.Builder, JdbcClientBuilder, JdbcConnectionPool.BuilderBase, JdbcDataSourceConfig.Builder, JdbcParametersConfig.Builder, JerseySecurityFeature.Builder, JlamaChatModelConfig.Builder, JlamaEmbeddingModelConfig.Builder, JlamaLanguageModelConfig.Builder, JlamaStreamingChatModelConfig.Builder, JmsConfigBuilder, JmsConnector.JmsConnectorBuilder, JmsMessage.OutgoingJmsMessageBuilder, JpaPersistenceUnitConfig.Builder, JsonbSupportConfig.Builder, JsonIndexConfig.Builder, JsonpSupportConfig.Builder, JsonRpcClientConfig.Builder, JsonRpcClientProtocolConfig.Builder, JsonRpcHandlers.Builder, JsonRpcRouting.Builder, JwkEC.Builder, JwkKeys.Builder, JwkOctet.Builder, JwkRSA.Builder, Jwt.Builder, JwtAuthProvider.Builder, JwtHeaders.Builder, JwtProvider.Builder, JwtProvider.JwtOutboundTarget.Builder, JwtValidator.Builder, K8sVaultAuth.Builder, KafkaConfigBuilder, KafkaPublisher.Builder, KafkaSubscriber.Builder, KeyPerformanceIndicatorMetricsConfig.Builder, Keys.Builder, KeystoreKeys.Builder, Kv1SecurityProvider.Kv1SecretConfig.Builder, Kv2SecurityProvider.Kv2SecretConfig.Builder, LeaseInfoConfig.Builder, LimitsFeatureConfig.Builder, ListenerConfig.Builder, ListNodeBuilderImpl, LogObserverConfig.Builder, LogStreamConfig.Builder, Lookup.Builder, LruCacheConfig.Builder, MapConfigSource.Builder, MapConfigSource.MapBuilder, MappedCrossOriginConfig.Builder, MapperManager.Builder, MappersConfig.Builder, MaxTokenAgeValidator.Builder, McpClientConfig.Builder, MediaContextConfig.Builder, MemoryCacheConfig.Builder, Messaging.Builder, MeterRegistryFactory.Builder, Method.Builder, MethodParams.Builder, MetricsConfig.Builder, MetricsObserverConfig.Builder, MicrometerFeature.Builder, MicrometerPrometheusFormatter.Builder, MicrostreamCacheConfigurationBuilder, MicrostreamHealthCheck.Builder, MicrostreamMetricsSupport.Builder, ModelElement.Builder, ModuleInfo.Builder, ModuleInfo.BuilderBase, ModuleInfoExports.Builder, ModuleInfoOpens.Builder, ModuleInfoProvides.Builder, ModuleInfoRequires.Builder, ModuleInfoUses.Builder, ModuleTypeInfo.Builder, MongoDbClientBuilder, MpOpenApiManagerConfig.Builder, MultiTappedPublisher.Builder, Neo4j.Builder, Neo4jMetricsSupport.Builder, NotBeforeValidator.Builder, ObserveFeatureConfig.Builder, ObserverConfigBase.Builder, OciCertificatesTlsManagerConfig.Builder, OciConfig.Builder, OciConfig.Builder, OciGenAiChatModelConfig.Builder, OciGenAiCohereChatModelConfig.Builder, OciGenAiCohereStreamingChatModelConfig.Builder, OciGenAiStreamingChatModelConfig.Builder, OciMetricsSupport.Builder, OidcConfig.Builder, OidcFeature.Builder, OidcProvider.Builder, OllamaChatModelConfig.Builder, OllamaEmbeddingModelConfig.Builder, OllamaLanguageModelConfig.Builder, OllamaStreamingChatModelConfig.Builder, OpenAiChatModelConfig.Builder, OpenAiEmbeddingModelConfig.Builder, OpenAiImageModelConfig.Builder, OpenAiLanguageModelConfig.Builder, OpenAiModerationModelConfig.Builder, OpenAiStreamingChatModelConfig.Builder, OpenApiFeatureConfig.Builder, OpenApiUiConfig.Builder, OpenTelemetryConfig.Builder, OpenTelemetryTracingConfig.Builder, OracleEmbeddingStoreConfig.Builder, Order.Builder, Order.Builder, OrderExpression.Builder, OtlpExporterConfig.Builder, OutboundConfig.Builder, OutboundSecurityClientBuilder, OutboundSecurityResponse.Builder, OutboundTarget.Builder, OutboundTargetDefinition.Builder, PageRequest.Builder, Parameter.Builder, Parameters.Builder, PathsConfig.Builder, PathTracingConfig.Builder, PemKeys.Builder, PolicyValidator.Builder, PolicyValidator.PolicyConfig.Builder, PollingStrategies.ScheduledBuilder, PortInfoConfig.Builder, Principal.Builder, Projection.Builder, PrometheusSupport.Builder, Property.Builder, Proxy.Builder, Qualifier.Builder, RepositoryInfo.Builder, RequestedUriDiscoveryContext.Builder, RequestException.Builder, RequestLineLogEntry.Builder, ResourceConfig.Builder, RestApi.Builder, RestClientMetricsConfig.Builder, RestEndpoint.Builder, RestException.Builder, RestMethod.Builder, RestMethodParameter.Builder, Retry.DelayingRetryPolicy.Builder, Retry.JitterRetryPolicy.Builder, RetryConfig.Builder, RetryPolicyConfig.Builder, Returns.Builder, RevocationConfig.Builder, Role.Builder, RoleValidator.RoleConfig.Builder, SamplerConfig.Builder, ScheduledPollingStrategy.Builder, ScheduledThreadPoolConfig.Builder, Scheduling.CronBuilder, Scheduling.FixedRateBuilder, Schema.Builder, SchemaArray.Builder, SchemaBoolean.Builder, SchemaInteger.Builder, SchemaItem.Builder, SchemaNull.Builder, SchemaNumber.Builder, SchemaObject.Builder, SchemaString.Builder, ScopeConfig.Builder, ScopeValidator.Builder, ScopingConfig.Builder, Security.Builder, SecurityClientBuilder, SecurityContext.Builder, SecurityEnvironment.Builder, SecurityFeatureConfig.Builder, SecurityHandlerConfig.Builder, SecurityLevel.SecurityLevelBuilder, SecurityTime.Builder, SerializationConfig.Builder, Server.Builder, ServerEndpoint.Builder, ServiceRegistryConfig.Builder, SessionTokenMethodConfig.Builder, SetCookie.Builder, Signature.Builder, SignedHeadersConfig.Builder, SimpleRetryPolicy.Builder, SizeLogEntry.Builder, SocketOptions.Builder, Sort.Builder, SpanExporterConfig.Builder, SpanLimitsConfig.Builder, SpanLogTracingConfig.Builder, SpanProcessorConfig.Builder, SpanTracingConfig.Builder, SqlConfig.Builder, SseEvent.Builder, StaticContentConfig.Builder, StaticContentService.Builder, StaticContentService.ClassPathBuilder, StaticContentService.FileBasedBuilder, StaticContentService.FileSystemBuilder, StatusLogEntry.Builder, Subject.Builder, SymmetricCipher.Builder, TaskConfig.Builder, TemporaryStorageConfig.Builder, TenantConfig.Builder, ThreadPoolConfig.Builder, Throws.Builder, TimeoutConfig.Builder, TimestampLogEntry.Builder, TimeTakenLogEntry.Builder, TimeValidator.TimeConfig.Builder, TlsConfig.Builder, TokenCredential.Builder, TokenHandler.Builder, TokenVaultAuth.Builder, TracingConfig.Builder, TracingObserverConfig.Builder, TransitSecurityProvider.TransitDigestConfig.Builder, TransitSecurityProvider.TransitEncryptionConfig.Builder, TypeArgument.Builder, TypedElementInfo.Builder, TypeInfo.Builder, TypeName.Builder, TyrusRouting.Builder, UcpDataSourceConfig.Builder, UriInfo.Builder, UrlConfigSource.Builder, UrlOverrideSource.Builder, UserLogEntry.Builder, UserPrincipalValidator.Builder, Vault.Builder, VaultOptionalResponse.Builder, VaultOptionalResponse.BuilderBase, VaultRestApi.Builder, VaultRestApi.BuilderBase, VaultRestException.Builder, VaultToken.Builder, VaultTokenBase.Builder, WebClientConfig.Builder, WebClientContextConfig.Builder, WebClientCookieManagerConfig.Builder, WebClientServiceResponse.Builder, WebServerConfig.Builder, WriteableMultiPart.Builder, WriteablePart.Builder, WsClientConfig.Builder, WsClientProtocolConfig.Builder, WsConfig.Builder, WsRouting.Builder, ZipkinExporterConfig.Builder, ZipkinTracerBuilder
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public interface Builder<B extends Builder<B,T>,T> extends Supplier<T>
Interface for builders, to be able to accept a builder in addition to an instance.

This interface is similar to Supplier as it provides an instance, only for classes that act as instance builders (fluent API builder pattern), where method Supplier.get() would be misleading.

  • Method Summary

    Modifier and Type
    Method
    Description
    Build the instance from this builder.
    default T
    get()
     
    default B
    Instance of this builder as the correct type.
    default B
    update(Consumer<B> consumer)
    Update the builder in a fluent API way.
  • Method Details

    • build

      T build()
      Build the instance from this builder.
      Returns:
      instance of the built type
    • update

      default B update(Consumer<B> consumer)
      Update the builder in a fluent API way.
      Parameters:
      consumer - consumer of the builder instance
      Returns:
      updated builder instance
    • identity

      default B identity()
      Instance of this builder as the correct type.
      Returns:
      this instance typed to correct type
    • get

      default T get()
      Specified by:
      get in interface Supplier<B extends Builder<B,T>>