
software.amazon.awssdk.services.elasticbeanstalk.DefaultElasticBeanstalkClientBuilder Maven / Gradle / Ivy
/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package software.amazon.awssdk.services.elasticbeanstalk;
import java.net.URI;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.annotations.SdkInternalApi;
import software.amazon.awssdk.awscore.client.config.AwsClientOption;
import software.amazon.awssdk.core.client.config.SdkClientConfiguration;
import software.amazon.awssdk.core.client.config.SdkClientOption;
import software.amazon.awssdk.services.elasticbeanstalk.endpoints.ElasticBeanstalkEndpointProvider;
/**
* Internal implementation of {@link ElasticBeanstalkClientBuilder}.
*/
@Generated("software.amazon.awssdk:codegen")
@SdkInternalApi
final class DefaultElasticBeanstalkClientBuilder extends
DefaultElasticBeanstalkBaseClientBuilder implements
ElasticBeanstalkClientBuilder {
@Override
public DefaultElasticBeanstalkClientBuilder endpointProvider(ElasticBeanstalkEndpointProvider endpointProvider) {
clientConfiguration.option(SdkClientOption.ENDPOINT_PROVIDER, endpointProvider);
return this;
}
@Override
protected final ElasticBeanstalkClient buildClient() {
SdkClientConfiguration clientConfiguration = super.syncClientConfiguration();
this.validateClientOptions(clientConfiguration);
ElasticBeanstalkServiceClientConfiguration serviceClientConfiguration = initializeServiceClientConfig(clientConfiguration);
ElasticBeanstalkClient client = new DefaultElasticBeanstalkClient(serviceClientConfiguration, clientConfiguration);
return client;
}
private ElasticBeanstalkServiceClientConfiguration initializeServiceClientConfig(SdkClientConfiguration clientConfig) {
URI endpointOverride = null;
if (Boolean.TRUE.equals(clientConfig.option(SdkClientOption.ENDPOINT_OVERRIDDEN))) {
endpointOverride = clientConfig.option(SdkClientOption.ENDPOINT);
}
return ElasticBeanstalkServiceClientConfiguration.builder().overrideConfiguration(overrideConfiguration())
.region(clientConfig.option(AwsClientOption.AWS_REGION)).endpointOverride(endpointOverride)
.endpointProvider(clientConfig.option(SdkClientOption.ENDPOINT_PROVIDER)).build();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy