From 1f3fdf7250c76822a3cc277a3713726b8027c3e3 Mon Sep 17 00:00:00 2001 From: Tomas Langer Date: Mon, 15 Nov 2021 11:06:43 +0100 Subject: [PATCH] 3.0 preparation: builder API update. (#3641) * Builder API update. --- .../main/java/io/helidon/common/Builder.java | 25 ++++++++++++++++- .../io/helidon/common/FeatureDescriptor.java | 4 +-- .../helidon/common/SerializationConfig.java | 2 +- .../java/io/helidon/common/BuilderTest.java | 4 +-- .../helidon/common/configurable/LruCache.java | 2 +- .../ScheduledThreadPoolSupplier.java | 2 +- .../configurable/ThreadPoolSupplier.java | 2 +- .../io/helidon/common/context/Context.java | 4 +-- .../common/crypto/AsymmetricCipher.java | 2 +- .../io/helidon/common/crypto/HashDigest.java | 2 +- .../io/helidon/common/crypto/HmacDigest.java | 2 +- .../io/helidon/common/crypto/Signature.java | 2 +- .../common/crypto/SymmetricCipher.java | 2 +- .../io/helidon/common/http/FormBuilder.java | 4 +-- .../io/helidon/common/http/MediaType.java | 2 +- .../io/helidon/common/http/SetCookie.java | 2 +- .../java/io/helidon/common/pki/KeyConfig.java | 6 ++-- .../helidon/common/mapper/MapperManager.java | 2 +- .../io/helidon/common/reactive/IoMulti.java | 8 +++--- .../common/reactive/MultiTappedPublisher.java | 2 +- .../reactive/SingleTappedPublisher.java | 2 +- .../serviceloader/HelidonServiceLoader.java | 2 +- .../io/helidon/config/mp/MpMetaConfig.java | 2 +- .../helidon/config/ClasspathConfigSource.java | 4 +-- .../config/ClasspathOverrideSource.java | 4 +-- .../main/java/io/helidon/config/Config.java | 2 +- .../helidon/config/DirectoryConfigSource.java | 4 +-- .../io/helidon/config/FileConfigSource.java | 4 +-- .../io/helidon/config/FileOverrideSource.java | 2 +- .../io/helidon/config/FileSystemWatcher.java | 2 +- .../config/InMemoryOverrideSource.java | 4 +-- .../io/helidon/config/MapConfigSource.java | 2 +- .../io/helidon/config/PollingStrategies.java | 4 +-- .../config/ScheduledPollingStrategy.java | 4 +-- .../io/helidon/config/SimpleRetryPolicy.java | 2 +- .../io/helidon/config/UrlConfigSource.java | 4 +-- .../io/helidon/config/UrlOverrideSource.java | 4 +-- .../io/helidon/config/spi/ConfigContent.java | 6 ++-- .../io/helidon/config/spi/ConfigNode.java | 4 +-- .../io/helidon/config/spi/ConfigParser.java | 2 +- .../io/helidon/config/AbstractSourceTest.java | 4 +-- .../io/helidon/config/RetryPoliciesTest.java | 4 +-- .../helidon/config/TestingConfigSource.java | 4 +-- .../config/etcd/EtcdConfigSourceBuilder.java | 2 +- .../config/git/GitConfigSourceBuilder.java | 4 +-- .../hocon/HoconConfigParserBuilder.java | 2 +- .../module/meta1/MyConfigSourceBuilder1.java | 4 +-- .../module/meta2/MyConfigSourceBuilder2.java | 4 +-- .../dbclient/common/DbClientContext.java | 4 +-- .../dbclient/common/DbStatementContext.java | 4 +-- .../java/io/helidon/dbclient/DbClient.java | 2 +- .../io/helidon/dbclient/DbMapperManager.java | 2 +- .../io/helidon/dbclient/DbStatements.java | 4 +-- .../dbclient/spi/DbClientProviderBuilder.java | 4 +-- .../dbclient/health/DbClientHealthCheck.java | 2 +- .../helidon/dbclient/jdbc/ConnectionPool.java | 2 +- .../dbclient/jdbc/JdbcExecuteContext.java | 2 +- .../metrics/DbClientMetricBuilder.java | 2 +- .../dbclient/tracing/DbClientTracing.java | 4 +-- .../examples/security/abac/AtnProvider.java | 8 +++--- .../java/io/helidon/faulttolerance/Async.java | 4 +-- .../io/helidon/faulttolerance/Bulkhead.java | 4 +-- .../faulttolerance/CircuitBreaker.java | 4 +-- .../io/helidon/faulttolerance/Fallback.java | 4 +-- .../faulttolerance/FaultTolerance.java | 6 ++-- .../java/io/helidon/faulttolerance/Retry.java | 8 +++--- .../io/helidon/faulttolerance/Timeout.java | 4 +-- .../graphql/server/GraphQlSupport.java | 2 +- .../graphql/server/InvocationHandler.java | 4 +-- .../grpc/client/ClientMethodDescriptor.java | 2 +- .../grpc/client/ClientServiceDescriptor.java | 2 +- .../grpc/client/GrpcChannelDescriptor.java | 2 +- .../grpc/client/GrpcChannelsProvider.java | 4 +-- .../helidon/grpc/core/GrpcTlsDescriptor.java | 4 +-- .../io/helidon/grpc/server/GrpcRouting.java | 2 +- .../io/helidon/grpc/server/GrpcServer.java | 4 +-- .../grpc/server/GrpcServerConfiguration.java | 4 +-- .../helidon/grpc/server/MethodDescriptor.java | 5 ++-- .../grpc/server/SSLContextBuilder.java | 4 +-- .../grpc/server/ServiceDescriptor.java | 2 +- .../health/checks/DiskSpaceHealthCheck.java | 2 +- .../health/checks/HeapMemoryHealthCheck.java | 2 +- .../java/io/helidon/health/HealthSupport.java | 2 +- .../integrations/common/rest/ApiResponse.java | 3 +- .../common/rest/ResponseBuilder.java | 2 +- .../integrations/common/rest/RestApi.java | 2 +- .../common/rest/RestException.java | 2 +- .../micrometer/MeterRegistryFactory.java | 2 +- .../micrometer/MicrometerSupport.java | 4 +-- .../MicrostreamCacheConfigurationBuilder.java | 7 +++-- .../core/EmbeddedStorageManagerBuilder.java | 2 +- .../health/MicrostreamHealthCheck.java | 2 +- .../metrics/MicrostreamMetricsSupport.java | 2 +- .../neo4j/metrics/Neo4jMetricsSupport.java | 2 +- .../io/helidon/integrations/neo4j/Neo4j.java | 2 +- .../oci/atp/OciAutonomousDbRx.java | 2 +- .../connect/OciConfigInstancePrincipal.java | 2 +- .../oci/connect/OciConfigProfile.java | 2 +- .../oci/connect/OciHttpSignature.java | 2 +- .../oci/connect/OciRestException.java | 2 +- .../health/OciObjectStorageHealthCheck.java | 2 +- .../oci/objectstorage/OciObjectStorageRx.java | 2 +- .../oci/telemetry/OciMetricsRx.java | 2 +- .../oci/vault/health/OciVaultHealthCheck.java | 2 +- .../integrations/oci/vault/OciVaultRx.java | 2 +- .../oci/vault/OciVaultSecurityProvider.java | 6 ++-- .../vault/auths/approle/AppRoleVaultAuth.java | 2 +- .../vault/auths/k8s/K8sVaultAuth.java | 2 +- .../vault/auths/token/TokenVaultAuth.java | 2 +- .../cubbyhole/CubbyholeSecurityProvider.java | 2 +- .../secrets/kv1/Kv1SecurityProvider.java | 2 +- .../secrets/kv2/Kv2SecurityProvider.java | 2 +- .../transit/TransitSecurityProvider.java | 4 +-- .../io/helidon/integrations/vault/Vault.java | 2 +- .../vault/VaultRestException.java | 2 +- .../integrations/vault/VaultTokenBase.java | 2 +- .../vault/spi/InjectionProvider.java | 2 +- .../lra/coordinator/CoordinatorService.java | 2 +- .../media/common/DefaultMediaSupport.java | 4 +-- .../io/helidon/media/common/MediaContext.java | 4 +-- .../io/helidon/media/jsonp/JsonpSupport.java | 2 +- .../media/multipart/ContentDisposition.java | 4 +-- .../media/multipart/ReadableBodyPart.java | 2 +- .../multipart/ReadableBodyPartHeaders.java | 4 +-- .../media/multipart/WriteableBodyPart.java | 4 +-- .../multipart/WriteableBodyPartHeaders.java | 4 +-- .../media/multipart/WriteableMultiPart.java | 4 +-- .../messaging/connectors/aq/AqConnector.java | 2 +- .../connectors/jms/JmsConnector.java | 2 +- .../messaging/connectors/jms/JmsMessage.java | 2 +- .../connectors/kafka/KafkaPublisher.java | 2 +- .../connectors/kafka/KafkaSubscriber.java | 2 +- .../java/io/helidon/messaging/Channel.java | 2 +- .../messaging/ConnectorConfigBuilder.java | 2 +- .../java/io/helidon/messaging/Emitter.java | 2 +- .../java/io/helidon/messaging/Messaging.java | 2 +- .../metrics/api/BaseMetricsSettings.java | 2 +- .../metrics/api/ComponentMetricsSettings.java | 2 +- ...eyPerformanceIndicatorMetricsSettings.java | 2 +- .../helidon/metrics/api/MetricsSettings.java | 2 +- .../metrics/api/RegistryFilterSettings.java | 2 +- .../helidon/metrics/api/RegistrySettings.java | 2 +- .../io/helidon/metrics/MetricsSupport.java | 4 +-- .../metrics/MetricsSupportProviderImpl.java | 2 +- .../metrics/prometheus/PrometheusSupport.java | 4 +-- .../metrics/serviceapi/MetricsSupport.java | 7 +++-- .../serviceapi/MetricsSupportManager.java | 12 ++++---- .../serviceapi/MinimalMetricsSupport.java | 4 +-- .../MinimalMetricsSupportProviderImpl.java | 4 +-- .../spi/MetricsSupportProvider.java | 5 ++-- .../serviceapi/MyMetricsServiceSupport.java | 2 +- .../microprofile/graphql/server/Schema.java | 2 +- .../graphql/server/SchemaArgument.java | 2 +- .../graphql/server/SchemaDirective.java | 2 +- .../graphql/server/SchemaEnum.java | 2 +- .../graphql/server/SchemaFieldDefinition.java | 2 +- .../graphql/server/SchemaGenerator.java | 4 +-- .../graphql/server/SchemaGeneratorHelper.java | 2 +- .../graphql/server/SchemaType.java | 2 +- .../grpc/client/GrpcClientBuilder.java | 4 +-- .../grpc/client/GrpcProxyBuilder.java | 4 +-- .../grpc/server/GrpcServiceBuilder.java | 2 +- .../jwt/auth/JwtAuthProvider.java | 2 +- .../io/helidon/openapi/OpenAPISupport.java | 2 +- .../openapi/internal/OpenAPIConfigImpl.java | 2 +- .../io/helidon/scheduling/Scheduling.java | 4 +-- .../abac/policy/el/JavaxElPolicyExecutor.java | 2 +- .../security/abac/policy/PolicyValidator.java | 6 ++-- .../security/abac/role/RoleValidator.java | 2 +- .../security/abac/scope/ScopeValidator.java | 4 +-- .../security/abac/time/TimeValidator.java | 4 +-- .../integration/grpc/GrpcClientSecurity.java | 4 +-- .../integration/grpc/GrpcSecurityHandler.java | 2 +- .../integration/jersey/SecurityFeature.java | 2 +- .../webserver/SecurityHandler.java | 2 +- .../io/helidon/security/jwt/EncryptedJwt.java | 2 +- .../java/io/helidon/security/jwt/Jwt.java | 2 +- .../io/helidon/security/jwt/JwtHeaders.java | 2 +- .../io/helidon/security/jwt/jwk/JwkEC.java | 2 +- .../io/helidon/security/jwt/jwk/JwkKeys.java | 2 +- .../io/helidon/security/jwt/jwk/JwkOctet.java | 2 +- .../io/helidon/security/jwt/jwk/JwkRSA.java | 2 +- .../security/providers/abac/AbacProvider.java | 2 +- .../providers/common/EvictableCache.java | 2 +- .../providers/common/OutboundConfig.java | 2 +- .../providers/common/OutboundTarget.java | 2 +- .../providers/common/TokenCredential.java | 2 +- .../common/spi/AnnotationAnalyzer.java | 2 +- .../config/vault/ConfigVaultProvider.java | 2 +- .../google/login/GoogleTokenProvider.java | 2 +- .../header/HeaderAtnOutboundConfig.java | 4 +-- .../providers/header/HeaderAtnProvider.java | 4 +-- .../httpauth/HttpBasicAuthProvider.java | 2 +- .../httpauth/HttpBasicOutboundConfig.java | 2 +- .../httpauth/HttpDigestAuthProvider.java | 2 +- .../providers/httpsign/HttpSignProvider.java | 2 +- .../httpsign/InboundClientDefinition.java | 2 +- .../httpsign/OutboundTargetDefinition.java | 2 +- .../httpsign/SignedHeadersConfig.java | 2 +- .../idcs/mapper/IdcsMtRoleMapperProvider.java | 2 +- .../mapper/IdcsMtRoleMapperRxProvider.java | 2 +- .../idcs/mapper/IdcsRoleMapperProvider.java | 2 +- .../idcs/mapper/IdcsRoleMapperRxProvider.java | 2 +- .../security/providers/jwt/JwtProvider.java | 4 +-- .../providers/oidc/common/OidcConfig.java | 2 +- .../oidc/common/OidcCookieHandler.java | 2 +- .../providers/oidc/common/OidcMetadata.java | 2 +- .../security/providers/oidc/OidcProvider.java | 2 +- .../security/providers/oidc/OidcSupport.java | 2 +- .../CompositeProviderSelectionPolicy.java | 4 +-- .../io/helidon/security/EndpointConfig.java | 4 +-- .../main/java/io/helidon/security/Grant.java | 28 ++++++++----------- .../OutboundSecurityClientBuilder.java | 4 +-- .../java/io/helidon/security/Principal.java | 4 +-- .../java/io/helidon/security/Security.java | 2 +- .../security/SecurityClientBuilder.java | 2 +- .../io/helidon/security/SecurityContext.java | 4 +-- .../helidon/security/SecurityEnvironment.java | 4 +-- .../io/helidon/security/SecurityLevel.java | 4 +-- .../io/helidon/security/SecurityResponse.java | 28 +++++++++---------- .../io/helidon/security/SecurityTime.java | 2 +- .../java/io/helidon/security/Subject.java | 4 +-- .../helidon/security/util/TokenHandler.java | 2 +- .../restcdi/ConfiguredTestSupport.java | 4 +-- .../rest/HelidonRestServiceSupport.java | 4 +-- .../rest/RestServiceSettings.java | 2 +- .../config/ComponentTracingConfig.java | 2 +- .../tracing/config/SpanLogTracingConfig.java | 2 +- .../tracing/config/SpanTracingConfig.java | 2 +- .../helidon/tracing/config/TracingConfig.java | 2 +- .../io/helidon/tracing/TracerBuilder.java | 8 ++---- .../webclient/metrics/WebClientMetric.java | 2 +- .../webclient/metrics/WebClientMetrics.java | 4 +-- .../io/helidon/webclient/OutboundTarget.java | 4 +-- .../main/java/io/helidon/webclient/Proxy.java | 2 +- .../java/io/helidon/webclient/WebClient.java | 2 +- .../webclient/WebClientConfiguration.java | 2 +- .../webclient/WebClientResponseImpl.java | 4 +-- .../io/helidon/webclient/WebClientTls.java | 2 +- .../webserver/accesslog/AbstractLogEntry.java | 17 +++++------ .../webserver/accesslog/AccessLogSupport.java | 4 +-- .../io/helidon/webserver/cors/Aggregator.java | 2 +- .../webserver/cors/CorsSupportBase.java | 2 +- .../webserver/cors/CorsSupportHelper.java | 2 +- .../webserver/cors/CrossOriginConfig.java | 2 +- .../cors/MappedCrossOriginConfig.java | 2 +- .../webserver/jersey/JerseySupport.java | 2 +- .../staticcontent/StaticContentSupport.java | 6 ++-- .../helidon/webserver/tyrus/TyrusSupport.java | 2 +- .../io/helidon/webserver/DirectHandler.java | 2 +- .../io/helidon/webserver/DirectHandlers.java | 2 +- .../webserver/ExperimentalConfiguration.java | 4 +-- .../helidon/webserver/Http2Configuration.java | 2 +- .../helidon/webserver/PathTracingConfig.java | 2 +- .../java/io/helidon/webserver/Routing.java | 2 +- .../helidon/webserver/SSLContextBuilder.java | 4 +-- .../webserver/ServerConfiguration.java | 2 +- .../webserver/SocketConfiguration.java | 2 +- .../webserver/StaticContentSupport.java | 2 +- .../java/io/helidon/webserver/WebServer.java | 2 +- .../io/helidon/webserver/WebServerTls.java | 2 +- .../helidon/webserver/WebTracingConfig.java | 4 +-- 262 files changed, 430 insertions(+), 411 deletions(-) diff --git a/common/common/src/main/java/io/helidon/common/Builder.java b/common/common/src/main/java/io/helidon/common/Builder.java index 9c2bf84eb3d..01d4674a777 100644 --- a/common/common/src/main/java/io/helidon/common/Builder.java +++ b/common/common/src/main/java/io/helidon/common/Builder.java @@ -16,6 +16,7 @@ package io.helidon.common; +import java.util.function.Consumer; import java.util.function.Supplier; /** @@ -25,10 +26,11 @@ * as instance builders (fluent API builder pattern), where method {@link java.util.function.Supplier#get()} would be * misleading. * + * @param Type of the builder * @param Type of the built instance */ @FunctionalInterface -public interface Builder extends Supplier { +public interface Builder, T> extends Supplier { /** * Build the instance from this builder. * @@ -36,6 +38,27 @@ public interface Builder extends Supplier { */ T build(); + /** + * Update the builder in a fluen API way. + * + * @param consumer consumer of the builder instance + * @return updated builder instance + */ + default B update(Consumer consumer) { + consumer.accept(identity()); + return identity(); + } + + /** + * Instance of this builder as the correct type. + * + * @return this instance typed to correct type + */ + @SuppressWarnings("unchecked") + default B identity() { + return (B) this; + } + @Override default T get() { return build(); diff --git a/common/common/src/main/java/io/helidon/common/FeatureDescriptor.java b/common/common/src/main/java/io/helidon/common/FeatureDescriptor.java index a99b624d23e..7c6ece26a1e 100644 --- a/common/common/src/main/java/io/helidon/common/FeatureDescriptor.java +++ b/common/common/src/main/java/io/helidon/common/FeatureDescriptor.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -114,7 +114,7 @@ public String toString() { return name; } - static class Builder implements io.helidon.common.Builder { + static class Builder implements io.helidon.common.Builder { private HelidonFlavor[] flavors = new HelidonFlavor[] {HelidonFlavor.SE, HelidonFlavor.MP}; private String name; private String[] path; diff --git a/common/common/src/main/java/io/helidon/common/SerializationConfig.java b/common/common/src/main/java/io/helidon/common/SerializationConfig.java index 9822935e59f..0212818cb6b 100644 --- a/common/common/src/main/java/io/helidon/common/SerializationConfig.java +++ b/common/common/src/main/java/io/helidon/common/SerializationConfig.java @@ -365,7 +365,7 @@ public enum TraceOption { * You can use system properties defined in the class to modify configuration, in which case you can just use * {@link SerializationConfig#configureRuntime()} directly. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private Action onWrongConfig = configuredAction(PROP_WRONG_CONFIG_ACTION, Action.WARN); private Action onNoConfig = configuredAction(PROP_NO_CONFIG_ACTION, Action.WARN); private String filterPattern = System.getProperty(PROP_PATTERN); diff --git a/common/common/src/test/java/io/helidon/common/BuilderTest.java b/common/common/src/test/java/io/helidon/common/BuilderTest.java index 5ce43cb318f..3b980084377 100644 --- a/common/common/src/test/java/io/helidon/common/BuilderTest.java +++ b/common/common/src/test/java/io/helidon/common/BuilderTest.java @@ -79,7 +79,7 @@ String getName() { } } - private static class Builder1 implements Builder { + private static class Builder1 implements Builder { private String message; private Builder1() { @@ -96,7 +96,7 @@ public Result1 build() { } } - private static class Builder2 implements Builder { + private static class Builder2 implements Builder { private String name; private Builder2() { diff --git a/common/configurable/src/main/java/io/helidon/common/configurable/LruCache.java b/common/configurable/src/main/java/io/helidon/common/configurable/LruCache.java index f60c370897c..f7046f09273 100644 --- a/common/configurable/src/main/java/io/helidon/common/configurable/LruCache.java +++ b/common/configurable/src/main/java/io/helidon/common/configurable/LruCache.java @@ -219,7 +219,7 @@ V directGet(K key) { * @param type of values */ @Configured - public static class Builder implements io.helidon.common.Builder> { + public static class Builder implements io.helidon.common.Builder, LruCache> { private int capacity = DEFAULT_CAPACITY; @Override diff --git a/common/configurable/src/main/java/io/helidon/common/configurable/ScheduledThreadPoolSupplier.java b/common/configurable/src/main/java/io/helidon/common/configurable/ScheduledThreadPoolSupplier.java index 3c6090b86c9..ade00821456 100644 --- a/common/configurable/src/main/java/io/helidon/common/configurable/ScheduledThreadPoolSupplier.java +++ b/common/configurable/src/main/java/io/helidon/common/configurable/ScheduledThreadPoolSupplier.java @@ -120,7 +120,7 @@ public ScheduledExecutorService get() { * A fluent API builder for {@link ScheduledThreadPoolSupplier}. */ @Configured - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private int corePoolSize = EXECUTOR_DEFAULT_CORE_POOL_SIZE; private boolean isDaemon = EXECUTOR_DEFAULT_IS_DAEMON; private String threadNamePrefix = EXECUTOR_DEFAULT_THREAD_NAME_PREFIX; diff --git a/common/configurable/src/main/java/io/helidon/common/configurable/ThreadPoolSupplier.java b/common/configurable/src/main/java/io/helidon/common/configurable/ThreadPoolSupplier.java index 2045e8148d8..2c091442eb5 100644 --- a/common/configurable/src/main/java/io/helidon/common/configurable/ThreadPoolSupplier.java +++ b/common/configurable/src/main/java/io/helidon/common/configurable/ThreadPoolSupplier.java @@ -149,7 +149,7 @@ public int corePoolSize() { * A fluent API builder for {@link ThreadPoolSupplier}. */ @Configured - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private int corePoolSize = DEFAULT_CORE_POOL_SIZE; private int maxPoolSize = DEFAULT_MAX_POOL_SIZE; private int keepAliveMinutes = DEFAULT_KEEP_ALIVE_MINUTES; diff --git a/common/context/src/main/java/io/helidon/common/context/Context.java b/common/context/src/main/java/io/helidon/common/context/Context.java index df65dfddce5..76b7a350e74 100644 --- a/common/context/src/main/java/io/helidon/common/context/Context.java +++ b/common/context/src/main/java/io/helidon/common/context/Context.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -165,7 +165,7 @@ static Builder builder() { /** * Fluent API builder for {@link Context}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private static final AtomicLong PARENT_CONTEXT_COUNTER = new AtomicLong(1); // this will cycle through long values from 1 to Long.MAX_VALUE private static final AtomicLong CHILD_CONTEXT_COUNTER = new AtomicLong(1); diff --git a/common/crypto/src/main/java/io/helidon/common/crypto/AsymmetricCipher.java b/common/crypto/src/main/java/io/helidon/common/crypto/AsymmetricCipher.java index 255c659737c..a18413ad874 100644 --- a/common/crypto/src/main/java/io/helidon/common/crypto/AsymmetricCipher.java +++ b/common/crypto/src/main/java/io/helidon/common/crypto/AsymmetricCipher.java @@ -177,7 +177,7 @@ private static Base64Value performCryptoOperation(int mode, String algorithm, St /** * Builder of the {@link AsymmetricCipher}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private String algorithm = ALGORITHM_RSA_ECB_OAEP256; private String provider = null; diff --git a/common/crypto/src/main/java/io/helidon/common/crypto/HashDigest.java b/common/crypto/src/main/java/io/helidon/common/crypto/HashDigest.java index 868f0e33a4b..485f6d45ce4 100644 --- a/common/crypto/src/main/java/io/helidon/common/crypto/HashDigest.java +++ b/common/crypto/src/main/java/io/helidon/common/crypto/HashDigest.java @@ -167,7 +167,7 @@ public Base64Value digest(Base64Value value) { /** * Builder of the {@link HashDigest}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private String algorithm = ALGORITHM_SHA_256; private String provider = null; diff --git a/common/crypto/src/main/java/io/helidon/common/crypto/HmacDigest.java b/common/crypto/src/main/java/io/helidon/common/crypto/HmacDigest.java index 6a71e68d4e5..fc837cb01d7 100644 --- a/common/crypto/src/main/java/io/helidon/common/crypto/HmacDigest.java +++ b/common/crypto/src/main/java/io/helidon/common/crypto/HmacDigest.java @@ -141,7 +141,7 @@ public Base64Value digest(Base64Value value) { /** * Builder of the {@link HmacDigest}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private String algorithm = ALGORITHM_SHA_256; private String provider = null; diff --git a/common/crypto/src/main/java/io/helidon/common/crypto/Signature.java b/common/crypto/src/main/java/io/helidon/common/crypto/Signature.java index 5822fb8373b..b007fb0894d 100644 --- a/common/crypto/src/main/java/io/helidon/common/crypto/Signature.java +++ b/common/crypto/src/main/java/io/helidon/common/crypto/Signature.java @@ -211,7 +211,7 @@ private java.security.Signature getSignature() throws NoSuchAlgorithmException, /** * Builder of the {@link Signature}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private String algorithm = ALGORITHM_SHA256_RSA; private String provider = null; diff --git a/common/crypto/src/main/java/io/helidon/common/crypto/SymmetricCipher.java b/common/crypto/src/main/java/io/helidon/common/crypto/SymmetricCipher.java index 2f9906cab10..aeb217a3e22 100644 --- a/common/crypto/src/main/java/io/helidon/common/crypto/SymmetricCipher.java +++ b/common/crypto/src/main/java/io/helidon/common/crypto/SymmetricCipher.java @@ -315,7 +315,7 @@ public Base64Value decrypt(Base64Value encrypted) { /** * Builder of the {@link SymmetricCipher}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String algorithm = ALGORITHM_AES_GCM; private String provider = null; diff --git a/common/http/src/main/java/io/helidon/common/http/FormBuilder.java b/common/http/src/main/java/io/helidon/common/http/FormBuilder.java index bf343ad6e67..6fff0381bcf 100644 --- a/common/http/src/main/java/io/helidon/common/http/FormBuilder.java +++ b/common/http/src/main/java/io/helidon/common/http/FormBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,7 +23,7 @@ * @param type of the builder * @param type which the builder builds */ -public interface FormBuilder extends Builder { +public interface FormBuilder extends Builder, T> { /** * Add a new values to specific content disposition name. diff --git a/common/http/src/main/java/io/helidon/common/http/MediaType.java b/common/http/src/main/java/io/helidon/common/http/MediaType.java index ef31e2d1903..05c4fd50afb 100644 --- a/common/http/src/main/java/io/helidon/common/http/MediaType.java +++ b/common/http/src/main/java/io/helidon/common/http/MediaType.java @@ -588,7 +588,7 @@ public boolean hasSuffix(String suffix) { /** * A fluent API builder to create instances of {@link MediaType}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private String type = AcceptPredicate.WILDCARD_VALUE; private String subtype = AcceptPredicate.WILDCARD_VALUE; private String charset; diff --git a/common/http/src/main/java/io/helidon/common/http/SetCookie.java b/common/http/src/main/java/io/helidon/common/http/SetCookie.java index 719a496d44b..5c855ae42f5 100644 --- a/common/http/src/main/java/io/helidon/common/http/SetCookie.java +++ b/common/http/src/main/java/io/helidon/common/http/SetCookie.java @@ -205,7 +205,7 @@ public String toString() { /** * A fluent API builder for {@link SetCookie}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final String name; private final String value; private ZonedDateTime expires; diff --git a/common/key-util/src/main/java/io/helidon/common/pki/KeyConfig.java b/common/key-util/src/main/java/io/helidon/common/pki/KeyConfig.java index a2329bc7c16..70f8e838a86 100644 --- a/common/key-util/src/main/java/io/helidon/common/pki/KeyConfig.java +++ b/common/key-util/src/main/java/io/helidon/common/pki/KeyConfig.java @@ -198,7 +198,7 @@ public List certs() { * @see KeyConfig#fullBuilder() */ @Configured - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private PrivateKey explicitPrivateKey; private PublicKey explicitPublicKey; private X509Certificate explicitPublicCert; @@ -327,7 +327,7 @@ public Builder config(Config config) { * KeyConfig#keystoreBuilder()}. */ @Configured(ignoreBuildMethod = true) - public static final class KeystoreBuilder implements io.helidon.common.Builder { + public static final class KeystoreBuilder implements io.helidon.common.Builder { private static final String DEFAULT_KEYSTORE_TYPE = "PKCS12"; private String keystoreType = DEFAULT_KEYSTORE_TYPE; @@ -647,7 +647,7 @@ public KeystoreBuilder config(Config config) { * use this builder), or to PKCS#12 keystore format (and use {@link KeystoreBuilder}). */ @Configured(ignoreBuildMethod = true) - public static final class PemBuilder implements io.helidon.common.Builder { + public static final class PemBuilder implements io.helidon.common.Builder { private final StreamHolder privateKeyStream = new StreamHolder("privateKey"); private final StreamHolder publicKeyStream = new StreamHolder("publicKey"); private final StreamHolder certChainStream = new StreamHolder("certChain"); diff --git a/common/mapper/src/main/java/io/helidon/common/mapper/MapperManager.java b/common/mapper/src/main/java/io/helidon/common/mapper/MapperManager.java index 38a3dc2df32..6dd8cf566f3 100644 --- a/common/mapper/src/main/java/io/helidon/common/mapper/MapperManager.java +++ b/common/mapper/src/main/java/io/helidon/common/mapper/MapperManager.java @@ -112,7 +112,7 @@ TARGET map(SOURCE source, GenericType sourceType, Gener /** * Fluent API builder for {@link io.helidon.common.mapper.MapperManager}. */ - final class Builder implements io.helidon.common.Builder { + final class Builder implements io.helidon.common.Builder { private HelidonServiceLoader.Builder providers = HelidonServiceLoader .builder(ServiceLoader.load(MapperProvider.class)); diff --git a/common/reactive/src/main/java/io/helidon/common/reactive/IoMulti.java b/common/reactive/src/main/java/io/helidon/common/reactive/IoMulti.java index 7397f2f5eef..11c1bdf0cd3 100644 --- a/common/reactive/src/main/java/io/helidon/common/reactive/IoMulti.java +++ b/common/reactive/src/main/java/io/helidon/common/reactive/IoMulti.java @@ -249,7 +249,7 @@ static MultiFromByteChannelBuilder multiFromByteChannelBuilder(ReadableByteChann * Fluent API builder for creating a {@link io.helidon.common.reactive.Multi} from a * {@link java.nio.channels.ReadableByteChannel}. */ - final class MultiFromByteChannelBuilder implements Builder> { + final class MultiFromByteChannelBuilder implements Builder> { private static final int DEFAULT_BUFFER_CAPACITY = 1024 * 8; private static final RetrySchema DEFAULT_RETRY_SCHEMA = RetrySchema.linear(0, 10, 250); private static final String THREAD_PREFIX = "multi-rbc-"; @@ -342,7 +342,7 @@ boolean isExternalExecutor() { /** * Fluent API builder for creating a subscriber consuming {@code Multi} to {@link WritableByteChannel}. */ - final class MultiToByteChannelBuilder implements Builder, ? extends Single>> { + final class MultiToByteChannelBuilder implements Builder, ? extends Single>> { private final WritableByteChannel writableByteChannel; private Executor executor; @@ -385,7 +385,7 @@ public MultiToByteChannelBuilder executor(Executor executor) { * Fluent API builder for creating a {@link io.helidon.common.reactive.Multi} from an * {@link java.io.InputStream}. */ - final class MultiFromInputStreamBuilder implements Builder> { + final class MultiFromInputStreamBuilder implements Builder> { private int bufferSize = 1024; private ExecutorService executor; @@ -431,7 +431,7 @@ public Multi build() { /** * Fluent API builder for {@link io.helidon.common.reactive.OutputStreamMulti}. */ - final class OutputStreamMultiBuilder implements Builder { + final class OutputStreamMultiBuilder implements Builder { private Duration timeout; private BiConsumer consumer; diff --git a/common/reactive/src/main/java/io/helidon/common/reactive/MultiTappedPublisher.java b/common/reactive/src/main/java/io/helidon/common/reactive/MultiTappedPublisher.java index 37782bc2482..11b59671cd8 100644 --- a/common/reactive/src/main/java/io/helidon/common/reactive/MultiTappedPublisher.java +++ b/common/reactive/src/main/java/io/helidon/common/reactive/MultiTappedPublisher.java @@ -294,7 +294,7 @@ void fail(Throwable ex) { * * @param type of returned multi */ - public static class Builder implements io.helidon.common.Builder> { + public static class Builder implements io.helidon.common.Builder, MultiTappedPublisher> { private final Multi source; private Consumer onSubscribeCallback; private Consumer onNextCallback; diff --git a/common/reactive/src/main/java/io/helidon/common/reactive/SingleTappedPublisher.java b/common/reactive/src/main/java/io/helidon/common/reactive/SingleTappedPublisher.java index bc98ada74d3..2ea6c425e47 100644 --- a/common/reactive/src/main/java/io/helidon/common/reactive/SingleTappedPublisher.java +++ b/common/reactive/src/main/java/io/helidon/common/reactive/SingleTappedPublisher.java @@ -147,7 +147,7 @@ public static SingleTappedPublisher.Builder builder(Single source) { * * @param type of returned multi */ - public static class Builder implements io.helidon.common.Builder> { + public static class Builder implements io.helidon.common.Builder, SingleTappedPublisher> { private final Single source; private Consumer onSubscribeCallback; private Consumer onNextCallback; diff --git a/common/service-loader/src/main/java/io/helidon/common/serviceloader/HelidonServiceLoader.java b/common/service-loader/src/main/java/io/helidon/common/serviceloader/HelidonServiceLoader.java index bd8e4208afc..a414e9d615a 100644 --- a/common/service-loader/src/main/java/io/helidon/common/serviceloader/HelidonServiceLoader.java +++ b/common/service-loader/src/main/java/io/helidon/common/serviceloader/HelidonServiceLoader.java @@ -138,7 +138,7 @@ public List asList() { * * @param type of the service to be loaded */ - public static final class Builder implements io.helidon.common.Builder> { + public static final class Builder implements io.helidon.common.Builder, HelidonServiceLoader> { private final ServiceLoader serviceLoader; private final List> customServices = new LinkedList>(); private final Set excludedServiceClasses = new HashSet<>(); diff --git a/config/config-mp/src/main/java/io/helidon/config/mp/MpMetaConfig.java b/config/config-mp/src/main/java/io/helidon/config/mp/MpMetaConfig.java index 628a63138df..70fb8fd1b7e 100644 --- a/config/config-mp/src/main/java/io/helidon/config/mp/MpMetaConfig.java +++ b/config/config-mp/src/main/java/io/helidon/config/mp/MpMetaConfig.java @@ -137,7 +137,7 @@ public String toString() { return name + "(" + ordinal + ")" + ", wrapping: " + delegate.toString(); } - static class Builder implements io.helidon.common.Builder { + static class Builder implements io.helidon.common.Builder { private org.eclipse.microprofile.config.spi.ConfigSource delegate; private int ordinal; private boolean ordinalNotSet = true; diff --git a/config/config/src/main/java/io/helidon/config/ClasspathConfigSource.java b/config/config/src/main/java/io/helidon/config/ClasspathConfigSource.java index 4a94e5f95e7..9e310c776b8 100644 --- a/config/config/src/main/java/io/helidon/config/ClasspathConfigSource.java +++ b/config/config/src/main/java/io/helidon/config/ClasspathConfigSource.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -223,7 +223,7 @@ private static Enumeration findAllResources(String resource) { */ public static final class Builder extends AbstractConfigSourceBuilder implements ParsableSource.Builder, - io.helidon.common.Builder { + io.helidon.common.Builder { private URL url; private String resource; diff --git a/config/config/src/main/java/io/helidon/config/ClasspathOverrideSource.java b/config/config/src/main/java/io/helidon/config/ClasspathOverrideSource.java index 3d68006b976..9c157012d63 100644 --- a/config/config/src/main/java/io/helidon/config/ClasspathOverrideSource.java +++ b/config/config/src/main/java/io/helidon/config/ClasspathOverrideSource.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -97,7 +97,7 @@ public static Builder builder() { * then {@link OverrideSource#load} throws {@link ConfigException}. */ public static final class Builder extends AbstractSourceBuilder - implements io.helidon.common.Builder { + implements io.helidon.common.Builder { private URL url; private String resource; diff --git a/config/config/src/main/java/io/helidon/config/Config.java b/config/config/src/main/java/io/helidon/config/Config.java index fd5f3925686..e4e8a17ac44 100644 --- a/config/config/src/main/java/io/helidon/config/Config.java +++ b/config/config/src/main/java/io/helidon/config/Config.java @@ -1138,7 +1138,7 @@ interface Context { * @see ConfigParser * @see ConfigFilter */ - interface Builder { + interface Builder extends io.helidon.common.Builder { /** * Sets ordered list of {@link ConfigSource} instance to be used as single source of configuration * to be wrapped into {@link Config} API. diff --git a/config/config/src/main/java/io/helidon/config/DirectoryConfigSource.java b/config/config/src/main/java/io/helidon/config/DirectoryConfigSource.java index 952e4d2bf8d..1a45d30e6fb 100644 --- a/config/config/src/main/java/io/helidon/config/DirectoryConfigSource.java +++ b/config/config/src/main/java/io/helidon/config/DirectoryConfigSource.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -155,7 +155,7 @@ public Optional load() throws ConfigException { public static final class Builder extends AbstractConfigSourceBuilder implements PollableSource.Builder, WatchableSource.Builder, - io.helidon.common.Builder { + io.helidon.common.Builder { private Path path; /** diff --git a/config/config/src/main/java/io/helidon/config/FileConfigSource.java b/config/config/src/main/java/io/helidon/config/FileConfigSource.java index eb97073c45a..4dabcc212fc 100644 --- a/config/config/src/main/java/io/helidon/config/FileConfigSource.java +++ b/config/config/src/main/java/io/helidon/config/FileConfigSource.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -172,7 +172,7 @@ public static final class Builder extends AbstractConfigSourceBuilder, WatchableSource.Builder, ParsableSource.Builder, - io.helidon.common.Builder { + io.helidon.common.Builder { private Path path; diff --git a/config/config/src/main/java/io/helidon/config/FileOverrideSource.java b/config/config/src/main/java/io/helidon/config/FileOverrideSource.java index 0697c8a842d..fcd70c414f0 100644 --- a/config/config/src/main/java/io/helidon/config/FileOverrideSource.java +++ b/config/config/src/main/java/io/helidon/config/FileOverrideSource.java @@ -129,7 +129,7 @@ public static Builder builder() { public static final class Builder extends AbstractSourceBuilder implements PollableSource.Builder, WatchableSource.Builder, - io.helidon.common.Builder { + io.helidon.common.Builder { private Path path; diff --git a/config/config/src/main/java/io/helidon/config/FileSystemWatcher.java b/config/config/src/main/java/io/helidon/config/FileSystemWatcher.java index 217294d4a5d..13621ca959f 100644 --- a/config/config/src/main/java/io/helidon/config/FileSystemWatcher.java +++ b/config/config/src/main/java/io/helidon/config/FileSystemWatcher.java @@ -354,7 +354,7 @@ private Path parentDir(Path path) { /** * Fluent API builder for {@link FileSystemWatcher}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final List watchServiceModifiers = new LinkedList<>(); private ScheduledExecutorService executor; private long initialDelay = 1000; diff --git a/config/config/src/main/java/io/helidon/config/InMemoryOverrideSource.java b/config/config/src/main/java/io/helidon/config/InMemoryOverrideSource.java index ff0463187fb..3479c7c5284 100644 --- a/config/config/src/main/java/io/helidon/config/InMemoryOverrideSource.java +++ b/config/config/src/main/java/io/helidon/config/InMemoryOverrideSource.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -54,7 +54,7 @@ public Optional load() throws ConfigException { /** * Fluent API builder for {@link io.helidon.config.InMemoryOverrideSource}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private OverrideData overrideData; private List> overrideWildcards; diff --git a/config/config/src/main/java/io/helidon/config/MapConfigSource.java b/config/config/src/main/java/io/helidon/config/MapConfigSource.java index 37cc221f41b..0de2f56a7e1 100644 --- a/config/config/src/main/java/io/helidon/config/MapConfigSource.java +++ b/config/config/src/main/java/io/helidon/config/MapConfigSource.java @@ -122,7 +122,7 @@ public MapConfigSource build() { * @param type of the implementing builder */ public abstract static class MapBuilder> extends AbstractConfigSourceBuilder - implements io.helidon.common.Builder, + implements io.helidon.common.Builder, PollableSource.Builder { private Map map; diff --git a/config/config/src/main/java/io/helidon/config/PollingStrategies.java b/config/config/src/main/java/io/helidon/config/PollingStrategies.java index 16dab40648a..1381afd4fa4 100644 --- a/config/config/src/main/java/io/helidon/config/PollingStrategies.java +++ b/config/config/src/main/java/io/helidon/config/PollingStrategies.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -61,7 +61,7 @@ public static ScheduledBuilder regular(Duration interval) { /** * A builder for a scheduled polling strategy. */ - public static final class ScheduledBuilder implements Builder { + public static final class ScheduledBuilder implements Builder { private static final String INTERVAL_KEY = "interval"; diff --git a/config/config/src/main/java/io/helidon/config/ScheduledPollingStrategy.java b/config/config/src/main/java/io/helidon/config/ScheduledPollingStrategy.java index 0bd20b6f62e..33e40882325 100644 --- a/config/config/src/main/java/io/helidon/config/ScheduledPollingStrategy.java +++ b/config/config/src/main/java/io/helidon/config/ScheduledPollingStrategy.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -159,7 +159,7 @@ public String toString() { /** * A fluent API builder for {@link io.helidon.config.ScheduledPollingStrategy}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private RecurringPolicy recurringPolicy; private ScheduledExecutorService executor; diff --git a/config/config/src/main/java/io/helidon/config/SimpleRetryPolicy.java b/config/config/src/main/java/io/helidon/config/SimpleRetryPolicy.java index 877799bd2b2..74f13c74629 100644 --- a/config/config/src/main/java/io/helidon/config/SimpleRetryPolicy.java +++ b/config/config/src/main/java/io/helidon/config/SimpleRetryPolicy.java @@ -195,7 +195,7 @@ public Duration overallTimeout() { /** * Fluent API builder for {@link io.helidon.config.SimpleRetryPolicy}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private int retries = 3; private Duration delay = Duration.ofMillis(200); private double delayFactor = 2; diff --git a/config/config/src/main/java/io/helidon/config/UrlConfigSource.java b/config/config/src/main/java/io/helidon/config/UrlConfigSource.java index db42bb09fc6..f7b64b6c058 100644 --- a/config/config/src/main/java/io/helidon/config/UrlConfigSource.java +++ b/config/config/src/main/java/io/helidon/config/UrlConfigSource.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -233,7 +233,7 @@ public static final class Builder extends AbstractConfigSourceBuilder, WatchableSource.Builder, ParsableSource.Builder, - io.helidon.common.Builder { + io.helidon.common.Builder { private URL url; /** diff --git a/config/config/src/main/java/io/helidon/config/UrlOverrideSource.java b/config/config/src/main/java/io/helidon/config/UrlOverrideSource.java index 65c1be68a12..94f984d3736 100644 --- a/config/config/src/main/java/io/helidon/config/UrlOverrideSource.java +++ b/config/config/src/main/java/io/helidon/config/UrlOverrideSource.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -156,7 +156,7 @@ protected String uid() { public static final class Builder extends AbstractSourceBuilder implements PollableSource.Builder, WatchableSource.Builder, - io.helidon.common.Builder { + io.helidon.common.Builder { private URL url; /** diff --git a/config/config/src/main/java/io/helidon/config/spi/ConfigContent.java b/config/config/src/main/java/io/helidon/config/spi/ConfigContent.java index 590fafff6ed..ad6b8fa4351 100644 --- a/config/config/src/main/java/io/helidon/config/spi/ConfigContent.java +++ b/config/config/src/main/java/io/helidon/config/spi/ConfigContent.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -63,7 +63,7 @@ static Builder builder() { */ OverrideSource.OverrideData data(); - class Builder extends ConfigContent.Builder implements io.helidon.common.Builder { + class Builder extends ConfigContent.Builder implements io.helidon.common.Builder { // override data private OverrideSource.OverrideData data; @@ -111,7 +111,7 @@ static Builder builder() { /** * Fluent API builder for {@link io.helidon.config.spi.ConfigContent.NodeContent}. */ - class Builder extends ConfigContent.Builder implements io.helidon.common.Builder { + class Builder extends ConfigContent.Builder implements io.helidon.common.Builder { // node based config source data private ConfigNode.ObjectNode rootNode; diff --git a/config/config/src/main/java/io/helidon/config/spi/ConfigNode.java b/config/config/src/main/java/io/helidon/config/spi/ConfigNode.java index d4d1c8a4c55..2b1937c8552 100644 --- a/config/config/src/main/java/io/helidon/config/spi/ConfigNode.java +++ b/config/config/src/main/java/io/helidon/config/spi/ConfigNode.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -113,7 +113,7 @@ static Builder builder() { /** * Builder to build {@link ListNode} instance. */ - interface Builder extends io.helidon.common.Builder { + interface Builder extends io.helidon.common.Builder { /** * Adds String value to the list. * diff --git a/config/config/src/main/java/io/helidon/config/spi/ConfigParser.java b/config/config/src/main/java/io/helidon/config/spi/ConfigParser.java index 0c76e50b8c2..50762cb8018 100644 --- a/config/config/src/main/java/io/helidon/config/spi/ConfigParser.java +++ b/config/config/src/main/java/io/helidon/config/spi/ConfigParser.java @@ -150,7 +150,7 @@ static Content create(InputStream data, String mediaType, Object stamp) { /** * Fluent API builder for {@link Content}. */ - class Builder extends ConfigContent.Builder implements io.helidon.common.Builder { + class Builder extends ConfigContent.Builder implements io.helidon.common.Builder { private InputStream data; private String mediaType; private Charset charset = StandardCharsets.UTF_8; diff --git a/config/config/src/test/java/io/helidon/config/AbstractSourceTest.java b/config/config/src/test/java/io/helidon/config/AbstractSourceTest.java index d64460df1d9..2002d40aa8d 100644 --- a/config/config/src/test/java/io/helidon/config/AbstractSourceTest.java +++ b/config/config/src/test/java/io/helidon/config/AbstractSourceTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -122,7 +122,7 @@ public Optional> changeWatcher() { private static class TestingBuilder extends AbstractSourceBuilder implements PollableSource.Builder, WatchableSource.Builder, - io.helidon.common.Builder { + io.helidon.common.Builder { private Instant stamp; diff --git a/config/config/src/test/java/io/helidon/config/RetryPoliciesTest.java b/config/config/src/test/java/io/helidon/config/RetryPoliciesTest.java index 41458b39fc1..7749da53a44 100644 --- a/config/config/src/test/java/io/helidon/config/RetryPoliciesTest.java +++ b/config/config/src/test/java/io/helidon/config/RetryPoliciesTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -113,7 +113,7 @@ public Optional load() throws ConfigException { } private static class TestingBuilder extends AbstractConfigSourceBuilder - implements io.helidon.common.Builder { + implements io.helidon.common.Builder { public CountDownLatch loadLatch; private Supplier dataSupplier = () -> NodeContent.builder() diff --git a/config/config/src/test/java/io/helidon/config/TestingConfigSource.java b/config/config/src/test/java/io/helidon/config/TestingConfigSource.java index adcead4cfca..43b220793a7 100644 --- a/config/config/src/test/java/io/helidon/config/TestingConfigSource.java +++ b/config/config/src/test/java/io/helidon/config/TestingConfigSource.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -91,7 +91,7 @@ public static Builder builderNoPolling() { * Testing implementation of {@link AbstractSource.Builder}. */ public static class Builder extends AbstractConfigSourceBuilder - implements io.helidon.common.Builder, + implements io.helidon.common.Builder, PollableSource.Builder { private ObjectNode objectNode; private String uid = "test"; diff --git a/config/etcd/src/main/java/io/helidon/config/etcd/EtcdConfigSourceBuilder.java b/config/etcd/src/main/java/io/helidon/config/etcd/EtcdConfigSourceBuilder.java index 015bda4b5a0..1bedd5e453c 100644 --- a/config/etcd/src/main/java/io/helidon/config/etcd/EtcdConfigSourceBuilder.java +++ b/config/etcd/src/main/java/io/helidon/config/etcd/EtcdConfigSourceBuilder.java @@ -55,7 +55,7 @@ public final class EtcdConfigSourceBuilder extends AbstractConfigSourceBuilder, WatchableSource.Builder, ParsableSource.Builder, - Builder { + Builder { /** * Default Etcd API version ({@link io.helidon.config.etcd.EtcdConfigSourceBuilder.EtcdApi#v2}). diff --git a/config/git/src/main/java/io/helidon/config/git/GitConfigSourceBuilder.java b/config/git/src/main/java/io/helidon/config/git/GitConfigSourceBuilder.java index c21c58b44c1..b8572e80b8a 100644 --- a/config/git/src/main/java/io/helidon/config/git/GitConfigSourceBuilder.java +++ b/config/git/src/main/java/io/helidon/config/git/GitConfigSourceBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -63,7 +63,7 @@ */ public final class GitConfigSourceBuilder extends AbstractConfigSourceBuilder - implements Builder, + implements Builder, PollableSource.Builder, ParsableSource.Builder { diff --git a/config/hocon/src/main/java/io/helidon/config/hocon/HoconConfigParserBuilder.java b/config/hocon/src/main/java/io/helidon/config/hocon/HoconConfigParserBuilder.java index 7577f83c272..48369051bf7 100644 --- a/config/hocon/src/main/java/io/helidon/config/hocon/HoconConfigParserBuilder.java +++ b/config/hocon/src/main/java/io/helidon/config/hocon/HoconConfigParserBuilder.java @@ -32,7 +32,7 @@ * It is possible to {@link #disableResolving() disable resolving} feature * or specify custom {@link #resolveOptions(ConfigResolveOptions) ConfigResolveOptions} instance. */ -public final class HoconConfigParserBuilder implements Builder { +public final class HoconConfigParserBuilder implements Builder { private boolean resolvingEnabled; private ConfigResolveOptions resolveOptions; diff --git a/config/tests/module-meta-source-1/src/main/java/io/helidon/config/tests/module/meta1/MyConfigSourceBuilder1.java b/config/tests/module-meta-source-1/src/main/java/io/helidon/config/tests/module/meta1/MyConfigSourceBuilder1.java index 465a3565f34..940d1abae24 100644 --- a/config/tests/module-meta-source-1/src/main/java/io/helidon/config/tests/module/meta1/MyConfigSourceBuilder1.java +++ b/config/tests/module-meta-source-1/src/main/java/io/helidon/config/tests/module/meta1/MyConfigSourceBuilder1.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,7 +22,7 @@ /** * Testing implementation of config source builder. */ -public class MyConfigSourceBuilder1 implements Builder { +public class MyConfigSourceBuilder1 implements Builder { private final MyEndpoint1 endpoint; private boolean myProp3; diff --git a/config/tests/module-meta-source-2/src/main/java/io/helidon/config/tests/module/meta2/MyConfigSourceBuilder2.java b/config/tests/module-meta-source-2/src/main/java/io/helidon/config/tests/module/meta2/MyConfigSourceBuilder2.java index db012363a90..6fec18452bf 100644 --- a/config/tests/module-meta-source-2/src/main/java/io/helidon/config/tests/module/meta2/MyConfigSourceBuilder2.java +++ b/config/tests/module-meta-source-2/src/main/java/io/helidon/config/tests/module/meta2/MyConfigSourceBuilder2.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,7 +26,7 @@ */ public class MyConfigSourceBuilder2 extends AbstractConfigSourceBuilder - implements Builder { + implements Builder { private final MyEndpoint2 endpoint; private boolean myProp3; diff --git a/dbclient/common/src/main/java/io/helidon/dbclient/common/DbClientContext.java b/dbclient/common/src/main/java/io/helidon/dbclient/common/DbClientContext.java index 14eebd42081..20c1ae33b19 100644 --- a/dbclient/common/src/main/java/io/helidon/dbclient/common/DbClientContext.java +++ b/dbclient/common/src/main/java/io/helidon/dbclient/common/DbClientContext.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -109,7 +109,7 @@ public MapperManager mapperManager() { /** * Fluent API builder for {@link io.helidon.dbclient.common.DbClientContext}. */ - public static final class Builder extends BuilderBase implements io.helidon.common.Builder { + public static final class Builder extends BuilderBase implements io.helidon.common.Builder { @Override public DbClientContext build() { return new DbClientContext(this); diff --git a/dbclient/common/src/main/java/io/helidon/dbclient/common/DbStatementContext.java b/dbclient/common/src/main/java/io/helidon/dbclient/common/DbStatementContext.java index 1efbd3c030c..f9125f152d0 100644 --- a/dbclient/common/src/main/java/io/helidon/dbclient/common/DbStatementContext.java +++ b/dbclient/common/src/main/java/io/helidon/dbclient/common/DbStatementContext.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -105,7 +105,7 @@ public String statement() { /** * A fluent API builder to create {@link io.helidon.dbclient.common.DbStatementContext}. */ - public static final class Builder extends BuilderBase implements io.helidon.common.Builder { + public static final class Builder extends BuilderBase implements io.helidon.common.Builder { private Builder() { } diff --git a/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbClient.java b/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbClient.java index 76ee7f3c644..7bd6c705d34 100644 --- a/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbClient.java +++ b/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbClient.java @@ -152,7 +152,7 @@ static Builder builder(Config dbConfig) { /** * Helidon database handler builder. */ - final class Builder implements io.helidon.common.Builder { + final class Builder implements io.helidon.common.Builder { private final HelidonServiceLoader.Builder clientServiceProviders = HelidonServiceLoader.builder( ServiceLoader.load(DbClientServiceProvider.class)); diff --git a/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbMapperManager.java b/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbMapperManager.java index 24ba8410448..3748643a373 100644 --- a/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbMapperManager.java +++ b/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbMapperManager.java @@ -120,7 +120,7 @@ static DbMapperManager create(HelidonServiceLoader serviceLoad /** * Fluent API builder for {@link io.helidon.dbclient.DbMapperManager}. */ - final class Builder implements io.helidon.common.Builder { + final class Builder implements io.helidon.common.Builder { private final HelidonServiceLoader.Builder providers = HelidonServiceLoader .builder(ServiceLoader.load(DbMapperProvider.class)); diff --git a/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbStatements.java b/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbStatements.java index 1c1dc07c2b8..413e1f5a229 100644 --- a/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbStatements.java +++ b/dbclient/dbclient/src/main/java/io/helidon/dbclient/DbStatements.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -60,7 +60,7 @@ static DbStatements create(Config config) { /** * Fluent API builder for {@link io.helidon.dbclient.DbStatements}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private final Map configuredStatements = new HashMap<>(); /** diff --git a/dbclient/dbclient/src/main/java/io/helidon/dbclient/spi/DbClientProviderBuilder.java b/dbclient/dbclient/src/main/java/io/helidon/dbclient/spi/DbClientProviderBuilder.java index f42ddefecef..6c03db84a17 100644 --- a/dbclient/dbclient/src/main/java/io/helidon/dbclient/spi/DbClientProviderBuilder.java +++ b/dbclient/dbclient/src/main/java/io/helidon/dbclient/spi/DbClientProviderBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,7 +29,7 @@ * * @param type of the builder extending implementing this interface. */ -public interface DbClientProviderBuilder> extends Builder { +public interface DbClientProviderBuilder> extends Builder { /** * Use database connection configuration from configuration file. diff --git a/dbclient/health/src/main/java/io/helidon/dbclient/health/DbClientHealthCheck.java b/dbclient/health/src/main/java/io/helidon/dbclient/health/DbClientHealthCheck.java index a9bdf16080f..9a63a51dfac 100644 --- a/dbclient/health/src/main/java/io/helidon/dbclient/health/DbClientHealthCheck.java +++ b/dbclient/health/src/main/java/io/helidon/dbclient/health/DbClientHealthCheck.java @@ -235,7 +235,7 @@ String statement() { * This named DML statement shall be configured in {@code statements} section * of the DBClient configuration file. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { // Name of Config node with custom health check name. private static final String CONFIG_NAME = "name"; diff --git a/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/ConnectionPool.java b/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/ConnectionPool.java index ea2bea961db..c1091baeb21 100644 --- a/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/ConnectionPool.java +++ b/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/ConnectionPool.java @@ -102,7 +102,7 @@ default String dbType() { * The builder will produce a connection pool based on Hikari connection pool and will support * {@link io.helidon.dbclient.jdbc.spi.HikariCpExtensionProvider} to enhance the Hikari pool. */ - final class Builder implements io.helidon.common.Builder { + final class Builder implements io.helidon.common.Builder { /** * Database connection URL configuration key. */ diff --git a/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/JdbcExecuteContext.java b/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/JdbcExecuteContext.java index b9104272c0b..d4415ddbcb9 100644 --- a/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/JdbcExecuteContext.java +++ b/dbclient/jdbc/src/main/java/io/helidon/dbclient/jdbc/JdbcExecuteContext.java @@ -75,7 +75,7 @@ CompletionStage whenComplete() { }); } - static class Builder extends BuilderBase implements io.helidon.common.Builder { + static class Builder extends BuilderBase implements io.helidon.common.Builder { private ExecutorService executorService; private String dbType; private CompletionStage connection; diff --git a/dbclient/metrics/src/main/java/io/helidon/dbclient/metrics/DbClientMetricBuilder.java b/dbclient/metrics/src/main/java/io/helidon/dbclient/metrics/DbClientMetricBuilder.java index a2eecc6f12e..7ba868895ec 100644 --- a/dbclient/metrics/src/main/java/io/helidon/dbclient/metrics/DbClientMetricBuilder.java +++ b/dbclient/metrics/src/main/java/io/helidon/dbclient/metrics/DbClientMetricBuilder.java @@ -22,5 +22,5 @@ * DB Client metric builder. */ public abstract class DbClientMetricBuilder extends DbClientMetricBuilderBase - implements Builder { + implements Builder { } diff --git a/dbclient/tracing/src/main/java/io/helidon/dbclient/tracing/DbClientTracing.java b/dbclient/tracing/src/main/java/io/helidon/dbclient/tracing/DbClientTracing.java index 7189a4a553e..4043550db83 100644 --- a/dbclient/tracing/src/main/java/io/helidon/dbclient/tracing/DbClientTracing.java +++ b/dbclient/tracing/src/main/java/io/helidon/dbclient/tracing/DbClientTracing.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -123,7 +123,7 @@ protected Single apply(DbClientServiceContext serviceCon * Fluent API builder for {@link io.helidon.dbclient.tracing.DbClientTracing}. */ public static class Builder extends DbClientServiceBuilderBase - implements io.helidon.common.Builder { + implements io.helidon.common.Builder { private Builder() { } diff --git a/examples/grpc/security-abac/src/main/java/io/helidon/grpc/examples/security/abac/AtnProvider.java b/examples/grpc/security-abac/src/main/java/io/helidon/grpc/examples/security/abac/AtnProvider.java index 0b2e8a27ecb..5c3febccd5e 100644 --- a/examples/grpc/security-abac/src/main/java/io/helidon/grpc/examples/security/abac/AtnProvider.java +++ b/examples/grpc/security-abac/src/main/java/io/helidon/grpc/examples/security/abac/AtnProvider.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -171,7 +171,7 @@ public static Builder builder(Config config) { * A builder that builds {@link AtnProvider} instances. */ public static class Builder - implements io.helidon.common.Builder { + implements io.helidon.common.Builder { private Config config; @@ -307,7 +307,7 @@ public static Builder builder(String principal) { * A builder for building {@link Auth} instances. */ public static class Builder - implements io.helidon.common.Builder { + implements io.helidon.common.Builder { private final String principal; private SubjectType type = SubjectType.USER; @@ -387,7 +387,7 @@ public static AtnConfig.Builder builder() { * A builder for building {@link AtnConfig} instances. */ public static class Builder - implements io.helidon.common.Builder { + implements io.helidon.common.Builder { private final List authData = new ArrayList<>(); diff --git a/fault-tolerance/src/main/java/io/helidon/faulttolerance/Async.java b/fault-tolerance/src/main/java/io/helidon/faulttolerance/Async.java index 41b3a29d5a1..700fe53aa88 100644 --- a/fault-tolerance/src/main/java/io/helidon/faulttolerance/Async.java +++ b/fault-tolerance/src/main/java/io/helidon/faulttolerance/Async.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -77,7 +77,7 @@ static Builder builder() { /** * Fluent API Builder for {@link io.helidon.faulttolerance.Async}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private LazyValue executor = FaultTolerance.executor(); private Builder() { diff --git a/fault-tolerance/src/main/java/io/helidon/faulttolerance/Bulkhead.java b/fault-tolerance/src/main/java/io/helidon/faulttolerance/Bulkhead.java index 7691ea57805..5fd6b797f28 100644 --- a/fault-tolerance/src/main/java/io/helidon/faulttolerance/Bulkhead.java +++ b/fault-tolerance/src/main/java/io/helidon/faulttolerance/Bulkhead.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -44,7 +44,7 @@ static Builder builder() { /** * Fluent API builder for {@link io.helidon.faulttolerance.Bulkhead}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private static final int DEFAULT_LIMIT = 10; private static final int DEFAULT_QUEUE_LENGTH = 10; diff --git a/fault-tolerance/src/main/java/io/helidon/faulttolerance/CircuitBreaker.java b/fault-tolerance/src/main/java/io/helidon/faulttolerance/CircuitBreaker.java index f9ea4a47e2b..080c94ea7f0 100644 --- a/fault-tolerance/src/main/java/io/helidon/faulttolerance/CircuitBreaker.java +++ b/fault-tolerance/src/main/java/io/helidon/faulttolerance/CircuitBreaker.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -89,7 +89,7 @@ enum State { /** * Fluent API builder for {@link io.helidon.faulttolerance.CircuitBreaker}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private final Set> skipOn = new HashSet<>(); private final Set> applyOn = new HashSet<>(); // how long to transition from open to half-open diff --git a/fault-tolerance/src/main/java/io/helidon/faulttolerance/Fallback.java b/fault-tolerance/src/main/java/io/helidon/faulttolerance/Fallback.java index 730eede8eba..288e57bd1d3 100644 --- a/fault-tolerance/src/main/java/io/helidon/faulttolerance/Fallback.java +++ b/fault-tolerance/src/main/java/io/helidon/faulttolerance/Fallback.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -78,7 +78,7 @@ static Fallback createMulti(Function type of the values returned */ - class Builder implements io.helidon.common.Builder> { + class Builder implements io.helidon.common.Builder, Fallback> { private final Set> applyOn = new HashSet<>(); private final Set> skipOn = new HashSet<>(); diff --git a/fault-tolerance/src/main/java/io/helidon/faulttolerance/FaultTolerance.java b/fault-tolerance/src/main/java/io/helidon/faulttolerance/FaultTolerance.java index 20b52027410..78f9dbb2ad0 100644 --- a/fault-tolerance/src/main/java/io/helidon/faulttolerance/FaultTolerance.java +++ b/fault-tolerance/src/main/java/io/helidon/faulttolerance/FaultTolerance.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -212,7 +212,7 @@ public B addRetry(Retry retry) { * @param type of results handled by {@link io.helidon.common.reactive.Single} or {@link io.helidon.common.reactive.Multi} */ public static class TypedBuilder extends BaseBuilder> - implements io.helidon.common.Builder> { + implements io.helidon.common.Builder, FtHandlerTyped> { private final List> fts = new LinkedList<>(); private TypedBuilder() { @@ -317,7 +317,7 @@ public String toString() { /** * A builder used for setting up a customized list of fault tolerance handlers. */ - public static class Builder extends BaseBuilder implements io.helidon.common.Builder { + public static class Builder extends BaseBuilder implements io.helidon.common.Builder { private final List fts = new LinkedList<>(); private Builder() { diff --git a/fault-tolerance/src/main/java/io/helidon/faulttolerance/Retry.java b/fault-tolerance/src/main/java/io/helidon/faulttolerance/Retry.java index ee7680dbce6..d28b97535b8 100644 --- a/fault-tolerance/src/main/java/io/helidon/faulttolerance/Retry.java +++ b/fault-tolerance/src/main/java/io/helidon/faulttolerance/Retry.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -48,7 +48,7 @@ static Builder builder() { /** * Fluent API builder for {@link io.helidon.faulttolerance.Retry}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private final Set> applyOn = new HashSet<>(); private final Set> skipOn = new HashSet<>(); @@ -288,7 +288,7 @@ public Optional nextDelayMillis(long firstCallMillis, long lastDelay, int /** * Fluent API builder for {@link io.helidon.faulttolerance.Retry.DelayingRetryPolicy}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private int calls = 3; private double delayFactor = 2; private Duration delay = Duration.ofMillis(200); @@ -391,7 +391,7 @@ public Optional nextDelayMillis(long firstCallNanos, long lastDelay, int c /** * Fluent API builder for {@link io.helidon.faulttolerance.Retry.JitterRetryPolicy}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private int calls = 3; private Duration delay = Duration.ofMillis(200); private Duration jitter = Duration.ofMillis(50); diff --git a/fault-tolerance/src/main/java/io/helidon/faulttolerance/Timeout.java b/fault-tolerance/src/main/java/io/helidon/faulttolerance/Timeout.java index 642495da5be..9d9d3250781 100644 --- a/fault-tolerance/src/main/java/io/helidon/faulttolerance/Timeout.java +++ b/fault-tolerance/src/main/java/io/helidon/faulttolerance/Timeout.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -49,7 +49,7 @@ static Timeout create(Duration timeout) { /** * Fluent API builder for {@link io.helidon.faulttolerance.Timeout}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private Duration timeout = Duration.ofSeconds(10); private LazyValue executor = FaultTolerance.scheduledExecutor(); private boolean currentThread = false; diff --git a/graphql/server/src/main/java/io/helidon/graphql/server/GraphQlSupport.java b/graphql/server/src/main/java/io/helidon/graphql/server/GraphQlSupport.java index 4286481555d..05506d0e659 100644 --- a/graphql/server/src/main/java/io/helidon/graphql/server/GraphQlSupport.java +++ b/graphql/server/src/main/java/io/helidon/graphql/server/GraphQlSupport.java @@ -177,7 +177,7 @@ private Map toVariableMap(String jsonString) { /** * Fluent API builder to create {@link io.helidon.graphql.server.GraphQlSupport}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String context = GraphQlConstants.GRAPHQL_WEB_CONTEXT; private String schemaUri = GraphQlConstants.GRAPHQL_SCHEMA_URI; private CrossOriginConfig crossOriginConfig; diff --git a/graphql/server/src/main/java/io/helidon/graphql/server/InvocationHandler.java b/graphql/server/src/main/java/io/helidon/graphql/server/InvocationHandler.java index 9ba533f1b7f..650645bab01 100644 --- a/graphql/server/src/main/java/io/helidon/graphql/server/InvocationHandler.java +++ b/graphql/server/src/main/java/io/helidon/graphql/server/InvocationHandler.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -103,7 +103,7 @@ default Map execute(String query) { /** * Fluent API builder to configure the invocation handler. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private final Set blacklistedExceptions = new HashSet<>(); private final Set whitelistedExceptions = new HashSet<>(); diff --git a/grpc/client/src/main/java/io/helidon/grpc/client/ClientMethodDescriptor.java b/grpc/client/src/main/java/io/helidon/grpc/client/ClientMethodDescriptor.java index 02fd706c1f2..f0b3d89b9f3 100644 --- a/grpc/client/src/main/java/io/helidon/grpc/client/ClientMethodDescriptor.java +++ b/grpc/client/src/main/java/io/helidon/grpc/client/ClientMethodDescriptor.java @@ -294,7 +294,7 @@ public interface Rules { * {@link MethodDescriptor} builder implementation. */ public static class Builder - implements Rules, io.helidon.common.Builder { + implements Rules, io.helidon.common.Builder { private String name; private io.grpc.MethodDescriptor.Builder descriptor; diff --git a/grpc/client/src/main/java/io/helidon/grpc/client/ClientServiceDescriptor.java b/grpc/client/src/main/java/io/helidon/grpc/client/ClientServiceDescriptor.java index d0091d3a372..ae479a65490 100644 --- a/grpc/client/src/main/java/io/helidon/grpc/client/ClientServiceDescriptor.java +++ b/grpc/client/src/main/java/io/helidon/grpc/client/ClientServiceDescriptor.java @@ -360,7 +360,7 @@ public interface Rules { * A {@link ClientServiceDescriptor} builder. */ public static final class Builder - implements Rules, io.helidon.common.Builder { + implements Rules, io.helidon.common.Builder { private String name; private PriorityBag interceptors = PriorityBag.withDefaultPriority(InterceptorPriorities.USER); private Class serviceClass; diff --git a/grpc/client/src/main/java/io/helidon/grpc/client/GrpcChannelDescriptor.java b/grpc/client/src/main/java/io/helidon/grpc/client/GrpcChannelDescriptor.java index 794b40b355f..abdf3b7b575 100644 --- a/grpc/client/src/main/java/io/helidon/grpc/client/GrpcChannelDescriptor.java +++ b/grpc/client/src/main/java/io/helidon/grpc/client/GrpcChannelDescriptor.java @@ -127,7 +127,7 @@ public Optional tlsDescriptor() { /** * Builder builds a GrpcChannelDescriptor. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private boolean inProcessChannel; private String host = GrpcChannelsProvider.DEFAULT_HOST; private int port = GrpcChannelsProvider.DEFAULT_PORT; diff --git a/grpc/client/src/main/java/io/helidon/grpc/client/GrpcChannelsProvider.java b/grpc/client/src/main/java/io/helidon/grpc/client/GrpcChannelsProvider.java index 308fdc6c9ae..bc00b92fcae 100644 --- a/grpc/client/src/main/java/io/helidon/grpc/client/GrpcChannelsProvider.java +++ b/grpc/client/src/main/java/io/helidon/grpc/client/GrpcChannelsProvider.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -201,7 +201,7 @@ private ManagedChannelBuilder createManagedChannelBuilder(GrpcChannelDescriptor /** * Builder builds an instance of {@link GrpcChannelsProvider}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private Map channelConfigs = new HashMap<>(); diff --git a/grpc/core/src/main/java/io/helidon/grpc/core/GrpcTlsDescriptor.java b/grpc/core/src/main/java/io/helidon/grpc/core/GrpcTlsDescriptor.java index e85fc554fda..769bdd226a7 100644 --- a/grpc/core/src/main/java/io/helidon/grpc/core/GrpcTlsDescriptor.java +++ b/grpc/core/src/main/java/io/helidon/grpc/core/GrpcTlsDescriptor.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -109,7 +109,7 @@ public Resource tlsCaCert() { /** * Builder to build a new instance of {@link GrpcTlsDescriptor}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private boolean enabled = true; private boolean jdkSSL; diff --git a/grpc/server/src/main/java/io/helidon/grpc/server/GrpcRouting.java b/grpc/server/src/main/java/io/helidon/grpc/server/GrpcRouting.java index e199d727d72..012c018ff9c 100644 --- a/grpc/server/src/main/java/io/helidon/grpc/server/GrpcRouting.java +++ b/grpc/server/src/main/java/io/helidon/grpc/server/GrpcRouting.java @@ -85,7 +85,7 @@ default GrpcServer createServer() { /** * A builder that can build {@link GrpcRouting} instances. */ - final class Builder implements io.helidon.common.Builder { + final class Builder implements io.helidon.common.Builder { /** * The {@link Map} of the {@link ServiceDescriptor} instances diff --git a/grpc/server/src/main/java/io/helidon/grpc/server/GrpcServer.java b/grpc/server/src/main/java/io/helidon/grpc/server/GrpcServer.java index ec7d1b43f92..77d1f72b557 100644 --- a/grpc/server/src/main/java/io/helidon/grpc/server/GrpcServer.java +++ b/grpc/server/src/main/java/io/helidon/grpc/server/GrpcServer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -241,7 +241,7 @@ static Builder builder(GrpcRouting routing) { * GrpcServer instance. */ final class Builder - implements io.helidon.common.Builder { + implements io.helidon.common.Builder { private final GrpcRouting routing; diff --git a/grpc/server/src/main/java/io/helidon/grpc/server/GrpcServerConfiguration.java b/grpc/server/src/main/java/io/helidon/grpc/server/GrpcServerConfiguration.java index 692d380671c..6616e640dff 100644 --- a/grpc/server/src/main/java/io/helidon/grpc/server/GrpcServerConfiguration.java +++ b/grpc/server/src/main/java/io/helidon/grpc/server/GrpcServerConfiguration.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -147,7 +147,7 @@ static Builder builder(Config config) { /** * A {@link GrpcServerConfiguration} builder. */ - final class Builder implements io.helidon.common.Builder { + final class Builder implements io.helidon.common.Builder { private static final AtomicInteger GRPC_SERVER_COUNTER = new AtomicInteger(1); private String name = DEFAULT_NAME; diff --git a/grpc/server/src/main/java/io/helidon/grpc/server/MethodDescriptor.java b/grpc/server/src/main/java/io/helidon/grpc/server/MethodDescriptor.java index 1800eb8c4e9..97eb83c8fc0 100644 --- a/grpc/server/src/main/java/io/helidon/grpc/server/MethodDescriptor.java +++ b/grpc/server/src/main/java/io/helidon/grpc/server/MethodDescriptor.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -229,7 +229,8 @@ public interface Configurer { * @param response type */ static final class Builder - implements Rules, io.helidon.common.Builder> { + implements Rules, + io.helidon.common.Builder, MethodDescriptor> { private final String name; private final io.grpc.MethodDescriptor.Builder descriptor; private final ServerCallHandler callHandler; diff --git a/grpc/server/src/main/java/io/helidon/grpc/server/SSLContextBuilder.java b/grpc/server/src/main/java/io/helidon/grpc/server/SSLContextBuilder.java index 8f9d151e404..194f60981bc 100644 --- a/grpc/server/src/main/java/io/helidon/grpc/server/SSLContextBuilder.java +++ b/grpc/server/src/main/java/io/helidon/grpc/server/SSLContextBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +39,7 @@ /** * Builder for configuring a new SslContext for creation. */ -public final class SSLContextBuilder implements Builder { +public final class SSLContextBuilder implements Builder { private static final String PROTOCOL = "TLS"; private static final Random RANDOM = new Random(); diff --git a/grpc/server/src/main/java/io/helidon/grpc/server/ServiceDescriptor.java b/grpc/server/src/main/java/io/helidon/grpc/server/ServiceDescriptor.java index 8cd091944fe..362f2986974 100644 --- a/grpc/server/src/main/java/io/helidon/grpc/server/ServiceDescriptor.java +++ b/grpc/server/src/main/java/io/helidon/grpc/server/ServiceDescriptor.java @@ -436,7 +436,7 @@ public interface Aware { /** * A {@link ServiceDescriptor} builder. */ - public static final class Builder implements Rules, io.helidon.common.Builder { + public static final class Builder implements Rules, io.helidon.common.Builder { private final Class serviceClass; private String name; diff --git a/health/health-checks/src/main/java/io/helidon/health/checks/DiskSpaceHealthCheck.java b/health/health-checks/src/main/java/io/helidon/health/checks/DiskSpaceHealthCheck.java index ba5d2df785b..7987fa53426 100644 --- a/health/health-checks/src/main/java/io/helidon/health/checks/DiskSpaceHealthCheck.java +++ b/health/health-checks/src/main/java/io/helidon/health/checks/DiskSpaceHealthCheck.java @@ -204,7 +204,7 @@ public HealthCheckResponse call() { /** * Fluent API builder for {@link io.helidon.health.checks.DiskSpaceHealthCheck}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private Path path = Paths.get(DEFAULT_PATH); private double threshold = DEFAULT_THRESHOLD; diff --git a/health/health-checks/src/main/java/io/helidon/health/checks/HeapMemoryHealthCheck.java b/health/health-checks/src/main/java/io/helidon/health/checks/HeapMemoryHealthCheck.java index 3ed39503245..8bd843b7e02 100644 --- a/health/health-checks/src/main/java/io/helidon/health/checks/HeapMemoryHealthCheck.java +++ b/health/health-checks/src/main/java/io/helidon/health/checks/HeapMemoryHealthCheck.java @@ -129,7 +129,7 @@ public HealthCheckResponse call() { /** * Fluent API builder for {@link io.helidon.health.checks.HeapMemoryHealthCheck}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private double threshold = DEFAULT_THRESHOLD; private Builder() { diff --git a/health/health/src/main/java/io/helidon/health/HealthSupport.java b/health/health/src/main/java/io/helidon/health/HealthSupport.java index f0d812f6202..17749f30f7a 100644 --- a/health/health/src/main/java/io/helidon/health/HealthSupport.java +++ b/health/health/src/main/java/io/helidon/health/HealthSupport.java @@ -274,7 +274,7 @@ public static HealthSupport create(Config config) { /** * Fluent API builder for {@link io.helidon.health.HealthSupport}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { // 10 seconds private static final long DEFAULT_TIMEOUT_MILLIS = 10 * 1000; private final List allChecks = new LinkedList<>(); diff --git a/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/ApiResponse.java b/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/ApiResponse.java index f46688ced65..c2822e2c6f9 100644 --- a/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/ApiResponse.java +++ b/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/ApiResponse.java @@ -77,7 +77,8 @@ public String requestId() { * @param type of the builder * @param type of api response */ - public abstract static class Builder, T extends ApiResponse> implements io.helidon.common.Builder { + public abstract static class Builder, T extends ApiResponse> + implements io.helidon.common.Builder { private Headers headers; private Http.ResponseStatus status; private String requestId; diff --git a/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/ResponseBuilder.java b/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/ResponseBuilder.java index f47fc9ccf80..07a8764eea4 100644 --- a/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/ResponseBuilder.java +++ b/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/ResponseBuilder.java @@ -28,7 +28,7 @@ * @param type of the target object created by this builder * @param type of the entity supported by this builder (such as JsonObject, byte[]) */ -public interface ResponseBuilder, T, X> extends Builder { +public interface ResponseBuilder, T, X> extends Builder { /** * Response status returned by the API call. * diff --git a/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/RestApi.java b/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/RestApi.java index 3461d5c5cd9..bd7583a3788 100644 --- a/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/RestApi.java +++ b/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/RestApi.java @@ -275,7 +275,7 @@ Single invokeOptional(RequestMethod method, * @param type of the builder (a subclass of this class) * @param type of the built {@link io.helidon.integrations.common.rest.RestApi} */ - abstract class Builder, T extends RestApi> implements io.helidon.common.Builder { + abstract class Builder, T extends RestApi> implements io.helidon.common.Builder { private final WebClient.Builder webClientBuilder = WebClient.builder() .followRedirects(true) .keepAlive(true); diff --git a/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/RestException.java b/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/RestException.java index 93f9c55e6d9..3a9089407ec 100644 --- a/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/RestException.java +++ b/integrations/common/rest/src/main/java/io/helidon/integrations/common/rest/RestException.java @@ -37,7 +37,7 @@ public static Builder builder() { * Fluent API builder for {@link io.helidon.integrations.common.rest.RestException}. */ public static class Builder extends ApiRestException.BaseBuilder - implements io.helidon.common.Builder { + implements io.helidon.common.Builder { private Builder() { } diff --git a/integrations/micrometer/micrometer/src/main/java/io/helidon/integrations/micrometer/MeterRegistryFactory.java b/integrations/micrometer/micrometer/src/main/java/io/helidon/integrations/micrometer/MeterRegistryFactory.java index 282dfbd0d8c..951e74931f8 100644 --- a/integrations/micrometer/micrometer/src/main/java/io/helidon/integrations/micrometer/MeterRegistryFactory.java +++ b/integrations/micrometer/micrometer/src/main/java/io/helidon/integrations/micrometer/MeterRegistryFactory.java @@ -240,7 +240,7 @@ Handler matchingHandler(ServerRequest serverRequest, ServerResponse serverRespon /** * Builder for constructing {@code MeterRegistryFactory} instances. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private final List explicitRegistryEnrollments = new ArrayList<>(); diff --git a/integrations/micrometer/micrometer/src/main/java/io/helidon/integrations/micrometer/MicrometerSupport.java b/integrations/micrometer/micrometer/src/main/java/io/helidon/integrations/micrometer/MicrometerSupport.java index aa648717b4a..2e508806abd 100644 --- a/integrations/micrometer/micrometer/src/main/java/io/helidon/integrations/micrometer/MicrometerSupport.java +++ b/integrations/micrometer/micrometer/src/main/java/io/helidon/integrations/micrometer/MicrometerSupport.java @@ -119,8 +119,8 @@ private void getOrOptions(ServerRequest serverRequest, ServerResponse serverResp /** * Fluid builder for {@code MicrometerSupport} objects. */ - public static class Builder extends HelidonRestServiceSupport.Builder - implements io.helidon.common.Builder { + public static class Builder extends HelidonRestServiceSupport.Builder + implements io.helidon.common.Builder { private Supplier meterRegistryFactorySupplier = null; diff --git a/integrations/microstream/cache/src/main/java/io/helidon/integrations/microstream/cache/MicrostreamCacheConfigurationBuilder.java b/integrations/microstream/cache/src/main/java/io/helidon/integrations/microstream/cache/MicrostreamCacheConfigurationBuilder.java index 0bccbb3212f..89f5152ede4 100644 --- a/integrations/microstream/cache/src/main/java/io/helidon/integrations/microstream/cache/MicrostreamCacheConfigurationBuilder.java +++ b/integrations/microstream/cache/src/main/java/io/helidon/integrations/microstream/cache/MicrostreamCacheConfigurationBuilder.java @@ -40,9 +40,10 @@ * @param type of the cache key * @param type of the cache value */ -public class MicrostreamCacheConfigurationBuilder implements CacheConfigurationPropertyNames, - CacheConfiguration.Builder, - io.helidon.common.Builder> { +public class MicrostreamCacheConfigurationBuilder + implements CacheConfigurationPropertyNames, + CacheConfiguration.Builder, + io.helidon.common.Builder, CacheConfiguration> { private final Builder cacheConfigBuilder; diff --git a/integrations/microstream/core/src/main/java/io/helidon/integrations/microstream/core/EmbeddedStorageManagerBuilder.java b/integrations/microstream/core/src/main/java/io/helidon/integrations/microstream/core/EmbeddedStorageManagerBuilder.java index 240d12151b8..c062672e7af 100644 --- a/integrations/microstream/core/src/main/java/io/helidon/integrations/microstream/core/EmbeddedStorageManagerBuilder.java +++ b/integrations/microstream/core/src/main/java/io/helidon/integrations/microstream/core/EmbeddedStorageManagerBuilder.java @@ -32,7 +32,7 @@ * Builder for Microstream EmbeddedStorageManager. * */ -public class EmbeddedStorageManagerBuilder implements io.helidon.common.Builder { +public class EmbeddedStorageManagerBuilder implements io.helidon.common.Builder { private final EmbeddedStorageConfigurationBuilder configurationBuilder; private EmbeddedStorageManagerBuilder() { diff --git a/integrations/microstream/health/src/main/java/io/helidon/integrations/microstream/health/MicrostreamHealthCheck.java b/integrations/microstream/health/src/main/java/io/helidon/integrations/microstream/health/MicrostreamHealthCheck.java index 00d8a9478e3..79c4c2e18bb 100644 --- a/integrations/microstream/health/src/main/java/io/helidon/integrations/microstream/health/MicrostreamHealthCheck.java +++ b/integrations/microstream/health/src/main/java/io/helidon/integrations/microstream/health/MicrostreamHealthCheck.java @@ -91,7 +91,7 @@ public static Builder builder(EmbeddedStorageManager embeddedStorageManager) { * Builder for MicrostreamHealthCheck. * */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private final EmbeddedStorageManager embeddedStorageManager; diff --git a/integrations/microstream/metrics/src/main/java/io/helidon/integrations/microstream/metrics/MicrostreamMetricsSupport.java b/integrations/microstream/metrics/src/main/java/io/helidon/integrations/microstream/metrics/MicrostreamMetricsSupport.java index 5f73becfb8f..d16134b517f 100644 --- a/integrations/microstream/metrics/src/main/java/io/helidon/integrations/microstream/metrics/MicrostreamMetricsSupport.java +++ b/integrations/microstream/metrics/src/main/java/io/helidon/integrations/microstream/metrics/MicrostreamMetricsSupport.java @@ -114,7 +114,7 @@ public void registerMetrics() { /** * A fluent API builder to build instances of {@link MetricsSupport}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final EmbeddedStorageManager embeddedStorageManager; private Config config = Config.empty(); diff --git a/integrations/neo4j/metrics/src/main/java/io/helidon/integrations/neo4j/metrics/Neo4jMetricsSupport.java b/integrations/neo4j/metrics/src/main/java/io/helidon/integrations/neo4j/metrics/Neo4jMetricsSupport.java index b541578c641..c95ccf2b378 100644 --- a/integrations/neo4j/metrics/src/main/java/io/helidon/integrations/neo4j/metrics/Neo4jMetricsSupport.java +++ b/integrations/neo4j/metrics/src/main/java/io/helidon/integrations/neo4j/metrics/Neo4jMetricsSupport.java @@ -162,7 +162,7 @@ private void registerGauge(MetricRegistry metricRegistry, /** * Fluent API builder for Neo4jMetricsSupport. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private Driver driver; diff --git a/integrations/neo4j/neo4j/src/main/java/io/helidon/integrations/neo4j/Neo4j.java b/integrations/neo4j/neo4j/src/main/java/io/helidon/integrations/neo4j/Neo4j.java index bd8aecf4659..396e1761f16 100644 --- a/integrations/neo4j/neo4j/src/main/java/io/helidon/integrations/neo4j/Neo4j.java +++ b/integrations/neo4j/neo4j/src/main/java/io/helidon/integrations/neo4j/Neo4j.java @@ -75,7 +75,7 @@ public Driver driver() { /** * Fluent API builder for Neo4j. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private boolean encrypted; private boolean authenticationEnabled = true; private String username; diff --git a/integrations/oci/atp/src/main/java/io/helidon/integrations/oci/atp/OciAutonomousDbRx.java b/integrations/oci/atp/src/main/java/io/helidon/integrations/oci/atp/OciAutonomousDbRx.java index ff623a90aaf..45cc29a71b7 100644 --- a/integrations/oci/atp/src/main/java/io/helidon/integrations/oci/atp/OciAutonomousDbRx.java +++ b/integrations/oci/atp/src/main/java/io/helidon/integrations/oci/atp/OciAutonomousDbRx.java @@ -83,7 +83,7 @@ Single> generateW /** * Fluent API Builder for {@link OciAutonomousDbRx}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private final OciRestApi.Builder apiBuilder = OciRestApi.builder(); private String hostPrefix = API_HOST_PREFIX; diff --git a/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciConfigInstancePrincipal.java b/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciConfigInstancePrincipal.java index 9d333fe396a..217727ae999 100644 --- a/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciConfigInstancePrincipal.java +++ b/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciConfigInstancePrincipal.java @@ -337,7 +337,7 @@ private String toPem(PublicKey publicKey) { /** * Fluent API builder for {@link io.helidon.integrations.oci.connect.OciConfigInstancePrincipal}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private static final Logger LOGGER = Logger.getLogger(Builder.class.getName()); private final WebClient.Builder webClientBuilder = WebClient.builder() .followRedirects(true); diff --git a/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciConfigProfile.java b/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciConfigProfile.java index edbf73a4714..e562e3ffaab 100644 --- a/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciConfigProfile.java +++ b/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciConfigProfile.java @@ -164,7 +164,7 @@ public Map fullConfig() { * Fluent API builder for {@link OciConfigProfile}. */ @Configured - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private static final Logger LOGGER = Logger.getLogger(Builder.class.getName()); private static final String DEFAULT_PROFILE = "DEFAULT"; private static final String DEFAULT_PROFILE_PATH = "~/.oci/config"; diff --git a/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciHttpSignature.java b/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciHttpSignature.java index 2f647241ee2..f03285a632c 100644 --- a/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciHttpSignature.java +++ b/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciHttpSignature.java @@ -156,7 +156,7 @@ public static Builder builder() { return new Builder(); } - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private RSAPrivateKey privateKey; private SecurityEnvironment env; private Map> newHeaders; diff --git a/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciRestException.java b/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciRestException.java index b950cd2fab6..27781a0616c 100644 --- a/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciRestException.java +++ b/integrations/oci/connect/src/main/java/io/helidon/integrations/oci/connect/OciRestException.java @@ -64,7 +64,7 @@ public Optional ociMessage() { /** * Fluent API builder for {@link io.helidon.integrations.oci.connect.OciRestException}. */ - public static class Builder extends BaseBuilder implements io.helidon.common.Builder { + public static class Builder extends BaseBuilder implements io.helidon.common.Builder { private String errorCode; private String errorMessage; diff --git a/integrations/oci/objectstorage-health/src/main/java/io/helidon/integrations/oci/objectstorage/health/OciObjectStorageHealthCheck.java b/integrations/oci/objectstorage-health/src/main/java/io/helidon/integrations/oci/objectstorage/health/OciObjectStorageHealthCheck.java index a183cd7f7be..756b8ac2d5e 100644 --- a/integrations/oci/objectstorage-health/src/main/java/io/helidon/integrations/oci/objectstorage/health/OciObjectStorageHealthCheck.java +++ b/integrations/oci/objectstorage-health/src/main/java/io/helidon/integrations/oci/objectstorage/health/OciObjectStorageHealthCheck.java @@ -122,7 +122,7 @@ public HealthCheckResponse call() { /** * Fluent API builder for {@link OciObjectStorageHealthCheck}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private String namespace; private OciObjectStorageRx ociObjectStorageRx; diff --git a/integrations/oci/objectstorage/src/main/java/io/helidon/integrations/oci/objectstorage/OciObjectStorageRx.java b/integrations/oci/objectstorage/src/main/java/io/helidon/integrations/oci/objectstorage/OciObjectStorageRx.java index 5379dfaf56e..9d1b6ddbfb4 100644 --- a/integrations/oci/objectstorage/src/main/java/io/helidon/integrations/oci/objectstorage/OciObjectStorageRx.java +++ b/integrations/oci/objectstorage/src/main/java/io/helidon/integrations/oci/objectstorage/OciObjectStorageRx.java @@ -119,7 +119,7 @@ static OciObjectStorageRx create(Config config) { /** * Fluent API Builder for {@link io.helidon.integrations.oci.objectstorage.OciObjectStorageRx}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private final OciRestApi.Builder apiBuilder = OciRestApi.builder(); private String hostPrefix = API_HOST_PREFIX; diff --git a/integrations/oci/telemetry/src/main/java/io/helidon/integrations/oci/telemetry/OciMetricsRx.java b/integrations/oci/telemetry/src/main/java/io/helidon/integrations/oci/telemetry/OciMetricsRx.java index bfb62528a89..a5675a1a810 100644 --- a/integrations/oci/telemetry/src/main/java/io/helidon/integrations/oci/telemetry/OciMetricsRx.java +++ b/integrations/oci/telemetry/src/main/java/io/helidon/integrations/oci/telemetry/OciMetricsRx.java @@ -92,7 +92,7 @@ static OciMetricsRx create(Config config) { /** * Fluent API builder for {@link io.helidon.integrations.oci.telemetry.OciMetricsRx}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private final OciRestApi.Builder apiBuilder = OciRestApi.builder(); private String apiVersion = API_VERSION; diff --git a/integrations/oci/vault-health/src/main/java/io/helidon/integrations/oci/vault/health/OciVaultHealthCheck.java b/integrations/oci/vault-health/src/main/java/io/helidon/integrations/oci/vault/health/OciVaultHealthCheck.java index b2ae32c14fd..bc87dd176b7 100644 --- a/integrations/oci/vault-health/src/main/java/io/helidon/integrations/oci/vault/health/OciVaultHealthCheck.java +++ b/integrations/oci/vault-health/src/main/java/io/helidon/integrations/oci/vault/health/OciVaultHealthCheck.java @@ -114,7 +114,7 @@ public HealthCheckResponse call() { /** * Fluent API builder for {@link OciVaultHealthCheck}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private OciVaultRx vaultRx; private OciVault vault; diff --git a/integrations/oci/vault/src/main/java/io/helidon/integrations/oci/vault/OciVaultRx.java b/integrations/oci/vault/src/main/java/io/helidon/integrations/oci/vault/OciVaultRx.java index df50d7a923c..aee9c77cec3 100644 --- a/integrations/oci/vault/src/main/java/io/helidon/integrations/oci/vault/OciVaultRx.java +++ b/integrations/oci/vault/src/main/java/io/helidon/integrations/oci/vault/OciVaultRx.java @@ -177,7 +177,7 @@ static OciVaultRx create(Config config) { * Fluent API builder for {@link io.helidon.integrations.oci.vault.OciVaultRx}. */ @Configured - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private final OciRestApi.Builder accessBuilder = OciRestApi.builder(); private String secretApiVersion = SECRET_API_VERSION; diff --git a/integrations/oci/vault/src/main/java/io/helidon/integrations/oci/vault/OciVaultSecurityProvider.java b/integrations/oci/vault/src/main/java/io/helidon/integrations/oci/vault/OciVaultSecurityProvider.java index 20dbc4e7060..e8c6a34ca9a 100644 --- a/integrations/oci/vault/src/main/java/io/helidon/integrations/oci/vault/OciVaultSecurityProvider.java +++ b/integrations/oci/vault/src/main/java/io/helidon/integrations/oci/vault/OciVaultSecurityProvider.java @@ -185,7 +185,7 @@ Verify.Request verifyRequest() { /** * Fluent API builder for {@link io.helidon.integrations.oci.vault.OciVaultSecurityProvider.OciVaultDigestConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private static final String CONFIG_KEY_KEY_OCID = "key-ocid"; private String keyOcid; @@ -361,7 +361,7 @@ Decrypt.Request decryptionRequest() { /** * Fluent API builder for {@link io.helidon.integrations.oci.vault.OciVaultSecurityProvider.OciVaultEncryptionConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private static final String CONFIG_KEY_KEY_ID = "key-ocid"; private String keyId; @@ -550,7 +550,7 @@ GetSecretBundle.Request request() { * {@link io.helidon.integrations.oci.vault.OciVaultSecurityProvider.OciVaultSecretConfig}. */ @Configured(description = "Secrets retrieved from OCI Vault instance", provides = SecretsProviderConfig.class) - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private static final String SECRET_OCID_CONFIG_KEY = "ocid"; private String secretId; diff --git a/integrations/vault/auths/approle/src/main/java/io/helidon/integrations/vault/auths/approle/AppRoleVaultAuth.java b/integrations/vault/auths/approle/src/main/java/io/helidon/integrations/vault/auths/approle/AppRoleVaultAuth.java index df68d342a42..a9beba5864e 100644 --- a/integrations/vault/auths/approle/src/main/java/io/helidon/integrations/vault/auths/approle/AppRoleVaultAuth.java +++ b/integrations/vault/auths/approle/src/main/java/io/helidon/integrations/vault/auths/approle/AppRoleVaultAuth.java @@ -134,7 +134,7 @@ public Optional authenticate(Config config, Vault.Builder vaultBuilder) /** * Fluent API builder for {@link io.helidon.integrations.vault.auths.approle.AppRoleVaultAuth}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String appRoleId; private String secretId; private String path; diff --git a/integrations/vault/auths/k8s/src/main/java/io/helidon/integrations/vault/auths/k8s/K8sVaultAuth.java b/integrations/vault/auths/k8s/src/main/java/io/helidon/integrations/vault/auths/k8s/K8sVaultAuth.java index 6e8a7773bfe..d2b9ea1c30f 100644 --- a/integrations/vault/auths/k8s/src/main/java/io/helidon/integrations/vault/auths/k8s/K8sVaultAuth.java +++ b/integrations/vault/auths/k8s/src/main/java/io/helidon/integrations/vault/auths/k8s/K8sVaultAuth.java @@ -149,7 +149,7 @@ public Optional authenticate(Config config, Vault.Builder vaultBuilder) /** * Fluent API builder for {@link io.helidon.integrations.vault.auths.k8s.K8sVaultAuth}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String serviceAccountToken; private String tokenRole; private String tokenLocation = "/var/run/secrets/kubernetes.io/serviceaccount/token"; diff --git a/integrations/vault/auths/token/src/main/java/io/helidon/integrations/vault/auths/token/TokenVaultAuth.java b/integrations/vault/auths/token/src/main/java/io/helidon/integrations/vault/auths/token/TokenVaultAuth.java index b0bcff56703..f171109cb3b 100644 --- a/integrations/vault/auths/token/src/main/java/io/helidon/integrations/vault/auths/token/TokenVaultAuth.java +++ b/integrations/vault/auths/token/src/main/java/io/helidon/integrations/vault/auths/token/TokenVaultAuth.java @@ -98,7 +98,7 @@ private RestApi restApi(Vault.Builder vaultBuilder, String token) { /** * Fluent API builder for {@link io.helidon.integrations.vault.auths.token.TokenVaultAuth}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String baseNamespace; private String token; diff --git a/integrations/vault/secrets/cubbyhole/src/main/java/io/helidon/integrations/vault/secrets/cubbyhole/CubbyholeSecurityProvider.java b/integrations/vault/secrets/cubbyhole/src/main/java/io/helidon/integrations/vault/secrets/cubbyhole/CubbyholeSecurityProvider.java index cac0e0838ab..fa128bc2271 100644 --- a/integrations/vault/secrets/cubbyhole/src/main/java/io/helidon/integrations/vault/secrets/cubbyhole/CubbyholeSecurityProvider.java +++ b/integrations/vault/secrets/cubbyhole/src/main/java/io/helidon/integrations/vault/secrets/cubbyhole/CubbyholeSecurityProvider.java @@ -94,7 +94,7 @@ private GetCubbyhole.Request request() { * Fluent API builder for * {@link io.helidon.integrations.vault.secrets.cubbyhole.CubbyholeSecurityProvider.CubbyholeSecretConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String path; private String key; diff --git a/integrations/vault/secrets/kv1/src/main/java/io/helidon/integrations/vault/secrets/kv1/Kv1SecurityProvider.java b/integrations/vault/secrets/kv1/src/main/java/io/helidon/integrations/vault/secrets/kv1/Kv1SecurityProvider.java index eae0b050a6e..377d003ca41 100644 --- a/integrations/vault/secrets/kv1/src/main/java/io/helidon/integrations/vault/secrets/kv1/Kv1SecurityProvider.java +++ b/integrations/vault/secrets/kv1/src/main/java/io/helidon/integrations/vault/secrets/kv1/Kv1SecurityProvider.java @@ -92,7 +92,7 @@ private GetKv1.Request request() { /** * Fluent API builder for {@link io.helidon.integrations.vault.secrets.kv1.Kv1SecurityProvider.Kv1SecretConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String path; private String key; diff --git a/integrations/vault/secrets/kv2/src/main/java/io/helidon/integrations/vault/secrets/kv2/Kv2SecurityProvider.java b/integrations/vault/secrets/kv2/src/main/java/io/helidon/integrations/vault/secrets/kv2/Kv2SecurityProvider.java index 87d0ff09757..c30f79b89ef 100644 --- a/integrations/vault/secrets/kv2/src/main/java/io/helidon/integrations/vault/secrets/kv2/Kv2SecurityProvider.java +++ b/integrations/vault/secrets/kv2/src/main/java/io/helidon/integrations/vault/secrets/kv2/Kv2SecurityProvider.java @@ -98,7 +98,7 @@ private GetKv2.Request request() { /** * Fluent API builder for {@link io.helidon.integrations.vault.secrets.kv2.Kv2SecurityProvider.Kv2SecretConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String path; private String key; private Integer version; diff --git a/integrations/vault/secrets/transit/src/main/java/io/helidon/integrations/vault/secrets/transit/TransitSecurityProvider.java b/integrations/vault/secrets/transit/src/main/java/io/helidon/integrations/vault/secrets/transit/TransitSecurityProvider.java index 94c727be383..4b87804bacd 100644 --- a/integrations/vault/secrets/transit/src/main/java/io/helidon/integrations/vault/secrets/transit/TransitSecurityProvider.java +++ b/integrations/vault/secrets/transit/src/main/java/io/helidon/integrations/vault/secrets/transit/TransitSecurityProvider.java @@ -200,7 +200,7 @@ Hmac.Request hmacRequest() { * Fluent API builder for * {@link io.helidon.integrations.vault.secrets.transit.TransitSecurityProvider.TransitDigestConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { /** * Digest is a signature. */ @@ -474,7 +474,7 @@ Decrypt.Request decryptionRequest() { * Fluent API builder for * {@link io.helidon.integrations.vault.secrets.transit.TransitSecurityProvider.TransitEncryptionConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private static final String CONFIG_KEY_KEY_NAME = "key-name"; private String keyName; diff --git a/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/Vault.java b/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/Vault.java index c4ffbfa6b5f..c0d6c8091c6 100644 --- a/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/Vault.java +++ b/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/Vault.java @@ -117,7 +117,7 @@ static Vault create(Config config) { /** * Fluent API builder for {@link Vault}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private static final Logger LOGGER = Logger.getLogger(Vault.class.getName()); private final HelidonServiceLoader.Builder vaultAuths diff --git a/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/VaultRestException.java b/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/VaultRestException.java index db3b26ed754..1ba297fda31 100644 --- a/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/VaultRestException.java +++ b/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/VaultRestException.java @@ -64,7 +64,7 @@ public void printStackTrace(PrintStream s) { * Fluent API builder for {@link io.helidon.integrations.vault.VaultRestException} * used by {@link io.helidon.integrations.common.rest.RestApiBase}. */ - public static class Builder extends BaseBuilder implements io.helidon.common.Builder { + public static class Builder extends BaseBuilder implements io.helidon.common.Builder { private final List vaultErrors = new LinkedList<>(); private Builder() { diff --git a/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/VaultTokenBase.java b/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/VaultTokenBase.java index b45256f5284..ced22602381 100644 --- a/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/VaultTokenBase.java +++ b/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/VaultTokenBase.java @@ -80,7 +80,7 @@ public boolean renewable() { * @param type of builder * @param type of token */ - public abstract static class Builder, T> implements io.helidon.common.Builder { + public abstract static class Builder, T> implements io.helidon.common.Builder { private Instant created = Instant.now(); private String token; private Duration leaseDuration; diff --git a/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/spi/InjectionProvider.java b/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/spi/InjectionProvider.java index 2a60f03c207..534091a9200 100644 --- a/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/spi/InjectionProvider.java +++ b/integrations/vault/vault/src/main/java/io/helidon/integrations/vault/spi/InjectionProvider.java @@ -142,7 +142,7 @@ public Optional vaultPath() { /** * Fluent API builder for {@link io.helidon.integrations.vault.spi.InjectionProvider.InstanceConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String vaultPath; private String vaultName; diff --git a/lra/coordinator/server/src/main/java/io/helidon/lra/coordinator/CoordinatorService.java b/lra/coordinator/server/src/main/java/io/helidon/lra/coordinator/CoordinatorService.java index a1889b13a31..da95aa49d71 100644 --- a/lra/coordinator/server/src/main/java/io/helidon/lra/coordinator/CoordinatorService.java +++ b/lra/coordinator/server/src/main/java/io/helidon/lra/coordinator/CoordinatorService.java @@ -425,7 +425,7 @@ public static Builder builder() { /** * Coordinator builder. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private Config config; private LraPersistentRegistry lraPersistentRegistry; diff --git a/media/common/src/main/java/io/helidon/media/common/DefaultMediaSupport.java b/media/common/src/main/java/io/helidon/media/common/DefaultMediaSupport.java index 9cc3bd07ef6..8d421dee14c 100644 --- a/media/common/src/main/java/io/helidon/media/common/DefaultMediaSupport.java +++ b/media/common/src/main/java/io/helidon/media/common/DefaultMediaSupport.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -188,7 +188,7 @@ public Collection> streamWriters() { /** * Default media support builder. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private boolean includeStackTraces = false; private RetrySchema schema; diff --git a/media/common/src/main/java/io/helidon/media/common/MediaContext.java b/media/common/src/main/java/io/helidon/media/common/MediaContext.java index 8b93b15de72..188dd12de5d 100644 --- a/media/common/src/main/java/io/helidon/media/common/MediaContext.java +++ b/media/common/src/main/java/io/helidon/media/common/MediaContext.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -100,7 +100,7 @@ public MessageBodyWriterContext writerContext() { /** * MediaSupport builder. */ - public static class Builder implements io.helidon.common.Builder, + public static class Builder implements io.helidon.common.Builder, MediaContextBuilder { private static final String SERVICE_NAME = "name"; diff --git a/media/jsonp/src/main/java/io/helidon/media/jsonp/JsonpSupport.java b/media/jsonp/src/main/java/io/helidon/media/jsonp/JsonpSupport.java index abd981c3b9a..88c8bb12a9a 100644 --- a/media/jsonp/src/main/java/io/helidon/media/jsonp/JsonpSupport.java +++ b/media/jsonp/src/main/java/io/helidon/media/jsonp/JsonpSupport.java @@ -271,7 +271,7 @@ public Collection> streamWriters() { /** * Fluent-API builder for {@link JsonpSupport}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private JsonWriterFactory jsonWriterFactory; private JsonReaderFactory jsonReaderFactory; diff --git a/media/multipart/src/main/java/io/helidon/media/multipart/ContentDisposition.java b/media/multipart/src/main/java/io/helidon/media/multipart/ContentDisposition.java index 55d4d4003ff..11ba9ba24b5 100644 --- a/media/multipart/src/main/java/io/helidon/media/multipart/ContentDisposition.java +++ b/media/multipart/src/main/java/io/helidon/media/multipart/ContentDisposition.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -259,7 +259,7 @@ static ContentDisposition parse(String input) { /** * Builder class to create {@link ContentDisposition} instances. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private String type = "form-data"; private final Map params = new HashMap<>(); diff --git a/media/multipart/src/main/java/io/helidon/media/multipart/ReadableBodyPart.java b/media/multipart/src/main/java/io/helidon/media/multipart/ReadableBodyPart.java index b762ef296ff..f8f7da67da4 100644 --- a/media/multipart/src/main/java/io/helidon/media/multipart/ReadableBodyPart.java +++ b/media/multipart/src/main/java/io/helidon/media/multipart/ReadableBodyPart.java @@ -104,7 +104,7 @@ public static Builder builder() { /** * Builder class for creating {@link BodyPart} instances. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private ReadableBodyPartHeaders headers; private MessageBodyReadableContent content; diff --git a/media/multipart/src/main/java/io/helidon/media/multipart/ReadableBodyPartHeaders.java b/media/multipart/src/main/java/io/helidon/media/multipart/ReadableBodyPartHeaders.java index 07c45ecdf25..42f825eccfe 100644 --- a/media/multipart/src/main/java/io/helidon/media/multipart/ReadableBodyPartHeaders.java +++ b/media/multipart/src/main/java/io/helidon/media/multipart/ReadableBodyPartHeaders.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -75,7 +75,7 @@ public static ReadableBodyPartHeaders create() { /** * Builder class to create {@link ReadableBodyPartHeaders} instances. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { /** * The headers map. diff --git a/media/multipart/src/main/java/io/helidon/media/multipart/WriteableBodyPart.java b/media/multipart/src/main/java/io/helidon/media/multipart/WriteableBodyPart.java index e96e5c2958c..69e18ffc099 100644 --- a/media/multipart/src/main/java/io/helidon/media/multipart/WriteableBodyPart.java +++ b/media/multipart/src/main/java/io/helidon/media/multipart/WriteableBodyPart.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -70,7 +70,7 @@ public static Builder builder() { /** * Builder class for creating {@link BodyPart} instances. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private static final WriteableBodyPartContent EMPTY_BODY_CONTENT = new RawBodyPartContent(Single.empty()); diff --git a/media/multipart/src/main/java/io/helidon/media/multipart/WriteableBodyPartHeaders.java b/media/multipart/src/main/java/io/helidon/media/multipart/WriteableBodyPartHeaders.java index 3100e4fd641..a4532d185aa 100644 --- a/media/multipart/src/main/java/io/helidon/media/multipart/WriteableBodyPartHeaders.java +++ b/media/multipart/src/main/java/io/helidon/media/multipart/WriteableBodyPartHeaders.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -93,7 +93,7 @@ public static WriteableBodyPartHeaders create() { /** * Builder class to create {@link WriteableBodyPartHeaders} instances. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { /** * The headers map. diff --git a/media/multipart/src/main/java/io/helidon/media/multipart/WriteableMultiPart.java b/media/multipart/src/main/java/io/helidon/media/multipart/WriteableMultiPart.java index 5c80b18c6b7..881c5f8645f 100644 --- a/media/multipart/src/main/java/io/helidon/media/multipart/WriteableMultiPart.java +++ b/media/multipart/src/main/java/io/helidon/media/multipart/WriteableMultiPart.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -78,7 +78,7 @@ public static Builder builder() { /** * Builder class for creating {@link WriteableMultiPart} instances. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final ArrayList bodyParts = new ArrayList<>(); diff --git a/messaging/connectors/aq/src/main/java/io/helidon/messaging/connectors/aq/AqConnector.java b/messaging/connectors/aq/src/main/java/io/helidon/messaging/connectors/aq/AqConnector.java index 3c5934ebb9e..09442dfa882 100644 --- a/messaging/connectors/aq/src/main/java/io/helidon/messaging/connectors/aq/AqConnector.java +++ b/messaging/connectors/aq/src/main/java/io/helidon/messaging/connectors/aq/AqConnector.java @@ -81,7 +81,7 @@ static AqConfigBuilder configBuilder() { /** * Builder for {@link AqConnectorImpl}. */ - class AqConnectorBuilder implements Builder { + class AqConnectorBuilder implements Builder { private final Map dataSourceMap = new HashMap<>(); private ScheduledExecutorService scheduler; diff --git a/messaging/connectors/jms/src/main/java/io/helidon/messaging/connectors/jms/JmsConnector.java b/messaging/connectors/jms/src/main/java/io/helidon/messaging/connectors/jms/JmsConnector.java index c844246f157..e6af2c8ba2c 100644 --- a/messaging/connectors/jms/src/main/java/io/helidon/messaging/connectors/jms/JmsConnector.java +++ b/messaging/connectors/jms/src/main/java/io/helidon/messaging/connectors/jms/JmsConnector.java @@ -549,7 +549,7 @@ Destination createDestination(Session session, ConnectionContext ctx) { /** * Builder for {@link io.helidon.messaging.connectors.jms.JmsConnector}. */ - public static class JmsConnectorBuilder implements Builder { + public static class JmsConnectorBuilder implements Builder { private final Map connectionFactoryMap = new HashMap<>(); private ScheduledExecutorService scheduler; diff --git a/messaging/connectors/jms/src/main/java/io/helidon/messaging/connectors/jms/JmsMessage.java b/messaging/connectors/jms/src/main/java/io/helidon/messaging/connectors/jms/JmsMessage.java index 9a482cf717d..6a833bc0f34 100644 --- a/messaging/connectors/jms/src/main/java/io/helidon/messaging/connectors/jms/JmsMessage.java +++ b/messaging/connectors/jms/src/main/java/io/helidon/messaging/connectors/jms/JmsMessage.java @@ -212,7 +212,7 @@ static OutgoingJmsMessageBuilder builder() { * * @param payload type */ - class OutgoingJmsMessageBuilder implements Builder> { + class OutgoingJmsMessageBuilder implements Builder, Message> { private final HashMap properties = new HashMap<>(); private final OutgoingJmsMessage message; diff --git a/messaging/kafka/src/main/java/io/helidon/messaging/connectors/kafka/KafkaPublisher.java b/messaging/kafka/src/main/java/io/helidon/messaging/connectors/kafka/KafkaPublisher.java index bc18feeeb8d..715d97c8ee5 100644 --- a/messaging/kafka/src/main/java/io/helidon/messaging/connectors/kafka/KafkaPublisher.java +++ b/messaging/kafka/src/main/java/io/helidon/messaging/connectors/kafka/KafkaPublisher.java @@ -339,7 +339,7 @@ public static KafkaPublisher create(Config config) { * @param Key type * @param Value type */ - public static final class Builder implements io.helidon.common.Builder> { + public static final class Builder implements io.helidon.common.Builder, KafkaPublisher> { private long pollTimeout = 50L; private long periodExecutions = 100L; diff --git a/messaging/kafka/src/main/java/io/helidon/messaging/connectors/kafka/KafkaSubscriber.java b/messaging/kafka/src/main/java/io/helidon/messaging/connectors/kafka/KafkaSubscriber.java index 18af54485f6..6e54d32174c 100644 --- a/messaging/kafka/src/main/java/io/helidon/messaging/connectors/kafka/KafkaSubscriber.java +++ b/messaging/kafka/src/main/java/io/helidon/messaging/connectors/kafka/KafkaSubscriber.java @@ -162,7 +162,7 @@ public static KafkaSubscriber create(Config config) { * @param Key type * @param Value type */ - public static final class Builder implements io.helidon.common.Builder> { + public static final class Builder implements io.helidon.common.Builder, KafkaSubscriber> { private Supplier> producerSupplier; private List topics; diff --git a/messaging/messaging/src/main/java/io/helidon/messaging/Channel.java b/messaging/messaging/src/main/java/io/helidon/messaging/Channel.java index dce66a4ecca..c20f71e4438 100644 --- a/messaging/messaging/src/main/java/io/helidon/messaging/Channel.java +++ b/messaging/messaging/src/main/java/io/helidon/messaging/Channel.java @@ -118,7 +118,7 @@ public static Channel.Builder builder() { * * @param message payload type */ - public static final class Builder implements io.helidon.common.Builder> { + public static final class Builder implements io.helidon.common.Builder, Channel> { private final Channel channel = new Channel<>(); diff --git a/messaging/messaging/src/main/java/io/helidon/messaging/ConnectorConfigBuilder.java b/messaging/messaging/src/main/java/io/helidon/messaging/ConnectorConfigBuilder.java index e8644b7c228..18c61c88296 100644 --- a/messaging/messaging/src/main/java/io/helidon/messaging/ConnectorConfigBuilder.java +++ b/messaging/messaging/src/main/java/io/helidon/messaging/ConnectorConfigBuilder.java @@ -26,7 +26,7 @@ /** * Detached configuration of a single connector. */ -public abstract class ConnectorConfigBuilder implements Builder { +public abstract class ConnectorConfigBuilder implements Builder { private final Map configuration = new HashMap<>(); protected ConnectorConfigBuilder() { diff --git a/messaging/messaging/src/main/java/io/helidon/messaging/Emitter.java b/messaging/messaging/src/main/java/io/helidon/messaging/Emitter.java index cc1cc869fce..b7fc45e2c48 100644 --- a/messaging/messaging/src/main/java/io/helidon/messaging/Emitter.java +++ b/messaging/messaging/src/main/java/io/helidon/messaging/Emitter.java @@ -167,7 +167,7 @@ public static Emitter.Builder builder() { * * @param message payload type */ - public static final class Builder implements io.helidon.common.Builder> { + public static final class Builder implements io.helidon.common.Builder, Emitter> { private final Emitter emitter = new Emitter<>(); diff --git a/messaging/messaging/src/main/java/io/helidon/messaging/Messaging.java b/messaging/messaging/src/main/java/io/helidon/messaging/Messaging.java index 3c8e37f113f..b1608f6ed3c 100644 --- a/messaging/messaging/src/main/java/io/helidon/messaging/Messaging.java +++ b/messaging/messaging/src/main/java/io/helidon/messaging/Messaging.java @@ -67,7 +67,7 @@ static Builder builder() { /** * Fluent API builder for {@link io.helidon.messaging.Messaging}. */ - final class Builder implements io.helidon.common.Builder { + final class Builder implements io.helidon.common.Builder { private static final Logger LOGGER = Logger.getLogger(Messaging.class.getName()); diff --git a/metrics/api/src/main/java/io/helidon/metrics/api/BaseMetricsSettings.java b/metrics/api/src/main/java/io/helidon/metrics/api/BaseMetricsSettings.java index 53e22ec57e4..4cc7b0ae030 100644 --- a/metrics/api/src/main/java/io/helidon/metrics/api/BaseMetricsSettings.java +++ b/metrics/api/src/main/java/io/helidon/metrics/api/BaseMetricsSettings.java @@ -98,7 +98,7 @@ static Builder builder(BaseMetricsSettings baseMetricsSettings) { * Builder for {@code BaseMetricsSettings}. */ @Configured(prefix = MetricsSettings.Builder.METRICS_CONFIG_KEY + "." + Builder.BASE_METRICS_CONFIG_KEY) - interface Builder extends io.helidon.common.Builder { + interface Builder extends io.helidon.common.Builder { /** * Config key within the config {@code metrics} section controlling base metrics behavior. diff --git a/metrics/api/src/main/java/io/helidon/metrics/api/ComponentMetricsSettings.java b/metrics/api/src/main/java/io/helidon/metrics/api/ComponentMetricsSettings.java index 40eada852a3..1f4c53faeb8 100644 --- a/metrics/api/src/main/java/io/helidon/metrics/api/ComponentMetricsSettings.java +++ b/metrics/api/src/main/java/io/helidon/metrics/api/ComponentMetricsSettings.java @@ -68,7 +68,7 @@ static ComponentMetricsSettings.Builder builder(Config componentMetricsConfig) { * Builder for {@code ComponentMetricsSettings}. */ @Configured(prefix = Builder.METRICS_CONFIG_KEY) - interface Builder extends io.helidon.common.Builder { + interface Builder extends io.helidon.common.Builder { /** * By convention, the config key within the component's config section containing metrics settings for the component. diff --git a/metrics/api/src/main/java/io/helidon/metrics/api/KeyPerformanceIndicatorMetricsSettings.java b/metrics/api/src/main/java/io/helidon/metrics/api/KeyPerformanceIndicatorMetricsSettings.java index 8acfbe5aa8e..e7c1e73c0a7 100644 --- a/metrics/api/src/main/java/io/helidon/metrics/api/KeyPerformanceIndicatorMetricsSettings.java +++ b/metrics/api/src/main/java/io/helidon/metrics/api/KeyPerformanceIndicatorMetricsSettings.java @@ -104,7 +104,7 @@ static Builder builder(KeyPerformanceIndicatorMetricsSettings kpiMetricsSettings * */ @Configured(prefix = MetricsSettings.Builder.METRICS_CONFIG_KEY + "." + Builder.KEY_PERFORMANCE_INDICATORS_CONFIG_KEY) - interface Builder extends io.helidon.common.Builder { + interface Builder extends io.helidon.common.Builder { /** * Config key for extended key performance indicator metrics settings. */ diff --git a/metrics/api/src/main/java/io/helidon/metrics/api/MetricsSettings.java b/metrics/api/src/main/java/io/helidon/metrics/api/MetricsSettings.java index b1ce855d560..88a359f61ac 100644 --- a/metrics/api/src/main/java/io/helidon/metrics/api/MetricsSettings.java +++ b/metrics/api/src/main/java/io/helidon/metrics/api/MetricsSettings.java @@ -109,7 +109,7 @@ static Builder builder(MetricsSettings metricsSettings) { * Builder for {@code MetricsSettings}. */ @Configured(prefix = Builder.METRICS_CONFIG_KEY) - interface Builder extends io.helidon.common.Builder { + interface Builder extends io.helidon.common.Builder { /** * Config key within the config {@code metrics} section controlling whether metrics are enabled. diff --git a/metrics/api/src/main/java/io/helidon/metrics/api/RegistryFilterSettings.java b/metrics/api/src/main/java/io/helidon/metrics/api/RegistryFilterSettings.java index 3aa53701250..346efda292d 100644 --- a/metrics/api/src/main/java/io/helidon/metrics/api/RegistryFilterSettings.java +++ b/metrics/api/src/main/java/io/helidon/metrics/api/RegistryFilterSettings.java @@ -64,7 +64,7 @@ static RegistryFilterSettings create() { * Builder for a new {@code RegistryFilterSettings} instance. */ @Configured - interface Builder extends io.helidon.common.Builder { + interface Builder extends io.helidon.common.Builder { /** * Returns a new builder initialized according to the specific configuration. diff --git a/metrics/api/src/main/java/io/helidon/metrics/api/RegistrySettings.java b/metrics/api/src/main/java/io/helidon/metrics/api/RegistrySettings.java index 06c68efe3b4..d01315bb0c9 100644 --- a/metrics/api/src/main/java/io/helidon/metrics/api/RegistrySettings.java +++ b/metrics/api/src/main/java/io/helidon/metrics/api/RegistrySettings.java @@ -80,7 +80,7 @@ static Builder builder() { * Builder for {@code RegistrySettings}. */ @Configured(prefix = MetricsSettings.Builder.METRICS_CONFIG_KEY + "." + "") - interface Builder extends io.helidon.common.Builder { + interface Builder extends io.helidon.common.Builder { /** * Config key within the registry's config section controlling whether the current type of metrics should be enabled. diff --git a/metrics/metrics/src/main/java/io/helidon/metrics/MetricsSupport.java b/metrics/metrics/src/main/java/io/helidon/metrics/MetricsSupport.java index 4faa9f7b15d..ae88e12e9de 100644 --- a/metrics/metrics/src/main/java/io/helidon/metrics/MetricsSupport.java +++ b/metrics/metrics/src/main/java/io/helidon/metrics/MetricsSupport.java @@ -575,8 +575,8 @@ private void optionsOne(ServerRequest req, ServerResponse res, Registry registry /** * A fluent API builder to build instances of {@link MetricsSupport}. */ - public static class Builder extends HelidonRestServiceSupport.Builder - implements io.helidon.metrics.serviceapi.MetricsSupport.Builder { + public static class Builder extends HelidonRestServiceSupport.Builder + implements io.helidon.metrics.serviceapi.MetricsSupport.Builder { private Supplier registryFactory; private MetricsSettings.Builder metricsSettingsBuilder = MetricsSettings.builder(); diff --git a/metrics/metrics/src/main/java/io/helidon/metrics/MetricsSupportProviderImpl.java b/metrics/metrics/src/main/java/io/helidon/metrics/MetricsSupportProviderImpl.java index 1b64eac4273..b5c89cec93f 100644 --- a/metrics/metrics/src/main/java/io/helidon/metrics/MetricsSupportProviderImpl.java +++ b/metrics/metrics/src/main/java/io/helidon/metrics/MetricsSupportProviderImpl.java @@ -22,7 +22,7 @@ /** * Provider which furnishes a builder for {@link MetricsSupport} instances. */ -public class MetricsSupportProviderImpl implements MetricsSupportProvider { +public class MetricsSupportProviderImpl implements MetricsSupportProvider { @Override public MetricsSupport.Builder builder() { diff --git a/metrics/prometheus/src/main/java/io/helidon/metrics/prometheus/PrometheusSupport.java b/metrics/prometheus/src/main/java/io/helidon/metrics/prometheus/PrometheusSupport.java index b722c7b4b2f..8fdf92a577d 100644 --- a/metrics/prometheus/src/main/java/io/helidon/metrics/prometheus/PrometheusSupport.java +++ b/metrics/prometheus/src/main/java/io/helidon/metrics/prometheus/PrometheusSupport.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -199,7 +199,7 @@ public static Builder builder() { /** * A builder of {@link PrometheusSupport}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private CollectorRegistry registry = CollectorRegistry.defaultRegistry; private String path; diff --git a/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MetricsSupport.java b/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MetricsSupport.java index 22a924ed089..9f6b3274527 100644 --- a/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MetricsSupport.java +++ b/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MetricsSupport.java @@ -129,9 +129,10 @@ static RestServiceSettings.Builder defaultedMetricsRestServiceSettingsBuilder() * Callers can influence how {@code MetricsSupport} behaves by assigning {@link io.helidon.metrics.api.MetricsSettings}. *

* + * @param builder type * @param specific implementation type of {@code MetricsSupport} */ - interface Builder extends io.helidon.common.Builder { + interface Builder, T extends MetricsSupport> extends io.helidon.common.Builder { /** * Returns the new {@code MetricsSupport} instance according to the builder's settings. @@ -146,7 +147,7 @@ interface Builder extends io.helidon.common.Builder * @param metricsSettingsBuilder the metrics settings to assign for use in building the {@code MetricsSupport} instance * @return updated builder */ - Builder metricsSettings(MetricsSettings.Builder metricsSettingsBuilder); + B metricsSettings(MetricsSettings.Builder metricsSettingsBuilder); /** * Set the REST service settings. @@ -156,6 +157,6 @@ interface Builder extends io.helidon.common.Builder */ @ConfiguredOption(mergeWithParent = true, kind = ConfiguredOption.Kind.MAP) - Builder restServiceSettings(RestServiceSettings.Builder restServiceSettingsBuilder); + B restServiceSettings(RestServiceSettings.Builder restServiceSettingsBuilder); } } diff --git a/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MetricsSupportManager.java b/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MetricsSupportManager.java index 57df11dc390..0c89c47673e 100644 --- a/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MetricsSupportManager.java +++ b/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MetricsSupportManager.java @@ -37,14 +37,15 @@ class MetricsSupportManager { private static final Logger LOGGER = Logger.getLogger(MetricsSupportManager.class.getName()); - private static final LazyValue> LAZY_PROVIDER = + @SuppressWarnings("unchecked") + private static final LazyValue> LAZY_PROVIDER = LazyValue.create(MetricsSupportManager::loadMetricsSupportProvider); private MetricsSupportManager() { } - private static MetricsSupportProvider loadMetricsSupportProvider() { - MetricsSupportProvider provider = HelidonServiceLoader.builder(ServiceLoader.load(MetricsSupportProvider.class)) + private static MetricsSupportProvider loadMetricsSupportProvider() { + MetricsSupportProvider provider = HelidonServiceLoader.builder(ServiceLoader.load(MetricsSupportProvider.class)) .addService(new MinimalMetricsSupportProviderImpl(), Integer.MAX_VALUE) .build() .asList() @@ -54,12 +55,13 @@ private static MetricsSupportProvider loadMetricsSupportProvider() { } static MetricsSupport create() { - return LAZY_PROVIDER.get().builder() + return LAZY_PROVIDER.get() + .builder() .restServiceSettings(MetricsSupport.defaultedMetricsRestServiceSettingsBuilder()) .build(); } - static MetricsSupport.Builder builder() { + static MetricsSupport.Builder builder() { return LAZY_PROVIDER.get() .builder() .restServiceSettings(MetricsSupport.defaultedMetricsRestServiceSettingsBuilder()); diff --git a/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MinimalMetricsSupport.java b/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MinimalMetricsSupport.java index fce288e4587..73bd742826b 100644 --- a/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MinimalMetricsSupport.java +++ b/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MinimalMetricsSupport.java @@ -117,7 +117,7 @@ private MinimalMetricsSupport(Logger logger, RestServiceSettings restServiceSett this.restServiceSettings = restServiceSettings; } - static class Builder implements MetricsSupport.Builder { + static class Builder implements MetricsSupport.Builder { private RestServiceSettings.Builder restServiceSettingsBuilder = RestServiceSettings.builder() .webContext("/metrics"); @@ -128,7 +128,7 @@ public Builder metricsSettings(MetricsSettings.Builder metricsSettingsBuilder) { } @Override - public MetricsSupport.Builder restServiceSettings( + public Builder restServiceSettings( RestServiceSettings.Builder restServiceSettingsBuilder) { this.restServiceSettingsBuilder = restServiceSettingsBuilder; return this; diff --git a/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MinimalMetricsSupportProviderImpl.java b/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MinimalMetricsSupportProviderImpl.java index 3b152b5f016..251e9c07eee 100644 --- a/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MinimalMetricsSupportProviderImpl.java +++ b/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/MinimalMetricsSupportProviderImpl.java @@ -22,10 +22,10 @@ /** * Provider of minimal web support for metrics. */ -class MinimalMetricsSupportProviderImpl implements MetricsSupportProvider { +class MinimalMetricsSupportProviderImpl implements MetricsSupportProvider { @Override - public MetricsSupport.Builder builder() { + public MinimalMetricsSupport.Builder builder() { return MinimalMetricsSupport.builder(); } diff --git a/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/spi/MetricsSupportProvider.java b/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/spi/MetricsSupportProvider.java index 9ec9cb0751b..1e7c70e658d 100644 --- a/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/spi/MetricsSupportProvider.java +++ b/metrics/service-api/src/main/java/io/helidon/metrics/serviceapi/spi/MetricsSupportProvider.java @@ -22,15 +22,16 @@ /** * Provider behavior for {@link io.helidon.metrics.serviceapi.MetricsSupport.Builder} instances (and, indirectly, for {@link io.helidon.metrics.serviceapi.MetricsSupport} instances). * + * @param builder type * @param implementation type of {@link io.helidon.metrics.serviceapi.MetricsSupport} */ -public interface MetricsSupportProvider { +public interface MetricsSupportProvider, T extends MetricsSupport> { /** * * @return a new {@link MetricsSupport.Builder} for a specific implementation type of {@code MetricsSupport} */ - T.Builder builder(); + B builder(); /** * Create a new instance of the specific type of {@link MetricsSupport}. diff --git a/metrics/service-api/src/test/java/io/helidon/metrics/serviceapi/MyMetricsServiceSupport.java b/metrics/service-api/src/test/java/io/helidon/metrics/serviceapi/MyMetricsServiceSupport.java index ae7be2e061b..680485cc932 100644 --- a/metrics/service-api/src/test/java/io/helidon/metrics/serviceapi/MyMetricsServiceSupport.java +++ b/metrics/service-api/src/test/java/io/helidon/metrics/serviceapi/MyMetricsServiceSupport.java @@ -62,7 +62,7 @@ long getCount() { return counter.getCount(); } - public static class Builder extends HelidonRestServiceSupport.Builder { + public static class Builder extends HelidonRestServiceSupport.Builder { private ComponentMetricsSettings.Builder componentMetricsSettingsBuilder = ComponentMetricsSettings.builder(); diff --git a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/Schema.java b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/Schema.java index 965814f37e9..f26b3a8da83 100644 --- a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/Schema.java +++ b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/Schema.java @@ -507,7 +507,7 @@ public String getMutationName() { /** * A fluent API {@link io.helidon.common.Builder} to build instances of {@link Schema}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String queryName; private String mutationName; diff --git a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaArgument.java b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaArgument.java index 7e50a43bf0b..e32cb010349 100644 --- a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaArgument.java +++ b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaArgument.java @@ -385,7 +385,7 @@ public int hashCode() { /** * A fluent API {@link io.helidon.common.Builder} to build instances of {@link SchemaArgument}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String argumentName; private String argumentType; diff --git a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaDirective.java b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaDirective.java index 997e3db082d..f2744ad88be 100644 --- a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaDirective.java +++ b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaDirective.java @@ -170,7 +170,7 @@ public String toString() { /** * A fluent API {@link io.helidon.common.Builder} to build instances of {@link SchemaDirective}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String name; private List listSchemaArguments = new ArrayList<>(); diff --git a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaEnum.java b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaEnum.java index 5627530c3e2..d776fafbb12 100644 --- a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaEnum.java +++ b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaEnum.java @@ -113,7 +113,7 @@ public String toString() { /** * A fluent API {@link io.helidon.common.Builder} to build instances of {@link SchemaDirective}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String name; private List values = new ArrayList<>(); diff --git a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaFieldDefinition.java b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaFieldDefinition.java index 81b108450fb..06864ce4fe8 100644 --- a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaFieldDefinition.java +++ b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaFieldDefinition.java @@ -440,7 +440,7 @@ public String toString() { /** * A fluent API {@link io.helidon.common.Builder} to build instances of {@link SchemaFieldDefinition}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String name; private String returnType; private boolean isArrayReturnType; diff --git a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaGenerator.java b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaGenerator.java index 84a95c91ab9..94b3890a02a 100644 --- a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaGenerator.java +++ b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaGenerator.java @@ -1408,7 +1408,7 @@ protected JandexUtils getJandexUtils() { /** * A fluent API {@link io.helidon.common.Builder} to build instances of {@link SchemaGenerator}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private final Set> collectedApis = new HashSet<>(); @@ -1709,7 +1709,7 @@ public String[] format() { /** * A fluent API {@link io.helidon.common.Builder} to build instances of {@link DiscoveredMethod}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String rootTypeName; private int levels; diff --git a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaGeneratorHelper.java b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaGeneratorHelper.java index 8147944f7f2..4d942a259ca 100644 --- a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaGeneratorHelper.java +++ b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaGeneratorHelper.java @@ -1734,7 +1734,7 @@ public int hashCode() { /** * A fluent API {@link io.helidon.common.Builder} to build instances of {@link DiscoveredMethod}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String name; private String returnType; private int methodType; diff --git a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaType.java b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaType.java index b902cfeb43a..7eb16cced8e 100644 --- a/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaType.java +++ b/microprofile/graphql/server/src/main/java/io/helidon/microprofile/graphql/server/SchemaType.java @@ -291,7 +291,7 @@ protected String getGraphQLName() { /** * A fluent API {@link io.helidon.common.Builder} to build instances of {@link SchemaType}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private String name; private String valueClassName; diff --git a/microprofile/grpc/client/src/main/java/io/helidon/microprofile/grpc/client/GrpcClientBuilder.java b/microprofile/grpc/client/src/main/java/io/helidon/microprofile/grpc/client/GrpcClientBuilder.java index 3c2da6e2a4a..3a588c7f67a 100644 --- a/microprofile/grpc/client/src/main/java/io/helidon/microprofile/grpc/client/GrpcClientBuilder.java +++ b/microprofile/grpc/client/src/main/java/io/helidon/microprofile/grpc/client/GrpcClientBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -40,7 +40,7 @@ */ class GrpcClientBuilder extends AbstractServiceBuilder - implements Builder { + implements Builder { private static final Logger LOGGER = Logger.getLogger(GrpcClientBuilder.class.getName()); diff --git a/microprofile/grpc/client/src/main/java/io/helidon/microprofile/grpc/client/GrpcProxyBuilder.java b/microprofile/grpc/client/src/main/java/io/helidon/microprofile/grpc/client/GrpcProxyBuilder.java index 1c0f802d9cd..991a4828816 100644 --- a/microprofile/grpc/client/src/main/java/io/helidon/microprofile/grpc/client/GrpcProxyBuilder.java +++ b/microprofile/grpc/client/src/main/java/io/helidon/microprofile/grpc/client/GrpcProxyBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -32,7 +32,7 @@ * @param the type of the interface to be proxied */ public class GrpcProxyBuilder - implements Builder { + implements Builder, T> { private static final Map, ClientServiceDescriptor> DESCRIPTORS = new ConcurrentHashMap<>(); diff --git a/microprofile/grpc/server/src/main/java/io/helidon/microprofile/grpc/server/GrpcServiceBuilder.java b/microprofile/grpc/server/src/main/java/io/helidon/microprofile/grpc/server/GrpcServiceBuilder.java index 5ecae4b3388..057a4323b72 100644 --- a/microprofile/grpc/server/src/main/java/io/helidon/microprofile/grpc/server/GrpcServiceBuilder.java +++ b/microprofile/grpc/server/src/main/java/io/helidon/microprofile/grpc/server/GrpcServiceBuilder.java @@ -56,7 +56,7 @@ */ public class GrpcServiceBuilder extends AbstractServiceBuilder - implements Builder { + implements Builder { private static final Logger LOGGER = Logger.getLogger(GrpcServiceBuilder.class.getName()); diff --git a/microprofile/jwt-auth/src/main/java/io/helidon/microprofile/jwt/auth/JwtAuthProvider.java b/microprofile/jwt-auth/src/main/java/io/helidon/microprofile/jwt/auth/JwtAuthProvider.java index 2e85a507b0e..d3d46fa9dbf 100644 --- a/microprofile/jwt-auth/src/main/java/io/helidon/microprofile/jwt/auth/JwtAuthProvider.java +++ b/microprofile/jwt-auth/src/main/java/io/helidon/microprofile/jwt/auth/JwtAuthProvider.java @@ -580,7 +580,7 @@ private void update(Jwt.Builder builder) { /** * Fluent API builder for {@link JwtAuthProvider}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private static final String CONFIG_PUBLIC_KEY = "mp.jwt.verify.publickey"; private static final String CONFIG_PUBLIC_KEY_PATH = "mp.jwt.verify.publickey.location"; private static final String CONFIG_JWT_DECRYPT_KEY_LOCATION = "mp.jwt.decrypt.key.location"; diff --git a/openapi/src/main/java/io/helidon/openapi/OpenAPISupport.java b/openapi/src/main/java/io/helidon/openapi/OpenAPISupport.java index 1e16c02cb66..86c83611880 100644 --- a/openapi/src/main/java/io/helidon/openapi/OpenAPISupport.java +++ b/openapi/src/main/java/io/helidon/openapi/OpenAPISupport.java @@ -671,7 +671,7 @@ static SEOpenAPISupportBuilder builderSE() { * * @param concrete subclass of OpenAPISupport.Builder */ - public abstract static class Builder> implements io.helidon.common.Builder { + public abstract static class Builder> implements io.helidon.common.Builder { /** * Config key to select the openapi node from Helidon config. diff --git a/openapi/src/main/java/io/helidon/openapi/internal/OpenAPIConfigImpl.java b/openapi/src/main/java/io/helidon/openapi/internal/OpenAPIConfigImpl.java index 21ea0ced09f..9b0aa38ca6e 100644 --- a/openapi/src/main/java/io/helidon/openapi/internal/OpenAPIConfigImpl.java +++ b/openapi/src/main/java/io/helidon/openapi/internal/OpenAPIConfigImpl.java @@ -188,7 +188,7 @@ private static Set chooseEntry(Map> map, T key) { * {@value SERVERS_OPERATION} * */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private static final Logger LOGGER = Logger.getLogger(Builder.class.getName()); diff --git a/scheduling/src/main/java/io/helidon/scheduling/Scheduling.java b/scheduling/src/main/java/io/helidon/scheduling/Scheduling.java index facc2833ab0..e515838ce42 100644 --- a/scheduling/src/main/java/io/helidon/scheduling/Scheduling.java +++ b/scheduling/src/main/java/io/helidon/scheduling/Scheduling.java @@ -65,7 +65,7 @@ public static CronBuilder cronBuilder() { /** * Builder for task executed periodically at a fixed rate. */ - public static final class FixedRateBuilder implements io.helidon.common.Builder { + public static final class FixedRateBuilder implements io.helidon.common.Builder { private ScheduledExecutorService executorService; private long initialDelay = 0; @@ -159,7 +159,7 @@ public Task build() { /** * Builder for task executed periodically according to provided cron expression. */ - public static final class CronBuilder implements io.helidon.common.Builder { + public static final class CronBuilder implements io.helidon.common.Builder { static final String DEFAULT_THREAD_NAME_PREFIX = "scheduled-"; diff --git a/security/abac/policy-el/src/main/java/io/helidon/security/abac/policy/el/JavaxElPolicyExecutor.java b/security/abac/policy-el/src/main/java/io/helidon/security/abac/policy/el/JavaxElPolicyExecutor.java index 6e49d764360..1a4b13465ec 100644 --- a/security/abac/policy-el/src/main/java/io/helidon/security/abac/policy/el/JavaxElPolicyExecutor.java +++ b/security/abac/policy-el/src/main/java/io/helidon/security/abac/policy/el/JavaxElPolicyExecutor.java @@ -124,7 +124,7 @@ private void variable(VariableMapper variables, String varName, T object, Cl /** * A fluent API builder for {@link JavaxElPolicyExecutor}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final List customMethods = new LinkedList<>(); private ExpressionFactory expressionFactory; diff --git a/security/abac/policy/src/main/java/io/helidon/security/abac/policy/PolicyValidator.java b/security/abac/policy/src/main/java/io/helidon/security/abac/policy/PolicyValidator.java index 8d5a723b66a..3fecb691b17 100644 --- a/security/abac/policy/src/main/java/io/helidon/security/abac/policy/PolicyValidator.java +++ b/security/abac/policy/src/main/java/io/helidon/security/abac/policy/PolicyValidator.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, 2020 Oracle and/or its affiliates. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -208,7 +208,7 @@ public void validate(PolicyConfig config, Errors.Collector collector, ProviderRe /** * A fluent API builder for {@link PolicyValidator}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final List executors = new LinkedList<>(); private Config config = Config.empty(); @@ -316,7 +316,7 @@ public boolean shouldInherit() { /** * A fluent API builder for {@link PolicyConfig}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final List policyStatements = new LinkedList<>(); private boolean inherit = true; diff --git a/security/abac/role/src/main/java/io/helidon/security/abac/role/RoleValidator.java b/security/abac/role/src/main/java/io/helidon/security/abac/role/RoleValidator.java index bceafdc9c8b..01b977a6c86 100644 --- a/security/abac/role/src/main/java/io/helidon/security/abac/role/RoleValidator.java +++ b/security/abac/role/src/main/java/io/helidon/security/abac/role/RoleValidator.java @@ -327,7 +327,7 @@ public boolean denyAll() { /** * A fluent API builder for {@link RoleConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private final Set userRolesAllowed = new LinkedHashSet<>(); private final Set serviceRolesAllowed = new LinkedHashSet<>(); private boolean permitAll = false; diff --git a/security/abac/scope/src/main/java/io/helidon/security/abac/scope/ScopeValidator.java b/security/abac/scope/src/main/java/io/helidon/security/abac/scope/ScopeValidator.java index 7045767e358..384a5a1fdc8 100644 --- a/security/abac/scope/src/main/java/io/helidon/security/abac/scope/ScopeValidator.java +++ b/security/abac/scope/src/main/java/io/helidon/security/abac/scope/ScopeValidator.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, 2020 Oracle and/or its affiliates. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -212,7 +212,7 @@ public void validate(ScopesConfig config, Errors.Collector collector, ProviderRe /** * A fluent API builder for {@link ScopeValidator}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private boolean useOrOperator = false; private Builder() { diff --git a/security/abac/time/src/main/java/io/helidon/security/abac/time/TimeValidator.java b/security/abac/time/src/main/java/io/helidon/security/abac/time/TimeValidator.java index 68237031123..50aa033caf4 100644 --- a/security/abac/time/src/main/java/io/helidon/security/abac/time/TimeValidator.java +++ b/security/abac/time/src/main/java/io/helidon/security/abac/time/TimeValidator.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, 2020 Oracle and/or its affiliates. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -297,7 +297,7 @@ public String toString() { /** * Fluent API builder for {@link TimeConfig}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final List betweenTimes = new ArrayList<>(); private final Set daysOfWeek = EnumSet.noneOf(DayOfWeek.class); diff --git a/security/integration/grpc/src/main/java/io/helidon/security/integration/grpc/GrpcClientSecurity.java b/security/integration/grpc/src/main/java/io/helidon/security/integration/grpc/GrpcClientSecurity.java index f057574c5f5..4a5ab7d254f 100644 --- a/security/integration/grpc/src/main/java/io/helidon/security/integration/grpc/GrpcClientSecurity.java +++ b/security/integration/grpc/src/main/java/io/helidon/security/integration/grpc/GrpcClientSecurity.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -187,7 +187,7 @@ private static SecurityContext getContext(ServerRequest req) { * A builder of {@link GrpcClientSecurity} instances. */ public static final class Builder - implements io.helidon.common.Builder { + implements io.helidon.common.Builder { private final SecurityContext securityContext; diff --git a/security/integration/grpc/src/main/java/io/helidon/security/integration/grpc/GrpcSecurityHandler.java b/security/integration/grpc/src/main/java/io/helidon/security/integration/grpc/GrpcSecurityHandler.java index 0b6d642e390..7920b679113 100644 --- a/security/integration/grpc/src/main/java/io/helidon/security/integration/grpc/GrpcSecurityHandler.java +++ b/security/integration/grpc/src/main/java/io/helidon/security/integration/grpc/GrpcSecurityHandler.java @@ -872,7 +872,7 @@ private AtxResult(SecurityRequest ignored) { // WARNING: builder methods must not have side-effects, as they are used to build instance from configuration // if you want side effects, use methods on GrpcSecurityInterceptor - private static final class Builder implements io.helidon.common.Builder { + private static final class Builder implements io.helidon.common.Builder { private Optional> rolesAllowed = Optional.empty(); private Optional> customObjects = Optional.empty(); private Optional config = Optional.empty(); diff --git a/security/integration/jersey/src/main/java/io/helidon/security/integration/jersey/SecurityFeature.java b/security/integration/jersey/src/main/java/io/helidon/security/integration/jersey/SecurityFeature.java index eb55bb1a7b2..59b9a06134f 100644 --- a/security/integration/jersey/src/main/java/io/helidon/security/integration/jersey/SecurityFeature.java +++ b/security/integration/jersey/src/main/java/io/helidon/security/integration/jersey/SecurityFeature.java @@ -128,7 +128,7 @@ FeatureConfig featureConfig() { /** * {@link SecurityFeature} fluent API builder. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final Security security; private final List queryParamHandlers = new LinkedList<>(); private boolean authorizeAnnotatedOnly = FeatureConfig.DEFAULT_ATZ_ANNOTATED_ONLY; diff --git a/security/integration/webserver/src/main/java/io/helidon/security/integration/webserver/SecurityHandler.java b/security/integration/webserver/src/main/java/io/helidon/security/integration/webserver/SecurityHandler.java index 17af53bd7a2..0341c2d7bfa 100644 --- a/security/integration/webserver/src/main/java/io/helidon/security/integration/webserver/SecurityHandler.java +++ b/security/integration/webserver/src/main/java/io/helidon/security/integration/webserver/SecurityHandler.java @@ -857,7 +857,7 @@ private AtxResult(SecurityRequest ignored) { // WARNING: builder methods must not have side-effects, as they are used to build instance from configuration // if you want side effects, use methods on SecurityHandler - private static final class Builder implements io.helidon.common.Builder { + private static final class Builder implements io.helidon.common.Builder { private final List queryParamHandlers = new LinkedList<>(); private Optional> rolesAllowed = Optional.empty(); private Optional> customObjects = Optional.empty(); diff --git a/security/jwt/src/main/java/io/helidon/security/jwt/EncryptedJwt.java b/security/jwt/src/main/java/io/helidon/security/jwt/EncryptedJwt.java index 7a873eaf296..8134f492892 100644 --- a/security/jwt/src/main/java/io/helidon/security/jwt/EncryptedJwt.java +++ b/security/jwt/src/main/java/io/helidon/security/jwt/EncryptedJwt.java @@ -418,7 +418,7 @@ public byte[] encryptedPayload() { /** * Encrypted JWT builder. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private final SignedJwt jwt; private final JwtHeaders.Builder headersBuilder = JwtHeaders.builder(); diff --git a/security/jwt/src/main/java/io/helidon/security/jwt/Jwt.java b/security/jwt/src/main/java/io/helidon/security/jwt/Jwt.java index 88dfa52943c..8d500f2e2c7 100644 --- a/security/jwt/src/main/java/io/helidon/security/jwt/Jwt.java +++ b/security/jwt/src/main/java/io/helidon/security/jwt/Jwt.java @@ -1313,7 +1313,7 @@ public void validate(Jwt token, Errors.Collector collector) { /** * Builder of a {@link Jwt}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final JwtHeaders.Builder headerBuilder = JwtHeaders.builder(); private final Map payloadClaims = new HashMap<>(); private Optional issuer = Optional.empty(); diff --git a/security/jwt/src/main/java/io/helidon/security/jwt/JwtHeaders.java b/security/jwt/src/main/java/io/helidon/security/jwt/JwtHeaders.java index 36de576f1d7..19062647795 100644 --- a/security/jwt/src/main/java/io/helidon/security/jwt/JwtHeaders.java +++ b/security/jwt/src/main/java/io/helidon/security/jwt/JwtHeaders.java @@ -227,7 +227,7 @@ public Optional> audience() { /** * Fluent API builder to create JWT Header. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private static final GenericType> STRING_LIST_TYPE = new GenericType>() { }; private static final GenericType STRING_TYPE = GenericType.create(String.class); diff --git a/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkEC.java b/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkEC.java index 39203c39cec..416ccbcf70e 100644 --- a/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkEC.java +++ b/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkEC.java @@ -306,7 +306,7 @@ private void writeLength(OutputStream os, int length) throws IOException { /** * Builder for {@link JwkEC}. */ - public static final class Builder extends JwkPki.Builder implements io.helidon.common.Builder { + public static final class Builder extends JwkPki.Builder implements io.helidon.common.Builder { private PrivateKey privateKey; private PublicKey publicKey; private String defaultAlg = ALG_ES256; diff --git a/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkKeys.java b/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkKeys.java index cd0785b9583..03f1a76ecf0 100644 --- a/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkKeys.java +++ b/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkKeys.java @@ -105,7 +105,7 @@ public List keys() { /** * Builder of {@link JwkKeys}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final List noKeyIdKeys = new LinkedList<>(); private final Map keyMap = new HashMap<>(); diff --git a/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkOctet.java b/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkOctet.java index 2452afe76fc..89c3a1d959c 100644 --- a/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkOctet.java +++ b/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkOctet.java @@ -154,7 +154,7 @@ private String getSignatureAlgorithm() { /** * Builder for {@link JwkOctet}. */ - public static final class Builder extends Jwk.Builder implements io.helidon.common.Builder { + public static final class Builder extends Jwk.Builder implements io.helidon.common.Builder { private byte[] key; private Builder() { diff --git a/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkRSA.java b/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkRSA.java index c011a8bdef8..a69bdec5eb0 100644 --- a/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkRSA.java +++ b/security/jwt/src/main/java/io/helidon/security/jwt/jwk/JwkRSA.java @@ -168,7 +168,7 @@ String signatureAlgorithm() { /** * Builder for {@link JwkRSA}. */ - public static final class Builder extends JwkPki.Builder implements io.helidon.common.Builder { + public static final class Builder extends JwkPki.Builder implements io.helidon.common.Builder { private PrivateKey privateKey; private PublicKey publicKey; diff --git a/security/providers/abac/src/main/java/io/helidon/security/providers/abac/AbacProvider.java b/security/providers/abac/src/main/java/io/helidon/security/providers/abac/AbacProvider.java index 0c8c27f0ca2..3658a0aba33 100644 --- a/security/providers/abac/src/main/java/io/helidon/security/providers/abac/AbacProvider.java +++ b/security/providers/abac/src/main/java/io/helidon/security/providers/abac/AbacProvider.java @@ -339,7 +339,7 @@ private boolean isSupportedAnnotation(Class type) { @Configured(prefix = "abac", description = "Attribute Based Access Control provider", provides = {SecurityProvider.class, AuthorizationProvider.class}) - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final List> validators = new ArrayList<>(); private Config config = Config.empty(); private boolean failOnUnvalidated = true; diff --git a/security/providers/common/src/main/java/io/helidon/security/providers/common/EvictableCache.java b/security/providers/common/src/main/java/io/helidon/security/providers/common/EvictableCache.java index e72ac508b18..e0dfa8b6f8a 100644 --- a/security/providers/common/src/main/java/io/helidon/security/providers/common/EvictableCache.java +++ b/security/providers/common/src/main/java/io/helidon/security/providers/common/EvictableCache.java @@ -185,7 +185,7 @@ default void close() { * @param types of keys used in the cache * @param types of values used in the cache */ - class Builder implements io.helidon.common.Builder> { + class Builder implements io.helidon.common.Builder, EvictableCache> { private boolean cacheEnabled = true; private long cacheTimeout = CACHE_TIMEOUT_MINUTES; private TimeUnit cacheTimeoutUnit = TimeUnit.MINUTES; diff --git a/security/providers/common/src/main/java/io/helidon/security/providers/common/OutboundConfig.java b/security/providers/common/src/main/java/io/helidon/security/providers/common/OutboundConfig.java index bfdfcef5918..b5044a5e2e4 100644 --- a/security/providers/common/src/main/java/io/helidon/security/providers/common/OutboundConfig.java +++ b/security/providers/common/src/main/java/io/helidon/security/providers/common/OutboundConfig.java @@ -195,7 +195,7 @@ public List targets() { * {@link OutboundConfig} builder when not reading it from configuration. */ @Configured(description = "Outbound configuration for outbound security") - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final List targets = new LinkedList<>(); private final Set names = new HashSet<>(); diff --git a/security/providers/common/src/main/java/io/helidon/security/providers/common/OutboundTarget.java b/security/providers/common/src/main/java/io/helidon/security/providers/common/OutboundTarget.java index d590d9ce8e4..f938f64f209 100644 --- a/security/providers/common/src/main/java/io/helidon/security/providers/common/OutboundTarget.java +++ b/security/providers/common/src/main/java/io/helidon/security/providers/common/OutboundTarget.java @@ -280,7 +280,7 @@ public String toString() { * Fluent API builder for {@link OutboundTarget}. */ @Configured - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final Set transports = new HashSet<>(); private final Set hosts = new HashSet<>(); private final Set paths = new HashSet<>(); diff --git a/security/providers/common/src/main/java/io/helidon/security/providers/common/TokenCredential.java b/security/providers/common/src/main/java/io/helidon/security/providers/common/TokenCredential.java index baf90b6493d..2435a5a9715 100644 --- a/security/providers/common/src/main/java/io/helidon/security/providers/common/TokenCredential.java +++ b/security/providers/common/src/main/java/io/helidon/security/providers/common/TokenCredential.java @@ -123,7 +123,7 @@ public String toString() { /** * Fluent API builder for {@link TokenCredential}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final ClassToInstanceStore tokens = new ClassToInstanceStore<>(); private Instant issueTime; private Instant expTime; diff --git a/security/providers/common/src/main/java/io/helidon/security/providers/common/spi/AnnotationAnalyzer.java b/security/providers/common/src/main/java/io/helidon/security/providers/common/spi/AnnotationAnalyzer.java index a96e71f6605..a491a6299b0 100644 --- a/security/providers/common/src/main/java/io/helidon/security/providers/common/spi/AnnotationAnalyzer.java +++ b/security/providers/common/src/main/java/io/helidon/security/providers/common/spi/AnnotationAnalyzer.java @@ -223,7 +223,7 @@ public ClassToInstanceStore registry() { /** * Fluent API builder for {@link AnalyzerResponse}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private final ClassToInstanceStore registry = ClassToInstanceStore.create(); private AnalyzerResponse parent; private Flag atnResponse = Flag.ABSTAIN; diff --git a/security/providers/config-vault/src/main/java/io/helidon/security/providers/config/vault/ConfigVaultProvider.java b/security/providers/config-vault/src/main/java/io/helidon/security/providers/config/vault/ConfigVaultProvider.java index b176e721967..eb324a0c141 100644 --- a/security/providers/config-vault/src/main/java/io/helidon/security/providers/config/vault/ConfigVaultProvider.java +++ b/security/providers/config-vault/src/main/java/io/helidon/security/providers/config/vault/ConfigVaultProvider.java @@ -224,7 +224,7 @@ Supplier>> value() { @Configured(prefix = "config-vault", description = "Secrets and Encryption provider using just configuration", provides = {SecurityProvider.class, SecretsProvider.class, EncryptionProvider.class}) - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private Config config = Config.empty(); private Optional masterPassword = Optional.empty(); diff --git a/security/providers/google-login/src/main/java/io/helidon/security/providers/google/login/GoogleTokenProvider.java b/security/providers/google-login/src/main/java/io/helidon/security/providers/google/login/GoogleTokenProvider.java index 78324b92cb3..cc97dd9ac81 100644 --- a/security/providers/google-login/src/main/java/io/helidon/security/providers/google/login/GoogleTokenProvider.java +++ b/security/providers/google-login/src/main/java/io/helidon/security/providers/google/login/GoogleTokenProvider.java @@ -407,7 +407,7 @@ private Instant toInstant(Long epochSeconds) { /** * Fluent API builder to build {@link GoogleTokenProvider} instance. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private String clientId; private String proxyHost; diff --git a/security/providers/header/src/main/java/io/helidon/security/providers/header/HeaderAtnOutboundConfig.java b/security/providers/header/src/main/java/io/helidon/security/providers/header/HeaderAtnOutboundConfig.java index 892655415e0..43c0d8365d5 100644 --- a/security/providers/header/src/main/java/io/helidon/security/providers/header/HeaderAtnOutboundConfig.java +++ b/security/providers/header/src/main/java/io/helidon/security/providers/header/HeaderAtnOutboundConfig.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -105,7 +105,7 @@ Optional explicitUser() { /** * Fluent API builder for {@link HeaderAtnOutboundConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private TokenHandler tokenHandler; private String explicitUser; diff --git a/security/providers/header/src/main/java/io/helidon/security/providers/header/HeaderAtnProvider.java b/security/providers/header/src/main/java/io/helidon/security/providers/header/HeaderAtnProvider.java index c849a6d5d8f..83cb5717e54 100644 --- a/security/providers/header/src/main/java/io/helidon/security/providers/header/HeaderAtnProvider.java +++ b/security/providers/header/src/main/java/io/helidon/security/providers/header/HeaderAtnProvider.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, 2020 Oracle and/or its affiliates. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -178,7 +178,7 @@ private OutboundSecurityResponse respond(SecurityEnvironment outboundEnv, /** * A fluent api Builder for {@link HeaderAtnProvider}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final OutboundConfig.Builder outboundBuilder = OutboundConfig.builder(); private boolean optional = false; diff --git a/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpBasicAuthProvider.java b/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpBasicAuthProvider.java index a41782afee5..e1612701295 100644 --- a/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpBasicAuthProvider.java +++ b/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpBasicAuthProvider.java @@ -312,7 +312,7 @@ private Subject buildSubject(SecureUserStore.User user, char[] password) { @Configured(prefix = HttpBasicAuthService.PROVIDER_CONFIG_KEY, description = "HTTP Basic Authentication provider", provides = {SecurityProvider.class, AuthenticationProvider.class}) - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final List userStores = new LinkedList<>(); private final OutboundConfig.Builder outboundBuilder = OutboundConfig.builder(); diff --git a/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpBasicOutboundConfig.java b/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpBasicOutboundConfig.java index 1b3b7e5a29e..0938f42036b 100644 --- a/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpBasicOutboundConfig.java +++ b/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpBasicOutboundConfig.java @@ -128,7 +128,7 @@ char[] explicitPassword() { /** * Fluent API builder for {@link io.helidon.security.providers.httpauth.HttpBasicOutboundConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private TokenHandler tokenHandler = DEFAULT_TOKEN_HANDLER; private boolean hasExplicitUser = false; private String explicitUser; diff --git a/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpDigestAuthProvider.java b/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpDigestAuthProvider.java index 0e00bf888d1..07ffe721cdd 100644 --- a/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpDigestAuthProvider.java +++ b/security/providers/http-auth/src/main/java/io/helidon/security/providers/httpauth/HttpDigestAuthProvider.java @@ -269,7 +269,7 @@ private Subject buildSubject(SecureUserStore.User user) { /** * {@link HttpDigestAuthProvider} fluent API builder. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private static final SecureUserStore EMPTY_STORE = login -> Optional.empty(); /** * Default is 24 hours. diff --git a/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/HttpSignProvider.java b/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/HttpSignProvider.java index 7a8194c2b68..76faa030261 100644 --- a/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/HttpSignProvider.java +++ b/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/HttpSignProvider.java @@ -316,7 +316,7 @@ private OutboundSecurityResponse signRequest(SecurityEnvironment outboundEnv) { /** * Fluent API builder for this provider. Call {@link #build()} to create a provider instance. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private boolean optional = true; private String realm = "helidon"; private final Set acceptHeaders = EnumSet.noneOf(HttpSignHeader.class); diff --git a/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/InboundClientDefinition.java b/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/InboundClientDefinition.java index 3f59df0251f..902625ccd21 100644 --- a/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/InboundClientDefinition.java +++ b/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/InboundClientDefinition.java @@ -147,7 +147,7 @@ public Optional hmacSharedSecret() { * Fluent API builder to create a new instance of {@link InboundClientDefinition}. * Use {@link #build()} to create the instance. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private String keyId; private String algorithm; private KeyConfig keyConfig; diff --git a/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/OutboundTargetDefinition.java b/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/OutboundTargetDefinition.java index a171e734a27..10b79d804bf 100644 --- a/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/OutboundTargetDefinition.java +++ b/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/OutboundTargetDefinition.java @@ -178,7 +178,7 @@ public boolean backwardCompatibleEol() { * Fluent API builder to build {@link OutboundTargetDefinition} instances. * Call {@link #build()} to create a new instance. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private static final Logger LOGGER = Logger.getLogger(Builder.class.getName()); private String keyId; diff --git a/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/SignedHeadersConfig.java b/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/SignedHeadersConfig.java index 07e3960154f..2c7d88db93a 100644 --- a/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/SignedHeadersConfig.java +++ b/security/providers/http-sign/src/main/java/io/helidon/security/providers/httpsign/SignedHeadersConfig.java @@ -116,7 +116,7 @@ public List headers(String method) { * Fluent API builder to create {@link SignedHeadersConfig} instances. * Call {@link #build()} to create a new instance. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private static final HeadersConfig DEFAULT_HEADERS = HeadersConfig.create(List.of("date")); private final Map methodConfigs = new TreeMap<>(String.CASE_INSENSITIVE_ORDER); diff --git a/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsMtRoleMapperProvider.java b/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsMtRoleMapperProvider.java index 5734a8b7d9f..439109510ad 100644 --- a/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsMtRoleMapperProvider.java +++ b/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsMtRoleMapperProvider.java @@ -264,7 +264,7 @@ protected MultitenancyEndpoints multitenancyEndpoints() { */ public static class Builder> extends IdcsRoleMapperProviderBase.Builder> - implements io.helidon.common.Builder { + implements io.helidon.common.Builder, IdcsMtRoleMapperProvider> { private TokenHandler idcsAppNameTokenHandler = TokenHandler.forHeader(IDCS_APP_HEADER); private TokenHandler idcsTenantTokenHandler = TokenHandler.forHeader(IDCS_TENANT_HEADER); private MultitenancyEndpoints multitentantEndpoints; diff --git a/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsMtRoleMapperRxProvider.java b/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsMtRoleMapperRxProvider.java index da608f1581c..01007a666bc 100644 --- a/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsMtRoleMapperRxProvider.java +++ b/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsMtRoleMapperRxProvider.java @@ -338,7 +338,7 @@ public interface MultitenancyEndpoints { */ public static class Builder> extends IdcsRoleMapperRxProviderBase.Builder> - implements io.helidon.common.Builder { + implements io.helidon.common.Builder, IdcsMtRoleMapperRxProvider> { private TokenHandler idcsAppNameTokenHandler = TokenHandler.forHeader(IDCS_APP_HEADER); private TokenHandler idcsTenantTokenHandler = TokenHandler.forHeader(IDCS_TENANT_HEADER); private MultitenancyEndpoints multitentantEndpoints; diff --git a/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsRoleMapperProvider.java b/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsRoleMapperProvider.java index a8b28a018ff..4e60b3b0fa0 100644 --- a/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsRoleMapperProvider.java +++ b/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsRoleMapperProvider.java @@ -190,7 +190,7 @@ protected Optional> getGrantsFromServer(Subject subject) { * @param type of builder extending this builder */ public static class Builder> extends IdcsRoleMapperProviderBase.Builder> - implements io.helidon.common.Builder { + implements io.helidon.common.Builder, IdcsRoleMapperProvider> { private EvictableCache> roleCache; @SuppressWarnings("unchecked") diff --git a/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsRoleMapperRxProvider.java b/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsRoleMapperRxProvider.java index bd90e3e68f3..d74057d1095 100644 --- a/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsRoleMapperRxProvider.java +++ b/security/providers/idcs-mapper/src/main/java/io/helidon/security/providers/idcs/mapper/IdcsRoleMapperRxProvider.java @@ -219,7 +219,7 @@ protected Single> getGrantsFromServer(Subject subject) { * @param type of builder extending this builder */ public static class Builder> extends IdcsRoleMapperRxProviderBase.Builder> - implements io.helidon.common.Builder { + implements io.helidon.common.Builder, IdcsRoleMapperRxProvider> { private EvictableCache> roleCache; @SuppressWarnings("unchecked") diff --git a/security/providers/jwt/src/main/java/io/helidon/security/providers/jwt/JwtProvider.java b/security/providers/jwt/src/main/java/io/helidon/security/providers/jwt/JwtProvider.java index 13a2712c658..afbb3c91488 100644 --- a/security/providers/jwt/src/main/java/io/helidon/security/providers/jwt/JwtProvider.java +++ b/security/providers/jwt/src/main/java/io/helidon/security/providers/jwt/JwtProvider.java @@ -477,7 +477,7 @@ private void update(Jwt.Builder builder) { /** * Fluent API builder for {@link io.helidon.security.providers.jwt.JwtProvider.JwtOutboundTarget}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private TokenHandler outboundHandler = TokenHandler.builder() .tokenHeader("Authorization") .tokenPrefix("bearer ") @@ -592,7 +592,7 @@ public Builder validitySeconds(long validitySeconds) { /** * Fluent API builder for {@link JwtProvider}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private boolean verifySignature = true; private boolean optional = false; private boolean authenticate = true; diff --git a/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcConfig.java b/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcConfig.java index e68b8aa9c79..1ddf72e90e3 100644 --- a/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcConfig.java +++ b/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcConfig.java @@ -1014,7 +1014,7 @@ public enum RequestType { * A fluent API {@link io.helidon.common.Builder} to build instances of {@link OidcConfig}. */ @Configured(description = "Open ID Connect configuration") - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { static final String DEFAULT_SERVER_TYPE = "@default"; private final OidcCookieHandler.Builder tokenCookieBuilder = OidcCookieHandler.builder() diff --git a/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcCookieHandler.java b/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcCookieHandler.java index 69191a07595..43932fc0999 100644 --- a/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcCookieHandler.java +++ b/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcCookieHandler.java @@ -195,7 +195,7 @@ private SetCookie.Builder createCookieDirectValue(String value) { return builder; } - static class Builder implements io.helidon.common.Builder { + static class Builder implements io.helidon.common.Builder { static final String DEFAULT_PATH = "/"; static final boolean DEFAULT_HTTP_ONLY = true; static final boolean DEFAULT_SECURE = false; diff --git a/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcMetadata.java b/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcMetadata.java index 2138e9527fa..a4809f7c8e9 100644 --- a/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcMetadata.java +++ b/security/providers/oidc-common/src/main/java/io/helidon/security/providers/oidc/common/OidcMetadata.java @@ -96,7 +96,7 @@ public Optional getString(String key) { .map(it -> it.getString(key, null)); } - static class Builder implements io.helidon.common.Builder { + static class Builder implements io.helidon.common.Builder { private static final JsonBuilderFactory JSON = Json.createBuilderFactory(Map.of()); private boolean enableRemoteLoad; private JsonObject metadata; diff --git a/security/providers/oidc/src/main/java/io/helidon/security/providers/oidc/OidcProvider.java b/security/providers/oidc/src/main/java/io/helidon/security/providers/oidc/OidcProvider.java index c74681c0609..5371154431a 100644 --- a/security/providers/oidc/src/main/java/io/helidon/security/providers/oidc/OidcProvider.java +++ b/security/providers/oidc/src/main/java/io/helidon/security/providers/oidc/OidcProvider.java @@ -627,7 +627,7 @@ private Principal buildPrincipal(Jwt jwt) { @Configured(prefix = OidcProviderService.PROVIDER_CONFIG_KEY, description = "Open ID Connect security provider", provides = {AuthenticationProvider.class, SecurityProvider.class}) - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private boolean optional = false; private OidcConfig oidcConfig; // identity propagation is disabled by default. In general we should not reuse the same token diff --git a/security/providers/oidc/src/main/java/io/helidon/security/providers/oidc/OidcSupport.java b/security/providers/oidc/src/main/java/io/helidon/security/providers/oidc/OidcSupport.java index b6b7c036a44..1f79091fc0e 100644 --- a/security/providers/oidc/src/main/java/io/helidon/security/providers/oidc/OidcSupport.java +++ b/security/providers/oidc/src/main/java/io/helidon/security/providers/oidc/OidcSupport.java @@ -427,7 +427,7 @@ private void processError(ServerRequest req, ServerResponse res) { /** * A fluent API builder for {@link io.helidon.security.providers.oidc.OidcSupport}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private boolean enabled = true; private OidcConfig oidcConfig; diff --git a/security/security/src/main/java/io/helidon/security/CompositeProviderSelectionPolicy.java b/security/security/src/main/java/io/helidon/security/CompositeProviderSelectionPolicy.java index 4ab6c38dee0..4d70bd0ecc5 100644 --- a/security/security/src/main/java/io/helidon/security/CompositeProviderSelectionPolicy.java +++ b/security/security/src/main/java/io/helidon/security/CompositeProviderSelectionPolicy.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -213,7 +213,7 @@ public Optional selectProvider(Class provider * Fluent API builder to create {@link CompositeProviderSelectionPolicy}. * Invoke {@link #build()} to get a function to be sent to {@link Security.Builder#providerSelectionPolicy(Function)}. */ - public static final class Builder implements io.helidon.common.Builder> { + public static final class Builder implements io.helidon.common.Builder> { private final List authenticators = new LinkedList<>(); private final List authorizers = new LinkedList<>(); private final List outbound = new LinkedList<>(); diff --git a/security/security/src/main/java/io/helidon/security/EndpointConfig.java b/security/security/src/main/java/io/helidon/security/EndpointConfig.java index c68f184f406..b0c75e28d83 100644 --- a/security/security/src/main/java/io/helidon/security/EndpointConfig.java +++ b/security/security/src/main/java/io/helidon/security/EndpointConfig.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, 2020 Oracle and/or its affiliates. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -174,7 +174,7 @@ public enum AnnotationScope { /** * A fluent API builder for {@link EndpointConfig}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final ClassToInstanceStore customObjects = new ClassToInstanceStore<>(); private final Map configMap = new HashMap<>(); private final List securityLevels = new ArrayList<>(); diff --git a/security/security/src/main/java/io/helidon/security/Grant.java b/security/security/src/main/java/io/helidon/security/Grant.java index 39a24d5ebae..c3ca5ccbf09 100644 --- a/security/security/src/main/java/io/helidon/security/Grant.java +++ b/security/security/src/main/java/io/helidon/security/Grant.java @@ -128,11 +128,9 @@ public int hashCode() { /** * A fluent API builder for {@link Grant} to be extended by other {@link Grant} implementations. * - * @param type of the builder, needed for builder inheritance + * @param type of the builder, needed for builder inheritance */ - public static class Builder> implements io.helidon.common.Builder { - private final T instance; - + public static class Builder> implements io.helidon.common.Builder { private BasicAttributes properties = BasicAttributes.create(); private String type; private String name; @@ -141,9 +139,7 @@ public static class Builder> implements io.helidon.common.B /** * Create a new instance. */ - @SuppressWarnings("unchecked") protected Builder() { - this.instance = (T) this; } @Override @@ -157,9 +153,9 @@ public Grant build() { * @param type type name, known types are "role" and "scope" * @return updated builder instance */ - public T type(String type) { + public B type(String type) { this.type = type; - return instance; + return identity(); } /** @@ -168,9 +164,9 @@ public T type(String type) { * @param name logical name of this grant (e.g. "admin", "calendar_read" etc.) * @return updated builder instance */ - public T name(String name) { + public B name(String name) { this.name = name; - return instance; + return identity(); } /** @@ -179,9 +175,9 @@ public T name(String name) { * @param origin who granted this grant? * @return updated builder instance */ - public T origin(String origin) { + public B origin(String origin) { this.origin = origin; - return instance; + return identity(); } /** @@ -191,9 +187,9 @@ public T origin(String origin) { * "cn" etc.) * @return updated builder instance */ - public T attributes(AbacSupport attribs) { + public B attributes(AbacSupport attribs) { this.properties = BasicAttributes.create(attribs); - return instance; + return identity(); } /** @@ -203,9 +199,9 @@ public T attributes(AbacSupport attribs) { * @param value value of the attribute * @return updated builder instance */ - public T addAttribute(String key, Object value) { + public B addAttribute(String key, Object value) { this.properties.put(key, value); - return instance; + return identity(); } } } diff --git a/security/security/src/main/java/io/helidon/security/OutboundSecurityClientBuilder.java b/security/security/src/main/java/io/helidon/security/OutboundSecurityClientBuilder.java index a5b85132923..9ff95761aa1 100644 --- a/security/security/src/main/java/io/helidon/security/OutboundSecurityClientBuilder.java +++ b/security/security/src/main/java/io/helidon/security/OutboundSecurityClientBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,7 +25,7 @@ * Builder constructing a security client - extends the {@link SecurityRequestBuilder} for convenience. */ public class OutboundSecurityClientBuilder extends SecurityRequestBuilder - implements Builder> { + implements Builder> { private final SecurityContextImpl context; private final Security security; diff --git a/security/security/src/main/java/io/helidon/security/Principal.java b/security/security/src/main/java/io/helidon/security/Principal.java index 30ef10bc7da..1c63de98283 100644 --- a/security/security/src/main/java/io/helidon/security/Principal.java +++ b/security/security/src/main/java/io/helidon/security/Principal.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -56,7 +56,7 @@ static Principal create(String id) { /** * A fluent API builder for {@link Principal}. */ - final class Builder implements io.helidon.common.Builder { + final class Builder implements io.helidon.common.Builder { private String name; private String id; private BasicAttributes properties = BasicAttributes.create(); diff --git a/security/security/src/main/java/io/helidon/security/Security.java b/security/security/src/main/java/io/helidon/security/Security.java index 6c716166e1c..ab1106f8f53 100644 --- a/security/security/src/main/java/io/helidon/security/Security.java +++ b/security/security/src/main/java/io/helidon/security/Security.java @@ -551,7 +551,7 @@ public boolean enabled() { */ @Configured(root = true, prefix = "security", description = "Configuration of security providers, integration and other" + " security options") - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final Set auditProviders = new LinkedHashSet<>(); private final List> atnProviders = new LinkedList<>(); private final List> atzProviders = new LinkedList<>(); diff --git a/security/security/src/main/java/io/helidon/security/SecurityClientBuilder.java b/security/security/src/main/java/io/helidon/security/SecurityClientBuilder.java index 34752609418..8740bdfa0d2 100644 --- a/security/security/src/main/java/io/helidon/security/SecurityClientBuilder.java +++ b/security/security/src/main/java/io/helidon/security/SecurityClientBuilder.java @@ -27,7 +27,7 @@ */ public class SecurityClientBuilder extends SecurityRequestBuilder> - implements Builder> { + implements Builder, SecurityClient> { private final SecurityContextImpl context; private final Security security; diff --git a/security/security/src/main/java/io/helidon/security/SecurityContext.java b/security/security/src/main/java/io/helidon/security/SecurityContext.java index 30e304af328..596ef62f1f4 100644 --- a/security/security/src/main/java/io/helidon/security/SecurityContext.java +++ b/security/security/src/main/java/io/helidon/security/SecurityContext.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, 2020 Oracle and/or its affiliates. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -321,7 +321,7 @@ default void endpointConfig(Supplier epBuilder) { /** * Fluent API builder for {@link SecurityContext}. */ - class Builder implements io.helidon.common.Builder { + class Builder implements io.helidon.common.Builder { private final Security security; private String id; private Supplier executorServiceSupplier; diff --git a/security/security/src/main/java/io/helidon/security/SecurityEnvironment.java b/security/security/src/main/java/io/helidon/security/SecurityEnvironment.java index d5971a66442..7a33ad6dc5c 100644 --- a/security/security/src/main/java/io/helidon/security/SecurityEnvironment.java +++ b/security/security/src/main/java/io/helidon/security/SecurityEnvironment.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, 2020 Oracle and/or its affiliates. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -203,7 +203,7 @@ public Map> headers() { /** * A fluent API builder for {@link SecurityEnvironment}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { /** * Default transport is {@value}. */ diff --git a/security/security/src/main/java/io/helidon/security/SecurityLevel.java b/security/security/src/main/java/io/helidon/security/SecurityLevel.java index 5f1b781cc25..640e58aba54 100644 --- a/security/security/src/main/java/io/helidon/security/SecurityLevel.java +++ b/security/security/src/main/java/io/helidon/security/SecurityLevel.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -172,7 +172,7 @@ public String toString() { /** * Builder for {@link SecurityLevel} class. */ - public static class SecurityLevelBuilder implements Builder { + public static class SecurityLevelBuilder implements Builder { private String className; private String methodName; diff --git a/security/security/src/main/java/io/helidon/security/SecurityResponse.java b/security/security/src/main/java/io/helidon/security/SecurityResponse.java index d27774aaaea..f5b91893202 100644 --- a/security/security/src/main/java/io/helidon/security/SecurityResponse.java +++ b/security/security/src/main/java/io/helidon/security/SecurityResponse.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, 2020 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -191,18 +191,16 @@ public boolean isSuccess() { * * @param Type of security response to build */ - abstract static class SecurityResponseBuilder, B> implements Builder { + abstract static class SecurityResponseBuilder, B> implements Builder { private final Map> requestHeaders = new HashMap<>(); private final Map> responseHeaders = new HashMap<>(); - private final T myInstance; + private SecurityStatus status = SecurityStatus.SUCCESS; private String description; private Throwable throwable; private int statusCode = -1; - @SuppressWarnings("unchecked") SecurityResponseBuilder() { - this.myInstance = (T) this; } /** @@ -215,7 +213,7 @@ abstract static class SecurityResponseBuilder> headers) { this.requestHeaders.clear(); this.requestHeaders.putAll(headers); - return myInstance; + return identity(); } /** @@ -274,7 +272,7 @@ public T requestHeaders(Map> headers) { */ public T requestHeader(String header, String value) { requestHeaders.put(header, List.of(value)); - return myInstance; + return identity(); } /** @@ -287,7 +285,7 @@ public T requestHeader(String header, String value) { */ public T requestHeader(String header, List values) { requestHeaders.put(header, values); - return myInstance; + return identity(); } /** @@ -299,7 +297,7 @@ public T requestHeader(String header, List values) { public T responseHeaders(Map> headers) { this.responseHeaders.clear(); this.responseHeaders.putAll(headers); - return myInstance; + return identity(); } /** @@ -312,7 +310,7 @@ public T responseHeaders(Map> headers) { */ public T responseHeader(String header, String value) { responseHeaders.put(header, List.of(value)); - return myInstance; + return identity(); } /** @@ -325,7 +323,7 @@ public T responseHeader(String header, String value) { */ public T responseHeader(String header, List values) { responseHeaders.put(header, values); - return myInstance; + return identity(); } } } diff --git a/security/security/src/main/java/io/helidon/security/SecurityTime.java b/security/security/src/main/java/io/helidon/security/SecurityTime.java index 9efd5268f25..5b850b87895 100644 --- a/security/security/src/main/java/io/helidon/security/SecurityTime.java +++ b/security/security/src/main/java/io/helidon/security/SecurityTime.java @@ -123,7 +123,7 @@ public ZonedDateTime get() { * Fluent API builder for {@link SecurityTime}. */ @Configured - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final List values = new ArrayList<>(); private ZoneId timeZone = ZoneId.systemDefault(); private long shiftBySeconds = 0; diff --git a/security/security/src/main/java/io/helidon/security/Subject.java b/security/security/src/main/java/io/helidon/security/Subject.java index 932e6055e5b..5c71729deac 100644 --- a/security/security/src/main/java/io/helidon/security/Subject.java +++ b/security/security/src/main/java/io/helidon/security/Subject.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018, 2020 Oracle and/or its affiliates. + * Copyright (c) 2018, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -227,7 +227,7 @@ public String toString() { /** * A fluent API builder for {@link Subject}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final List grants = new LinkedList<>(); private final List principals = new LinkedList<>(); private final ClassToInstanceStore privateCredentials = new ClassToInstanceStore<>(); diff --git a/security/util/src/main/java/io/helidon/security/util/TokenHandler.java b/security/util/src/main/java/io/helidon/security/util/TokenHandler.java index 8fea92ba113..3da07788566 100644 --- a/security/util/src/main/java/io/helidon/security/util/TokenHandler.java +++ b/security/util/src/main/java/io/helidon/security/util/TokenHandler.java @@ -218,7 +218,7 @@ public void addHeader(Map> headers, String token) { * Fluent API builder to create {@link TokenHandler}. */ @Configured - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private String tokenHeader; private String tokenPrefix; private Pattern tokenPattern; diff --git a/service-common/rest-cdi/src/test/java/io/helidon/servicecommon/restcdi/ConfiguredTestSupport.java b/service-common/rest-cdi/src/test/java/io/helidon/servicecommon/restcdi/ConfiguredTestSupport.java index b446463dfa7..fea7e713901 100644 --- a/service-common/rest-cdi/src/test/java/io/helidon/servicecommon/restcdi/ConfiguredTestSupport.java +++ b/service-common/rest-cdi/src/test/java/io/helidon/servicecommon/restcdi/ConfiguredTestSupport.java @@ -59,8 +59,8 @@ int importance() { return importance; } - static class Builder extends HelidonRestServiceSupport.Builder - implements io.helidon.common.Builder { + static class Builder extends HelidonRestServiceSupport.Builder + implements io.helidon.common.Builder { private int importance; diff --git a/service-common/rest/src/main/java/io/helidon/servicecommon/rest/HelidonRestServiceSupport.java b/service-common/rest/src/main/java/io/helidon/servicecommon/rest/HelidonRestServiceSupport.java index f8066311fd1..7b5b21a2a46 100644 --- a/service-common/rest/src/main/java/io/helidon/servicecommon/rest/HelidonRestServiceSupport.java +++ b/service-common/rest/src/main/java/io/helidon/servicecommon/rest/HelidonRestServiceSupport.java @@ -141,8 +141,8 @@ protected Logger logger() { * @param type of the concrete service * @param type of the concrete builder for the service */ - public abstract static class Builder> - implements io.helidon.common.Builder { + public abstract static class Builder, T extends HelidonRestServiceSupport> + implements io.helidon.common.Builder { private final Class builderClass; private Config config = Config.empty(); diff --git a/service-common/rest/src/main/java/io/helidon/servicecommon/rest/RestServiceSettings.java b/service-common/rest/src/main/java/io/helidon/servicecommon/rest/RestServiceSettings.java index bb6aed6a45c..f758e4b1afe 100644 --- a/service-common/rest/src/main/java/io/helidon/servicecommon/rest/RestServiceSettings.java +++ b/service-common/rest/src/main/java/io/helidon/servicecommon/rest/RestServiceSettings.java @@ -79,7 +79,7 @@ static Builder builder() { * Builder for {@link io.helidon.servicecommon.rest.RestServiceSettings}. */ @Configured() - interface Builder extends io.helidon.common.Builder { + interface Builder extends io.helidon.common.Builder { /** * Config key for the routing name setting. diff --git a/tracing/config/src/main/java/io/helidon/tracing/config/ComponentTracingConfig.java b/tracing/config/src/main/java/io/helidon/tracing/config/ComponentTracingConfig.java index 09412454288..92975b79d58 100644 --- a/tracing/config/src/main/java/io/helidon/tracing/config/ComponentTracingConfig.java +++ b/tracing/config/src/main/java/io/helidon/tracing/config/ComponentTracingConfig.java @@ -151,7 +151,7 @@ public static ComponentTracingConfig create(String name, Config config) { /** * Fluent API builder for {@link ComponentTracingConfig}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final Map tracedSpans = new HashMap<>(); private Optional enabled = Optional.empty(); private final String name; diff --git a/tracing/config/src/main/java/io/helidon/tracing/config/SpanLogTracingConfig.java b/tracing/config/src/main/java/io/helidon/tracing/config/SpanLogTracingConfig.java index c01e2e0bc6f..ead813f7fc2 100644 --- a/tracing/config/src/main/java/io/helidon/tracing/config/SpanLogTracingConfig.java +++ b/tracing/config/src/main/java/io/helidon/tracing/config/SpanLogTracingConfig.java @@ -81,7 +81,7 @@ public static SpanLogTracingConfig create(String name, Config config) { /** * A fluent API builder for {@link SpanLogTracingConfig}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final String name; private Optional enabled = Optional.empty(); diff --git a/tracing/config/src/main/java/io/helidon/tracing/config/SpanTracingConfig.java b/tracing/config/src/main/java/io/helidon/tracing/config/SpanTracingConfig.java index cc75bb5cba5..e93cc34e133 100644 --- a/tracing/config/src/main/java/io/helidon/tracing/config/SpanTracingConfig.java +++ b/tracing/config/src/main/java/io/helidon/tracing/config/SpanTracingConfig.java @@ -155,7 +155,7 @@ public static SpanTracingConfig create(String name, Config config) { /** * A fluent API builder for {@link SpanTracingConfig}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final Map spanLogMap = new HashMap<>(); private final String name; private Optional enabled = Optional.empty(); diff --git a/tracing/config/src/main/java/io/helidon/tracing/config/TracingConfig.java b/tracing/config/src/main/java/io/helidon/tracing/config/TracingConfig.java index db309fb2bb0..cec9b232e11 100644 --- a/tracing/config/src/main/java/io/helidon/tracing/config/TracingConfig.java +++ b/tracing/config/src/main/java/io/helidon/tracing/config/TracingConfig.java @@ -160,7 +160,7 @@ public SpanTracingConfig spanConfig(String component, String spanName) { /** * Fluent API builder for {@link TracingConfig}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final Map components = new HashMap<>(); private Optional enabled = Optional.empty(); diff --git a/tracing/tracing/src/main/java/io/helidon/tracing/TracerBuilder.java b/tracing/tracing/src/main/java/io/helidon/tracing/TracerBuilder.java index bc7276da36c..d509b4b7c33 100644 --- a/tracing/tracing/src/main/java/io/helidon/tracing/TracerBuilder.java +++ b/tracing/tracing/src/main/java/io/helidon/tracing/TracerBuilder.java @@ -100,9 +100,8 @@ * are of the correct type and contain all methods, even those not inherited from this * interface */ -@SuppressWarnings("rawtypes") @Configured(description = "OpenTracing tracer configuration.", ignoreBuildMethod = true) -public interface TracerBuilder extends Builder { +public interface TracerBuilder> extends Builder { /** * Create a new builder for the service name. * @@ -144,11 +143,10 @@ static TracerBuilder create(Config config) { * @param uri the endpoint of the tracing collector * @return updated builder instance */ - @SuppressWarnings("unchecked") default T collectorUri(URI uri) { Objects.requireNonNull(uri); - TracerBuilder result = this; + T result = identity(); if (null != uri.getScheme()) { result = result.collectorProtocol(uri.getScheme()); @@ -166,7 +164,7 @@ default T collectorUri(URI uri) { result = result.collectorPort(uri.getPort()); } - return (T) result; + return result; } /** diff --git a/webclient/metrics/src/main/java/io/helidon/webclient/metrics/WebClientMetric.java b/webclient/metrics/src/main/java/io/helidon/webclient/metrics/WebClientMetric.java index 0d11cca5ac6..78bc05c77e3 100644 --- a/webclient/metrics/src/main/java/io/helidon/webclient/metrics/WebClientMetric.java +++ b/webclient/metrics/src/main/java/io/helidon/webclient/metrics/WebClientMetric.java @@ -130,7 +130,7 @@ boolean handlesMethod(Http.RequestMethod method) { /** * Client metric builder. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final WebClientMetricType type; private Set methods = Collections.emptySet(); diff --git a/webclient/metrics/src/main/java/io/helidon/webclient/metrics/WebClientMetrics.java b/webclient/metrics/src/main/java/io/helidon/webclient/metrics/WebClientMetrics.java index a50f7b14b50..17d1ecbc2aa 100644 --- a/webclient/metrics/src/main/java/io/helidon/webclient/metrics/WebClientMetrics.java +++ b/webclient/metrics/src/main/java/io/helidon/webclient/metrics/WebClientMetrics.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -118,7 +118,7 @@ public Single response(WebClientRequestBuilder.ClientR return Single.just(response); } - private static final class Builder implements io.helidon.common.Builder { + private static final class Builder implements io.helidon.common.Builder { private final List metrics = new ArrayList<>(); diff --git a/webclient/webclient/src/main/java/io/helidon/webclient/OutboundTarget.java b/webclient/webclient/src/main/java/io/helidon/webclient/OutboundTarget.java index 8f9fc222afc..4bb8443125d 100644 --- a/webclient/webclient/src/main/java/io/helidon/webclient/OutboundTarget.java +++ b/webclient/webclient/src/main/java/io/helidon/webclient/OutboundTarget.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -239,7 +239,7 @@ public String toString() { /** * Fluent API builder for {@link OutboundTarget}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private final Set transports = new HashSet<>(); private final Set hosts = new HashSet<>(); private final Set paths = new HashSet<>(); diff --git a/webclient/webclient/src/main/java/io/helidon/webclient/Proxy.java b/webclient/webclient/src/main/java/io/helidon/webclient/Proxy.java index 8526dc64c06..89ce63ab713 100644 --- a/webclient/webclient/src/main/java/io/helidon/webclient/Proxy.java +++ b/webclient/webclient/src/main/java/io/helidon/webclient/Proxy.java @@ -408,7 +408,7 @@ public int hashCode() { /** * Fluent API builder for {@link Proxy}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private final Set noProxyHosts = new HashSet<>(); private ProxyType type; diff --git a/webclient/webclient/src/main/java/io/helidon/webclient/WebClient.java b/webclient/webclient/src/main/java/io/helidon/webclient/WebClient.java index ad2877d52f2..6946d876c41 100644 --- a/webclient/webclient/src/main/java/io/helidon/webclient/WebClient.java +++ b/webclient/webclient/src/main/java/io/helidon/webclient/WebClient.java @@ -142,7 +142,7 @@ static Builder builder() { /** * Fluent API builder for {@link io.helidon.webclient.WebClient}. */ - final class Builder implements io.helidon.common.Builder, + final class Builder implements io.helidon.common.Builder, ParentingMediaContextBuilder, MediaContextBuilder { diff --git a/webclient/webclient/src/main/java/io/helidon/webclient/WebClientConfiguration.java b/webclient/webclient/src/main/java/io/helidon/webclient/WebClientConfiguration.java index 78bf4175936..a46db13fbea 100644 --- a/webclient/webclient/src/main/java/io/helidon/webclient/WebClientConfiguration.java +++ b/webclient/webclient/src/main/java/io/helidon/webclient/WebClientConfiguration.java @@ -287,7 +287,7 @@ boolean relativeUris() { * A fluent API builder for {@link WebClientConfiguration}. */ static class Builder, T extends WebClientConfiguration> - implements io.helidon.common.Builder, + implements io.helidon.common.Builder, ParentingMediaContextBuilder, MediaContextBuilder { diff --git a/webclient/webclient/src/main/java/io/helidon/webclient/WebClientResponseImpl.java b/webclient/webclient/src/main/java/io/helidon/webclient/WebClientResponseImpl.java index 9919ca664f3..7a3db937f28 100644 --- a/webclient/webclient/src/main/java/io/helidon/webclient/WebClientResponseImpl.java +++ b/webclient/webclient/src/main/java/io/helidon/webclient/WebClientResponseImpl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Oracle and/or its affiliates. + * Copyright (c) 2020, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -99,7 +99,7 @@ public WebClientResponseHeaders headers() { /** * Builder for {@link WebClientResponseImpl}. */ - static class Builder implements io.helidon.common.Builder { + static class Builder implements io.helidon.common.Builder { private final Map> headers = new HashMap<>(); diff --git a/webclient/webclient/src/main/java/io/helidon/webclient/WebClientTls.java b/webclient/webclient/src/main/java/io/helidon/webclient/WebClientTls.java index b58d7ffe280..9006a7eb93f 100644 --- a/webclient/webclient/src/main/java/io/helidon/webclient/WebClientTls.java +++ b/webclient/webclient/src/main/java/io/helidon/webclient/WebClientTls.java @@ -159,7 +159,7 @@ public int hashCode() { /** * Fluent API builder for {@link WebClientTls} instance. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private boolean trustAll = false; private boolean disableHostnameVerification = false; diff --git a/webserver/access-log/src/main/java/io/helidon/webserver/accesslog/AbstractLogEntry.java b/webserver/access-log/src/main/java/io/helidon/webserver/accesslog/AbstractLogEntry.java index bb7a6a6e7f1..6b1c1735cf1 100644 --- a/webserver/access-log/src/main/java/io/helidon/webserver/accesslog/AbstractLogEntry.java +++ b/webserver/access-log/src/main/java/io/helidon/webserver/accesslog/AbstractLogEntry.java @@ -110,13 +110,10 @@ protected String pad(String toPad) { * @param The type of your log entry * @param The type of your builder */ - protected abstract static class Builder> - implements io.helidon.common.Builder { + protected abstract static class Builder> + implements io.helidon.common.Builder { private static final Pattern SANITIZE_PATTERN = Pattern.compile("[^\\p{Print}]", Pattern.UNICODE_CHARACTER_CLASS); - @SuppressWarnings("unchecked") - private final T builder = (T) this; - private Function padding = Function.identity(); private boolean sanitize = true; private int maxLength = DEFAULT_MAX_LENGTH; @@ -129,7 +126,7 @@ protected abstract static class Builder sanitizationFunction() { diff --git a/webserver/access-log/src/main/java/io/helidon/webserver/accesslog/AccessLogSupport.java b/webserver/access-log/src/main/java/io/helidon/webserver/accesslog/AccessLogSupport.java index c53707886dc..b29175645d9 100644 --- a/webserver/access-log/src/main/java/io/helidon/webserver/accesslog/AccessLogSupport.java +++ b/webserver/access-log/src/main/java/io/helidon/webserver/accesslog/AccessLogSupport.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -169,7 +169,7 @@ public ServerResponse serverResponse() { /** * A fluent API Builder for {@link io.helidon.webserver.accesslog.AccessLogSupport}. */ - public static final class Builder implements io.helidon.common.Builder { + public static final class Builder implements io.helidon.common.Builder { private static final List COMMON_FORMAT = List.of( HostLogEntry.create(), UserIdLogEntry.create(), diff --git a/webserver/cors/src/main/java/io/helidon/webserver/cors/Aggregator.java b/webserver/cors/src/main/java/io/helidon/webserver/cors/Aggregator.java index e9362dabf1b..0cec6bb2d8d 100644 --- a/webserver/cors/src/main/java/io/helidon/webserver/cors/Aggregator.java +++ b/webserver/cors/src/main/java/io/helidon/webserver/cors/Aggregator.java @@ -94,7 +94,7 @@ public boolean isEnabled() { return isEnabled; } - static class Builder implements io.helidon.common.Builder, CorsSetter { + static class Builder implements io.helidon.common.Builder, CorsSetter { private final List crossOriginConfigMatchables = new ArrayList<>(); private boolean isEnabled = true; diff --git a/webserver/cors/src/main/java/io/helidon/webserver/cors/CorsSupportBase.java b/webserver/cors/src/main/java/io/helidon/webserver/cors/CorsSupportBase.java index b9620353f84..961b77b0932 100644 --- a/webserver/cors/src/main/java/io/helidon/webserver/cors/CorsSupportBase.java +++ b/webserver/cors/src/main/java/io/helidon/webserver/cors/CorsSupportBase.java @@ -111,7 +111,7 @@ protected String name() { * @param type of the builder */ public abstract static class Builder, B extends Builder> - implements io.helidon.common.Builder>, CorsSetter> { + implements io.helidon.common.Builder>, CorsSetter> { private String name = ""; private final CorsSupportHelper.Builder helperBuilder = CorsSupportHelper.builder(); diff --git a/webserver/cors/src/main/java/io/helidon/webserver/cors/CorsSupportHelper.java b/webserver/cors/src/main/java/io/helidon/webserver/cors/CorsSupportHelper.java index f47c4fe56f5..820de11c517 100644 --- a/webserver/cors/src/main/java/io/helidon/webserver/cors/CorsSupportHelper.java +++ b/webserver/cors/src/main/java/io/helidon/webserver/cors/CorsSupportHelper.java @@ -177,7 +177,7 @@ public static Builder builder() { * @param type of request wrapped by adapter * @param type of response wrapped by adapter */ - public static class Builder implements io.helidon.common.Builder> { + public static class Builder implements io.helidon.common.Builder, CorsSupportHelper> { private Supplier> secondaryCrossOriginLookup = EMPTY_SECONDARY_SUPPLIER; diff --git a/webserver/cors/src/main/java/io/helidon/webserver/cors/CrossOriginConfig.java b/webserver/cors/src/main/java/io/helidon/webserver/cors/CrossOriginConfig.java index e16521008b1..94b971fd8e8 100644 --- a/webserver/cors/src/main/java/io/helidon/webserver/cors/CrossOriginConfig.java +++ b/webserver/cors/src/main/java/io/helidon/webserver/cors/CrossOriginConfig.java @@ -259,7 +259,7 @@ private static String[] copyOf(String[] strings) { /** * Builder for {@link CrossOriginConfig}. */ - public static class Builder implements CorsSetter, io.helidon.common.Builder { + public static class Builder implements CorsSetter, io.helidon.common.Builder { static final String[] ALLOW_ALL = {"*"}; diff --git a/webserver/cors/src/main/java/io/helidon/webserver/cors/MappedCrossOriginConfig.java b/webserver/cors/src/main/java/io/helidon/webserver/cors/MappedCrossOriginConfig.java index 8160b22b725..584b1878280 100644 --- a/webserver/cors/src/main/java/io/helidon/webserver/cors/MappedCrossOriginConfig.java +++ b/webserver/cors/src/main/java/io/helidon/webserver/cors/MappedCrossOriginConfig.java @@ -169,7 +169,7 @@ public String toString() { /** * Fluent builder for {@code Mapped} cross-origin config. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private Optional nameOpt = Optional.empty(); private Optional enabledOpt = Optional.empty(); diff --git a/webserver/jersey/src/main/java/io/helidon/webserver/jersey/JerseySupport.java b/webserver/jersey/src/main/java/io/helidon/webserver/jersey/JerseySupport.java index 734fb64cf21..d8a67f2e2bf 100644 --- a/webserver/jersey/src/main/java/io/helidon/webserver/jersey/JerseySupport.java +++ b/webserver/jersey/src/main/java/io/helidon/webserver/jersey/JerseySupport.java @@ -468,7 +468,7 @@ public static Builder builder(Application application) { /** * Builder for convenient way to create {@link JerseySupport}. */ - public static final class Builder implements Configurable, io.helidon.common.Builder { + public static final class Builder implements Configurable, io.helidon.common.Builder { private ResourceConfig resourceConfig; private ExecutorService executorService; diff --git a/webserver/static-content/src/main/java/io/helidon/webserver/staticcontent/StaticContentSupport.java b/webserver/static-content/src/main/java/io/helidon/webserver/staticcontent/StaticContentSupport.java index 3d22f3099a2..8e863311225 100644 --- a/webserver/static-content/src/main/java/io/helidon/webserver/staticcontent/StaticContentSupport.java +++ b/webserver/static-content/src/main/java/io/helidon/webserver/staticcontent/StaticContentSupport.java @@ -126,7 +126,7 @@ static StaticContentSupport create(Path root) { * @param type of a subclass of a concrete builder */ @SuppressWarnings("unchecked") - abstract class Builder> implements io.helidon.common.Builder { + abstract class Builder> implements io.helidon.common.Builder { private String welcomeFileName; private Function resolvePathFunction = Function.identity(); @@ -157,7 +157,7 @@ public B welcomeFileName(String welcomeFileName) { throw new IllegalArgumentException("Welcome file cannot be empty"); } this.welcomeFileName = welcomeFileName; - return (B) this; + return identity(); } /** @@ -169,7 +169,7 @@ public B welcomeFileName(String welcomeFileName) { */ public B pathMapper(Function resolvePathFunction) { this.resolvePathFunction = resolvePathFunction; - return (B) this; + return identity(); } String welcomeFileName() { diff --git a/webserver/tyrus/src/main/java/io/helidon/webserver/tyrus/TyrusSupport.java b/webserver/tyrus/src/main/java/io/helidon/webserver/tyrus/TyrusSupport.java index 810a2993652..2344403abee 100644 --- a/webserver/tyrus/src/main/java/io/helidon/webserver/tyrus/TyrusSupport.java +++ b/webserver/tyrus/src/main/java/io/helidon/webserver/tyrus/TyrusSupport.java @@ -145,7 +145,7 @@ public static Builder builder() { /** * Builder for convenient way to create {@link TyrusSupport}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private Set> endpointClasses = new HashSet<>(); private Set endpointConfigs = new HashSet<>(); diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/DirectHandler.java b/webserver/webserver/src/main/java/io/helidon/webserver/DirectHandler.java index 46099055149..f8efcd6f45e 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/DirectHandler.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/DirectHandler.java @@ -170,7 +170,7 @@ Optional entity() { /** * Fluent API builder for {@link DirectHandler.TransportResponse}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private final Map> headers = new HashMap<>(); private Http.ResponseStatus status = Http.Status.BAD_REQUEST_400; diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/DirectHandlers.java b/webserver/webserver/src/main/java/io/helidon/webserver/DirectHandlers.java index ae35cfc1ee9..6603ba87ad2 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/DirectHandlers.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/DirectHandlers.java @@ -37,7 +37,7 @@ DirectHandler handler(EventType eventType) { return handlers.get(eventType); } - static class Builder implements io.helidon.common.Builder { + static class Builder implements io.helidon.common.Builder { private final Map handlers = new EnumMap<>(EventType.class); private final DirectHandler defaultHandler = new DefaultHandler(); diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/ExperimentalConfiguration.java b/webserver/webserver/src/main/java/io/helidon/webserver/ExperimentalConfiguration.java index 69dee4e83c7..9993a422a1c 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/ExperimentalConfiguration.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/ExperimentalConfiguration.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,7 +39,7 @@ static Builder builder() { /** * Builder for {@link ExperimentalConfiguration}. */ - final class Builder implements io.helidon.common.Builder { + final class Builder implements io.helidon.common.Builder { private Http2Configuration http2; private Builder() { diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/Http2Configuration.java b/webserver/webserver/src/main/java/io/helidon/webserver/Http2Configuration.java index a7639415411..22dc5b5eae5 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/Http2Configuration.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/Http2Configuration.java @@ -53,7 +53,7 @@ static Http2Configuration.Builder builder() { /** * Builder for {@link Http2Configuration}. */ - final class Builder implements io.helidon.common.Builder { + final class Builder implements io.helidon.common.Builder { private boolean enableHttp2 = false; private int http2MaxContentLength = DEFAULT_MAX_CONTENT_LENGTH; diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/PathTracingConfig.java b/webserver/webserver/src/main/java/io/helidon/webserver/PathTracingConfig.java index 78716fe6b2b..0e81a58a721 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/PathTracingConfig.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/PathTracingConfig.java @@ -68,7 +68,7 @@ static Builder builder() { /** * Fluent API builder for {@link PathTracingConfig}. */ - final class Builder implements io.helidon.common.Builder { + final class Builder implements io.helidon.common.Builder { private final List methods = new LinkedList<>(); private String path; private TracingConfig tracedConfig; diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/Routing.java b/webserver/webserver/src/main/java/io/helidon/webserver/Routing.java index f32c1389539..d6c93863d3b 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/Routing.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/Routing.java @@ -434,7 +434,7 @@ interface Rules { /** * A {@link Routing} builder. */ - class Builder implements Rules, io.helidon.common.Builder { + class Builder implements Rules, io.helidon.common.Builder { private final RouteListRoutingRules delegate = new RouteListRoutingRules(); private final List> errorHandlerRecords = new ArrayList<>(); diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/SSLContextBuilder.java b/webserver/webserver/src/main/java/io/helidon/webserver/SSLContextBuilder.java index 98af7180462..247de0c5a6a 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/SSLContextBuilder.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/SSLContextBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2020 Oracle and/or its affiliates. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -33,7 +33,7 @@ * or {@link io.helidon.webserver.SocketConfiguration.SocketConfigurationBuilder#tls(WebServerTls)} */ @Deprecated -public final class SSLContextBuilder implements Builder { +public final class SSLContextBuilder implements Builder { private final WebServerTls.Builder tlsConfig = WebServerTls.builder(); diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/ServerConfiguration.java b/webserver/webserver/src/main/java/io/helidon/webserver/ServerConfiguration.java index 20a2f3ed6a7..7efeef24b46 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/ServerConfiguration.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/ServerConfiguration.java @@ -303,7 +303,7 @@ static Builder builder(Config config) { */ @Deprecated final class Builder implements SocketConfiguration.SocketConfigurationBuilder, - io.helidon.common.Builder { + io.helidon.common.Builder { private static final AtomicInteger WEBSERVER_COUNTER = new AtomicInteger(1); private final SocketConfiguration.Builder defaultSocketBuilder = SocketConfiguration.builder(); diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/SocketConfiguration.java b/webserver/webserver/src/main/java/io/helidon/webserver/SocketConfiguration.java index ea095eea713..a3b59f0da05 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/SocketConfiguration.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/SocketConfiguration.java @@ -452,7 +452,7 @@ default B config(Config config) { * The {@link io.helidon.webserver.SocketConfiguration} builder class. */ @Configured - final class Builder implements SocketConfigurationBuilder, io.helidon.common.Builder { + final class Builder implements SocketConfigurationBuilder, io.helidon.common.Builder { /** * @deprecated remove once WebServer.Builder.addSocket(name, socket) methods are removed */ diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/StaticContentSupport.java b/webserver/webserver/src/main/java/io/helidon/webserver/StaticContentSupport.java index 9037f8e0b21..2e1d6d91bb8 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/StaticContentSupport.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/StaticContentSupport.java @@ -161,7 +161,7 @@ public static StaticContentSupport create(Path root) { /** * Fluent builder of the StaticContent detailed parameters. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private final Path fsRoot; private final String clRoot; diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/WebServer.java b/webserver/webserver/src/main/java/io/helidon/webserver/WebServer.java index 27266b7df8a..3c220227914 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/WebServer.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/WebServer.java @@ -357,7 +357,7 @@ static Builder builder(Routing routing) { * sockets and optional multiple routings. */ @Configured(root = true, prefix = "server", description = "Configuration of the HTTP server.") - final class Builder implements io.helidon.common.Builder, + final class Builder implements io.helidon.common.Builder, SocketConfiguration.SocketConfigurationBuilder, ParentingMediaContextBuilder, MediaContextBuilder { diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/WebServerTls.java b/webserver/webserver/src/main/java/io/helidon/webserver/WebServerTls.java index 8f4a739a851..123e62f0539 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/WebServerTls.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/WebServerTls.java @@ -119,7 +119,7 @@ public boolean enabled() { * Fluent API builder for {@link WebServerTls}. */ @Configured - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private final Set enabledTlsProtocols = new HashSet<>(); private SSLContext sslContext; diff --git a/webserver/webserver/src/main/java/io/helidon/webserver/WebTracingConfig.java b/webserver/webserver/src/main/java/io/helidon/webserver/WebTracingConfig.java index 3cc2dc3753f..6f790d1d311 100644 --- a/webserver/webserver/src/main/java/io/helidon/webserver/WebTracingConfig.java +++ b/webserver/webserver/src/main/java/io/helidon/webserver/WebTracingConfig.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019, 2020 Oracle and/or its affiliates. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -137,7 +137,7 @@ Service service() { /** * A fluent API builder for {@link WebTracingConfig}. */ - public static class Builder implements io.helidon.common.Builder { + public static class Builder implements io.helidon.common.Builder { private final List pathTracingConfigs = new LinkedList<>(); private TracingConfig tracedConfig = TracingConfig.ENABLED;