software.amazon.awssdk.services.iottwinmaker.DefaultIoTTwinMakerClientBuilder 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.iottwinmaker;
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.iottwinmaker.endpoints.IoTTwinMakerEndpointProvider;
/**
* Internal implementation of {@link IoTTwinMakerClientBuilder}.
*/
@Generated("software.amazon.awssdk:codegen")
@SdkInternalApi
final class DefaultIoTTwinMakerClientBuilder extends
DefaultIoTTwinMakerBaseClientBuilder implements IoTTwinMakerClientBuilder {
@Override
public DefaultIoTTwinMakerClientBuilder endpointProvider(IoTTwinMakerEndpointProvider endpointProvider) {
clientConfiguration.option(SdkClientOption.ENDPOINT_PROVIDER, endpointProvider);
return this;
}
@Override
protected final IoTTwinMakerClient buildClient() {
SdkClientConfiguration clientConfiguration = super.syncClientConfiguration();
this.validateClientOptions(clientConfiguration);
IoTTwinMakerServiceClientConfiguration serviceClientConfiguration = initializeServiceClientConfig(clientConfiguration);
IoTTwinMakerClient client = new DefaultIoTTwinMakerClient(serviceClientConfiguration, clientConfiguration);
return client;
}
private IoTTwinMakerServiceClientConfiguration initializeServiceClientConfig(SdkClientConfiguration clientConfig) {
URI endpointOverride = null;
if (Boolean.TRUE.equals(clientConfig.option(SdkClientOption.ENDPOINT_OVERRIDDEN))) {
endpointOverride = clientConfig.option(SdkClientOption.ENDPOINT);
}
return IoTTwinMakerServiceClientConfiguration.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