software.amazon.awssdk.regions.servicemetadata.ModelsLexServiceMetadata Maven / Gradle / Ivy
/*
* Copyright 2019-2024 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.regions.servicemetadata;
import java.net.URI;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import software.amazon.awssdk.annotations.Generated;
import software.amazon.awssdk.annotations.SdkPublicApi;
import software.amazon.awssdk.regions.EndpointTag;
import software.amazon.awssdk.regions.PartitionEndpointKey;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.regions.ServiceEndpointKey;
import software.amazon.awssdk.regions.ServiceMetadata;
import software.amazon.awssdk.regions.ServicePartitionMetadata;
import software.amazon.awssdk.regions.internal.DefaultServicePartitionMetadata;
import software.amazon.awssdk.regions.internal.util.ServiceMetadataUtils;
import software.amazon.awssdk.utils.ImmutableMap;
import software.amazon.awssdk.utils.Pair;
@Generated("software.amazon.awssdk:codegen")
@SdkPublicApi
public final class ModelsLexServiceMetadata implements ServiceMetadata {
private static final String ENDPOINT_PREFIX = "models.lex";
private static final List REGIONS = Collections.unmodifiableList(Arrays.asList(Region.of("ap-northeast-1"),
Region.of("ap-southeast-1"), Region.of("ap-southeast-2"), Region.of("eu-central-1"), Region.of("eu-west-1"),
Region.of("eu-west-2"), Region.of("us-east-1"), Region.of("us-east-1-fips"), Region.of("us-west-2"),
Region.of("us-west-2-fips"), Region.of("us-gov-west-1"), Region.of("us-gov-west-1-fips")));
private static final List PARTITIONS = Collections.unmodifiableList(Arrays.asList(
new DefaultServicePartitionMetadata("aws", null), new DefaultServicePartitionMetadata("aws-us-gov", null)));
private static final Map SIGNING_REGIONS_BY_REGION = ImmutableMap
. builder()
.put(ServiceEndpointKey.builder().region(Region.of("us-east-1-fips")).build(), "us-east-1")
.put(ServiceEndpointKey.builder().region(Region.of("us-west-2-fips")).build(), "us-west-2")
.put(ServiceEndpointKey.builder().region(Region.of("us-gov-west-1-fips")).build(), "us-gov-west-1").build();
private static final Map, String> SIGNING_REGIONS_BY_PARTITION = ImmutableMap
., String> builder().build();
private static final Map DNS_SUFFIXES_BY_REGION = ImmutableMap
. builder().build();
private static final Map, String> DNS_SUFFIXES_BY_PARTITION = ImmutableMap
., String> builder().build();
private static final Map HOSTNAMES_BY_REGION = ImmutableMap
. builder()
.put(ServiceEndpointKey.builder().region(Region.of("us-east-1")).tags(EndpointTag.of("fips")).build(),
"models-fips.lex.us-east-1.amazonaws.com")
.put(ServiceEndpointKey.builder().region(Region.of("us-east-1-fips")).build(),
"models-fips.lex.us-east-1.amazonaws.com")
.put(ServiceEndpointKey.builder().region(Region.of("us-west-2")).tags(EndpointTag.of("fips")).build(),
"models-fips.lex.us-west-2.amazonaws.com")
.put(ServiceEndpointKey.builder().region(Region.of("us-west-2-fips")).build(),
"models-fips.lex.us-west-2.amazonaws.com")
.put(ServiceEndpointKey.builder().region(Region.of("us-gov-west-1")).tags(EndpointTag.of("fips")).build(),
"models-fips.lex.us-gov-west-1.amazonaws.com")
.put(ServiceEndpointKey.builder().region(Region.of("us-gov-west-1-fips")).build(),
"models-fips.lex.us-gov-west-1.amazonaws.com").build();
private static final Map, String> HOSTNAMES_BY_PARTITION = ImmutableMap
., String> builder()
.put(Pair.of("aws", PartitionEndpointKey.builder().tags(EndpointTag.of("fips")).build()),
"models-fips.lex.{region}.{dnsSuffix}")
.put(Pair.of("aws-us-gov", PartitionEndpointKey.builder().tags(EndpointTag.of("fips")).build()),
"models-fips.lex.{region}.{dnsSuffix}").build();
@Override
public List regions() {
return REGIONS;
}
@Override
public List servicePartitions() {
return PARTITIONS;
}
@Override
public URI endpointFor(ServiceEndpointKey key) {
return ServiceMetadataUtils.endpointFor(ServiceMetadataUtils.hostname(key, HOSTNAMES_BY_REGION, HOSTNAMES_BY_PARTITION),
ENDPOINT_PREFIX, key.region().id(),
ServiceMetadataUtils.dnsSuffix(key, DNS_SUFFIXES_BY_REGION, DNS_SUFFIXES_BY_PARTITION));
}
@Override
public Region signingRegion(ServiceEndpointKey key) {
return ServiceMetadataUtils.signingRegion(key, SIGNING_REGIONS_BY_REGION, SIGNING_REGIONS_BY_PARTITION);
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy