diff --git a/VERSION b/VERSION
index 329966fb472..65371e010b3 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.11.409
\ No newline at end of file
+1.11.410
\ No newline at end of file
diff --git a/generated/src/aws-cpp-sdk-dynamodb/include/aws/dynamodb/DynamoDBClientConfiguration.h b/generated/src/aws-cpp-sdk-dynamodb/include/aws/dynamodb/DynamoDBClientConfiguration.h
index 49f5a9a449b..b84af66b0e5 100644
--- a/generated/src/aws-cpp-sdk-dynamodb/include/aws/dynamodb/DynamoDBClientConfiguration.h
+++ b/generated/src/aws-cpp-sdk-dynamodb/include/aws/dynamodb/DynamoDBClientConfiguration.h
@@ -82,6 +82,14 @@ namespace Aws
*/
Aws::Crt::Optional& enableEndpointDiscovery;
+ /**
+ * The AWS AccountId used for the request.
+ */
+ Aws::String accountId;
+ /**
+ * The AccountId Endpoint Mode.
+ */
+ Aws::String accountIdEndpointMode = "preferred";
private:
void LoadDynamoDBSpecificConfig(const Aws::String& profileName);
};
diff --git a/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBClientConfiguration.cpp b/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBClientConfiguration.cpp
index 709bcc0fe68..353bfeb192c 100644
--- a/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBClientConfiguration.cpp
+++ b/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBClientConfiguration.cpp
@@ -45,6 +45,15 @@ void DynamoDBClientConfiguration::LoadDynamoDBSpecificConfig(const Aws::String&
if(!enableEndpointDiscovery) {
enableEndpointDiscovery = IsEndpointDiscoveryEnabled(this->endpointOverride, inputProfileName);
}
+ // accountId is intentionally not set here: AWS_ACCOUNT_ID env variable may not match the provided credentials.
+ // it must be set by an auth provider / identity resolver or by an SDK user.
+ static const char AWS_ACCOUNT_ID_ENDPOINT_MODE_ENVIRONMENT_VARIABLE[] = "AWS_ACCOUNT_ID_ENDPOINT_MODE";
+ static const char AWS_ACCOUNT_ID_ENDPOINT_MODE_CONFIG_FILE_OPTION[] = "account_id_endpoint_mode";
+ accountIdEndpointMode = ClientConfiguration::LoadConfigFromEnvOrProfile(AWS_ACCOUNT_ID_ENDPOINT_MODE_ENVIRONMENT_VARIABLE,
+ inputProfileName,
+ AWS_ACCOUNT_ID_ENDPOINT_MODE_CONFIG_FILE_OPTION,
+ {"required", "disabled", "preferred"}, /* allowed values */
+ "preferred" /* default value */);
}
DynamoDBClientConfiguration::DynamoDBClientConfiguration(const Client::ClientConfigurationInitValues &configuration)
diff --git a/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBEndpointProvider.cpp b/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBEndpointProvider.cpp
index 345928a70f8..80c9079ee8b 100644
--- a/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBEndpointProvider.cpp
+++ b/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBEndpointProvider.cpp
@@ -31,6 +31,12 @@ namespace Endpoint
{
SetFromClientConfiguration(static_cast(config));
+ if(!config.accountId.empty()) {
+ SetStringParameter("AccountId", config.accountId);
+ }
+ if(!config.accountIdEndpointMode.empty()) {
+ SetStringParameter("AccountIdEndpointMode", config.accountIdEndpointMode);
+ }
}
} // namespace Endpoint
} // namespace DynamoDB
diff --git a/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBEndpointRules.cpp b/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBEndpointRules.cpp
index d85f2290081..3a277786640 100644
--- a/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBEndpointRules.cpp
+++ b/generated/src/aws-cpp-sdk-dynamodb/source/DynamoDBEndpointRules.cpp
@@ -10,8 +10,8 @@ namespace Aws
{
namespace DynamoDB
{
-const size_t DynamoDBEndpointRules::RulesBlobStrLen = 3956;
-const size_t DynamoDBEndpointRules::RulesBlobSize = 3957;
+const size_t DynamoDBEndpointRules::RulesBlobStrLen = 7289;
+const size_t DynamoDBEndpointRules::RulesBlobSize = 7290;
using RulesBlobT = Aws::Array;
static constexpr RulesBlobT RulesBlob = {{
@@ -48,132 +48,265 @@ static constexpr RulesBlobT RulesBlob = {{
'e','d','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',
':','"','O','v','e','r','r','i','d','e',' ','t','h','e',' ','e','n','d','p','o','i','n','t',' ','u',
's','e','d',' ','t','o',' ','s','e','n','d',' ','t','h','i','s',' ','r','e','q','u','e','s','t','"',
-',','"','t','y','p','e','"',':','"','S','t','r','i','n','g','"','}','}',',','"','r','u','l','e','s',
-'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
-'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
-'d','p','o','i','n','t','"','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
-'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
-'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
-'s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':',
-'"','I','n','v','a','l','i','d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','F',
-'I','P','S',' ','a','n','d',' ','c','u','s','t','o','m',' ','e','n','d','p','o','i','n','t',' ','a',
-'r','e',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','"',',','"','t','y','p','e','"',':',
-'"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
-'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
-'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"',
-'}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i',
-'d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','D','u','a','l','s','t','a','c',
-'k',' ','a','n','d',' ','c','u','s','t','o','m',' ','e','n','d','p','o','i','n','t',' ','a','r','e',
-' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','"',',','"','t','y','p','e','"',':','"','e',
-'r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"',
-'e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','{','"','r','e','f','"',':','"',
-'E','n','d','p','o','i','n','t','"','}',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{',
-'}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e',
-'n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',
-',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s',
-'S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i',
-'o','n','"','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t',
-'i','o','n','s','"',':','[','{','"','f','n','"',':','"','a','w','s','.','p','a','r','t','i','t','i',
-'o','n','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o',
-'n','"','}',']',',','"','a','s','s','i','g','n','"',':','"','P','a','r','t','i','t','i','o','n','R',
-'e','s','u','l','t','"','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i',
-'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
-'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F',
-'I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e',
+',','"','t','y','p','e','"',':','"','S','t','r','i','n','g','"','}',',','"','A','c','c','o','u','n',
+'t','I','d','"',':','{','"','b','u','i','l','t','I','n','"',':','"','A','W','S',':',':','A','u','t',
+'h',':',':','A','c','c','o','u','n','t','I','d','"',',','"','r','e','q','u','i','r','e','d','"',':',
+'f','a','l','s','e',',','"','d','o','c','u','m','e','n','t','a','t','i','o','n','"',':','"','T','h',
+'e',' ','A','W','S',' ','A','c','c','o','u','n','t','I','d',' ','u','s','e','d',' ','f','o','r',' ',
+'t','h','e',' ','r','e','q','u','e','s','t','.','"',',','"','t','y','p','e','"',':','"','S','t','r',
+'i','n','g','"','}',',','"','A','c','c','o','u','n','t','I','d','E','n','d','p','o','i','n','t','M',
+'o','d','e','"',':','{','"','b','u','i','l','t','I','n','"',':','"','A','W','S',':',':','A','u','t',
+'h',':',':','A','c','c','o','u','n','t','I','d','E','n','d','p','o','i','n','t','M','o','d','e','"',
+',','"','r','e','q','u','i','r','e','d','"',':','f','a','l','s','e',',','"','d','o','c','u','m','e',
+'n','t','a','t','i','o','n','"',':','"','T','h','e',' ','A','c','c','o','u','n','t','I','d',' ','E',
+'n','d','p','o','i','n','t',' ','M','o','d','e','.','"',',','"','t','y','p','e','"',':','"','S','t',
+'r','i','n','g','"','}','}',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','E','n','d','p','o','i','n','t','"','}',']','}',']',
+',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r',
+'u','e',']','}',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','C','o',
+'n','f','i','g','u','r','a','t','i','o','n',':',' ','F','I','P','S',' ','a','n','d',' ','c','u','s',
+'t','o','m',' ','e','n','d','p','o','i','n','t',' ','a','r','e',' ','n','o','t',' ','s','u','p','p',
+'o','r','t','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e',
'a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':',
'"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',']',',','"',
-'r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"',
-'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
-'"',':','[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"',
-'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R',
-'e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','F','I','P','S','"',']','}',']',
-'}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"',
-'a','r','g','v','"',':','[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t',
-'r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t',
-'i','o','n','R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a','l',
-'S','t','a','c','k','"',']','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
+'e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','C','o','n','f','i','g','u','r','a',
+'t','i','o','n',':',' ','D','u','a','l','s','t','a','c','k',' ','a','n','d',' ','c','u','s','t','o',
+'m',' ','e','n','d','p','o','i','n','t',' ','a','r','e',' ','n','o','t',' ','s','u','p','p','o','r',
+'t','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o',
'n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{',
-'"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','d','y','n','a','m','o','d','b','-','f',
-'i','p','s','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e',
-'s','u','l','t','#','d','u','a','l','S','t','a','c','k','D','n','s','S','u','f','f','i','x','}','"',
-',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s',
-'"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',
-',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i',
-'o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','F','I','P','S',' ','a','n','d',
-' ','D','u','a','l','S','t','a','c','k',' ','a','r','e',' ','e','n','a','b','l','e','d',',',' ','b',
-'u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o',
-'t',' ','s','u','p','p','o','r','t',' ','o','n','e',' ','o','r',' ','b','o','t','h','"',',','"','t',
-'y','p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t','y','p','e','"',':','"','t','r',
-'e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',
-':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
-'{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',']',
-',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
-'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
-'g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g',
-'v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u',
-'l','t','"','}',',','"','s','u','p','p','o','r','t','s','F','I','P','S','"',']','}',',','t','r','u',
-'e',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n',
-'s','"',':','[','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',',
-'"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"',
-'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R',
-'e','s','u','l','t','"','}',',','"','n','a','m','e','"',']','}',',','"','a','w','s','-','u','s','-',
-'g','o','v','"',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',
-':','"','h','t','t','p','s',':','/','/','d','y','n','a','m','o','d','b','.','{','R','e','g','i','o',
-'n','}','.','a','m','a','z','o','n','a','w','s','.','c','o','m','"',',','"','p','r','o','p','e','r',
-'t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t',
-'y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t',
-'i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l',
-'"',':','"','h','t','t','p','s',':','/','/','d','y','n','a','m','o','d','b','-','f','i','p','s','.',
-'{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t',
-'#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',
-':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':',
-'"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e',
-'"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o',
-'r','"',':','"','F','I','P','S',' ','i','s',' ','e','n','a','b','l','e','d',' ','b','u','t',' ','t',
-'h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u',
-'p','p','o','r','t',' ','F','I','P','S','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r',
-'"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d',
+'"','u','r','l','"',':','"','{','E','n','d','p','o','i','n','t','}','"',',','"','p','r','o','p','e',
+'r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"',
+'t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',
+':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{',
+'"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','R','e','g','i','o','n','"','}',']','}',']',',','"','r','u','l','e','s','"',':','[',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','a','w','s',
+'.','p','a','r','t','i','t','i','o','n','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','R','e','g','i','o','n','"','}',']',',','"','a','s','s','i','g','n','"',':','"','P','a',
+'r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',']',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','s','t',
+'r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','R','e','g','i','o','n','"','}',',','"','l','o','c','a','l','"',']','}',']',',','"','r',
+'u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f',
+'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']',
+'}',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','C','o','n','f','i',
+'g','u','r','a','t','i','o','n',':',' ','F','I','P','S',' ','a','n','d',' ','l','o','c','a','l',' ',
+'e','n','d','p','o','i','n','t',' ','a','r','e',' ','n','o','t',' ','s','u','p','p','o','r','t','e',
+'d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d',
'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e',
-'D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',']',',','"','r','u','l','e',
+'D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o',
+'r','"',':','"','I','n','v','a','l','i','d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',
+':',' ','D','u','a','l','s','t','a','c','k',' ','a','n','d',' ','l','o','c','a','l',' ','e','n','d',
+'p','o','i','n','t',' ','a','r','e',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','"',',',
+'"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i',
+'o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',
+':','"','h','t','t','p',':','/','/','l','o','c','a','l','h','o','s','t',':','8','0','0','0','"',',',
+'"','p','r','o','p','e','r','t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e',
+'s','"',':','[','{','"','n','a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n',
+'i','n','g','N','a','m','e','"',':','"','d','y','n','a','m','o','d','b','"',',','"','s','i','g','n',
+'i','n','g','R','e','g','i','o','n','"',':','"','u','s','-','e','a','s','t','-','1','"','}',']','}',
+',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n',
+'d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S',
+'e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','o','u',
+'n','t','I','d','E','n','d','p','o','i','n','t','M','o','d','e','"','}',']','}',',','{','"','f','n',
+'"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','A','c','c','o','u','n','t','I','d','E','n','d','p','o','i','n','t',
+'M','o','d','e','"','}',',','"','r','e','q','u','i','r','e','d','"',']','}',',','{','"','f','n','"',
+':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','S',
+'e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','o','u',
+'n','t','I','d','"','}',']','}',']','}',']',',','"','e','r','r','o','r','"',':','"','A','c','c','o',
+'u','n','t','I','d','E','n','d','p','o','i','n','t','M','o','d','e',' ','i','s',' ','r','e','q','u',
+'i','r','e','d',' ','b','u','t',' ','n','o',' ','A','c','c','o','u','n','t','I','D',' ','w','a','s',
+' ','p','r','o','v','i','d','e','d',' ','o','r',' ','a','b','l','e',' ','t','o',' ','b','e',' ','l',
+'o','a','d','e','d','.','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S','e',
+'t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','o','u','n',
+'t','I','d','"','}',']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a',
+'l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t',
+'r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t',
+'i','o','n','R','e','s','u','l','t','"','}',',','"','n','a','m','e','"',']','}',',','"','a','w','s',
+'"',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{',
+'"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u',
+'e',']','}',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':',
+'[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c',
+'k','"','}',',','t','r','u','e',']','}',']','}',',','{','"','f','n','"',':','"','n','o','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','i','s','V','a','l','i','d','H','o','s',
+'t','L','a','b','e','l','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A',
+'c','c','o','u','n','t','I','d','"','}',',','f','a','l','s','e',']','}',']','}',']',',','"','e','r',
+'r','o','r','"',':','"','C','r','e','d','e','n','t','i','a','l','s','-','s','o','u','r','c','e','d',
+' ','a','c','c','o','u','n','t',' ','I','D',' ','p','a','r','a','m','e','t','e','r',' ','i','s',' ',
+'i','n','v','a','l','i','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r',
+'u','e',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s',
+'"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',
+',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o',
+'n','R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','F','I','P','S','"',']',
+'}',',','t','r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q',
+'u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A',
+'t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t',
+'i','t','i','o','n','R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','D','u',
+'a','l','S','t','a','c','k','"',']','}',',','t','r','u','e',']','}',']',',','"','r','u','l','e','s',
+'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
+'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c',
+'c','o','u','n','t','I','d','E','n','d','p','o','i','n','t','M','o','d','e','"','}',']','}',',','{',
+'"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','A','c','c','o','u','n','t','I','d','E','n','d','p','o',
+'i','n','t','M','o','d','e','"','}',',','"','d','i','s','a','b','l','e','d','"',']','}',']',',','"',
+'e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/',
+'/','d','y','n','a','m','o','d','b','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{',
+'P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','u','a','l','S','t','a','c','k',
+'D','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':',
+'{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"',
+'e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t',
+'p','s',':','/','/','d','y','n','a','m','o','d','b','-','f','i','p','s','.','{','R','e','g','i','o',
+'n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','u','a','l','S',
+'t','a','c','k','D','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t',
+'r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e',
+'r','r','o','r','"',':','"','F','I','P','S',' ','a','n','d',' ','D','u','a','l','S','t','a','c','k',
+' ','a','r','e',' ','e','n','a','b','l','e','d',',',' ','b','u','t',' ','t','h','i','s',' ','p','a',
+'r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ',
+'o','n','e',' ','o','r',' ','b','o','t','h','"',',','"','t','y','p','e','"',':','"','e','r','r','o',
+'r','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E',
+'q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s',
+'e','F','I','P','S','"','}',',','t','r','u','e',']','}',']',',','"','r','u','l','e','s','"',':','[',
+'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',
+':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',',','"','s','u','p','p',
+'o','r','t','s','F','I','P','S','"',']','}',',','t','r','u','e',']','}',']',',','"','r','u','l','e',
's','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
-'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','t',
-'r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v',
-'"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l',
-'t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a','l','S','t','a','c','k','"',']','}',
-']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s',
-'"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h',
-'t','t','p','s',':','/','/','d','y','n','a','m','o','d','b','.','{','R','e','g','i','o','n','}','.',
-'{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','u','a','l','S','t','a','c',
-'k','D','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',
-':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':',
-'"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e',
-'"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o',
-'r','"',':','"','D','u','a','l','S','t','a','c','k',' ','i','s',' ','e','n','a','b','l','e','d',' ',
-'b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n',
-'o','t',' ','s','u','p','p','o','r','t',' ','D','u','a','l','S','t','a','c','k','"',',','"','t','y',
-'p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e',
-'e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
'"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
-'r','e','f','"',':','"','R','e','g','i','o','n','"','}',',','"','l','o','c','a','l','"',']','}',']',
-',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p',':',
-'/','/','l','o','c','a','l','h','o','s','t',':','8','0','0','0','"',',','"','p','r','o','p','e','r',
-'t','i','e','s','"',':','{','"','a','u','t','h','S','c','h','e','m','e','s','"',':','[','{','"','n',
-'a','m','e','"',':','"','s','i','g','v','4','"',',','"','s','i','g','n','i','n','g','N','a','m','e',
-'"',':','"','d','y','n','a','m','o','d','b','"',',','"','s','i','g','n','i','n','g','R','e','g','i',
-'o','n','"',':','"','u','s','-','e','a','s','t','-','1','"','}',']','}',',','"','h','e','a','d','e',
-'r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"',
-'}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o',
-'i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','d','y','n','a',
-'m','o','d','b','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R',
-'e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r',
-'t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t',
-'y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':',
-'"','t','r','e','e','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{',
-'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"',
-'I','n','v','a','l','i','d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','M','i',
-'s','s','i','n','g',' ','R','e','g','i','o','n','"',',','"','t','y','p','e','"',':','"','e','r','r',
-'o','r','"','}',']','}','\0'
+'f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',',','"','n',
+'a','m','e','"',']','}',',','"','a','w','s','-','u','s','-','g','o','v','"',']','}',']',',','"','r',
+'u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f',
+'n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','A','c','c','o','u','n','t','I','d','E','n','d','p','o','i','n','t','M','o','d','e','"','}',
+']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','o','u','n','t','I','d','E',
+'n','d','p','o','i','n','t','M','o','d','e','"','}',',','"','d','i','s','a','b','l','e','d','"',']',
+'}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t',
+'p','s',':','/','/','d','y','n','a','m','o','d','b','.','{','R','e','g','i','o','n','}','.','{','P',
+'a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}',
+'"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r',
+'s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',
+',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i',
+'n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','d','y','n','a','m',
+'o','d','b','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e',
+'s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t',
+'i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y',
+'p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"',
+'t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f',
+'n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','A','c','c','o','u','n','t','I','d','E','n','d','p','o','i','n','t','M','o','d','e','"','}',
+']','}',',','{','"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"',
+'a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','o','u','n','t','I','d','E',
+'n','d','p','o','i','n','t','M','o','d','e','"','}',',','"','d','i','s','a','b','l','e','d','"',']',
+'}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t',
+'p','s',':','/','/','d','y','n','a','m','o','d','b','-','f','i','p','s','.','{','R','e','g','i','o',
+'n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u',
+'f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h',
+'e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o',
+'i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/',
+'d','y','n','a','m','o','d','b','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','P',
+'a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}',
+'"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r',
+'s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',
+']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t',
+'i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','F','I','P','S',' ','i','s',
+' ','e','n','a','b','l','e','d',' ','b','u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i',
+'o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','F','I','P','S','"',
+',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t','y','p','e','"',':',
+'"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"',
+'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',
+',','t','r','u','e',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u',
+'a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','g','e','t','A','t',
+'t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i',
+'t','i','o','n','R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a',
+'l','S','t','a','c','k','"',']','}',',','t','r','u','e',']','}',']',',','"','r','u','l','e','s','"',
+':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i',
+'s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c',
+'o','u','n','t','I','d','E','n','d','p','o','i','n','t','M','o','d','e','"','}',']','}',',','{','"',
+'f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','A','c','c','o','u','n','t','I','d','E','n','d','p','o','i',
+'n','t','M','o','d','e','"','}',',','"','d','i','s','a','b','l','e','d','"',']','}',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/',
+'d','y','n','a','m','o','d','b','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t',
+'i','o','n','R','e','s','u','l','t','#','d','u','a','l','S','t','a','c','k','D','n','s','S','u','f',
+'f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e',
+'a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i',
+'n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n',
+'d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','d',
+'y','n','a','m','o','d','b','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i',
+'o','n','R','e','s','u','l','t','#','d','u','a','l','S','t','a','c','k','D','n','s','S','u','f','f',
+'i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a',
+'d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n',
+'t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','D','u','a','l',
+'S','t','a','c','k',' ','i','s',' ','e','n','a','b','l','e','d',' ','b','u','t',' ','t','h','i','s',
+' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o',
+'r','t',' ','D','u','a','l','S','t','a','c','k','"',',','"','t','y','p','e','"',':','"','e','r','r',
+'o','r','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',',
+'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','A','c','c','o','u','n','t','I','d',
+'E','n','d','p','o','i','n','t','M','o','d','e','"','}',']','}',',','{','"','f','n','"',':','"','s',
+'t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e',
+'f','"',':','"','A','c','c','o','u','n','t','I','d','E','n','d','p','o','i','n','t','M','o','d','e',
+'"','}',',','"','d','i','s','a','b','l','e','d','"',']','}',']',',','"','e','n','d','p','o','i','n',
+'t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','d','y','n','a','m','o',
+'d','b','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s',
+'u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i',
+'e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p',
+'e','"',':','"','e','n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o',
+'n','s','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','A','c','c','o','u','n','t','I','d','"','}',']','}',',','{',
+'"','f','n','"',':','"','s','t','r','i','n','g','E','q','u','a','l','s','"',',','"','a','r','g','v',
+'"',':','[','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',
+':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t',
+'"','}',',','"','n','a','m','e','"',']','}',',','"','a','w','s','"',']','}',',','{','"','f','n','"',
+':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','b','o','o',
+'l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',']','}',',','{','"','f',
+'n','"',':','"','n','o','t','"',',','"','a','r','g','v','"',':','[','{','"','f','n','"',':','"','b',
+'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r',
+'e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',']',
+'}',']','}',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h',
+'t','t','p','s',':','/','/','{','A','c','c','o','u','n','t','I','d','}','.','d','d','b','.','{','R',
+'e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d',
+'n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{',
+'}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e',
+'n','d','p','o','i','n','t','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p',
+'s',':','/','/','d','y','n','a','m','o','d','b','.','{','R','e','g','i','o','n','}','.','{','P','a',
+'r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',
+',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s',
+'"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',
+',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',']',',','"','t','y','p','e','"',':','"',
+'t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"',
+'e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','C','o','n','f','i','g','u','r','a',
+'t','i','o','n',':',' ','M','i','s','s','i','n','g',' ','R','e','g','i','o','n','"',',','"','t','y',
+'p','e','"',':','"','e','r','r','o','r','"','}',']','}','\0'
}};
const char* DynamoDBEndpointRules::GetRulesBlob()
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/SageMakerMetricsClient.h b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/SageMakerMetricsClient.h
index da391dbba18..63dd36a5150 100644
--- a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/SageMakerMetricsClient.h
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/SageMakerMetricsClient.h
@@ -80,10 +80,35 @@ namespace SageMakerMetrics
/* End of legacy constructors due deprecation */
virtual ~SageMakerMetricsClient();
+ /**
+ * Used to retrieve training metrics from SageMaker.
See Also:
+ * AWS
+ * API Reference
+ */
+ virtual Model::BatchGetMetricsOutcome BatchGetMetrics(const Model::BatchGetMetricsRequest& request) const;
+
+ /**
+ * A Callable wrapper for BatchGetMetrics that returns a future to the operation so that it can be executed in parallel to other requests.
+ */
+ template
+ Model::BatchGetMetricsOutcomeCallable BatchGetMetricsCallable(const BatchGetMetricsRequestT& request) const
+ {
+ return SubmitCallable(&SageMakerMetricsClient::BatchGetMetrics, request);
+ }
+
+ /**
+ * An Async wrapper for BatchGetMetrics that queues the request into a thread executor and triggers associated callback when operation has finished.
+ */
+ template
+ void BatchGetMetricsAsync(const BatchGetMetricsRequestT& request, const BatchGetMetricsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
+ {
+ return SubmitAsync(&SageMakerMetricsClient::BatchGetMetrics, request, handler, context);
+ }
+
/**
* Used to ingest training metrics into SageMaker. These metrics can be
- * visualized in SageMaker Studio and retrieved with the GetMetrics
- * API.
See Also:
See Also:
AWS
* API Reference
*/
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/SageMakerMetricsServiceClientModel.h b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/SageMakerMetricsServiceClientModel.h
index 100af76f538..bebdd04a8ef 100644
--- a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/SageMakerMetricsServiceClientModel.h
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/SageMakerMetricsServiceClientModel.h
@@ -18,6 +18,7 @@
/* End of generic header includes */
/* Service model headers required in SageMakerMetricsClient header */
+#include
#include
/* End of service model headers required in SageMakerMetricsClient header */
@@ -59,14 +60,17 @@ namespace Aws
namespace Model
{
/* Service model forward declarations required in SageMakerMetricsClient header */
+ class BatchGetMetricsRequest;
class BatchPutMetricsRequest;
/* End of service model forward declarations required in SageMakerMetricsClient header */
/* Service model Outcome class definitions */
+ typedef Aws::Utils::Outcome BatchGetMetricsOutcome;
typedef Aws::Utils::Outcome BatchPutMetricsOutcome;
/* End of service model Outcome class definitions */
/* Service model Outcome callable definitions */
+ typedef std::future BatchGetMetricsOutcomeCallable;
typedef std::future BatchPutMetricsOutcomeCallable;
/* End of service model Outcome callable definitions */
} // namespace Model
@@ -74,6 +78,7 @@ namespace Aws
class SageMakerMetricsClient;
/* Service model async handlers definitions */
+ typedef std::function&) > BatchGetMetricsResponseReceivedHandler;
typedef std::function&) > BatchPutMetricsResponseReceivedHandler;
/* End of service model async handlers definitions */
} // namespace SageMakerMetrics
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/BatchGetMetricsRequest.h b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/BatchGetMetricsRequest.h
new file mode 100644
index 00000000000..b131ed50403
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/BatchGetMetricsRequest.h
@@ -0,0 +1,57 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include
+#include
+#include
+#include
+#include
+
+namespace Aws
+{
+namespace SageMakerMetrics
+{
+namespace Model
+{
+
+ /**
+ */
+ class BatchGetMetricsRequest : public SageMakerMetricsRequest
+ {
+ public:
+ AWS_SAGEMAKERMETRICS_API BatchGetMetricsRequest();
+
+ // Service request name is the Operation name which will send this request out,
+ // each operation should has unique request name, so that we can get operation's name from this request.
+ // Note: this is not true for response, multiple operations may have the same response name,
+ // so we can not get operation's name from response.
+ inline virtual const char* GetServiceRequestName() const override { return "BatchGetMetrics"; }
+
+ AWS_SAGEMAKERMETRICS_API Aws::String SerializePayload() const override;
+
+
+ ///@{
+ /**
+ * Queries made to retrieve training metrics from SageMaker.
+ */
+ inline const Aws::Vector& GetMetricQueries() const{ return m_metricQueries; }
+ inline bool MetricQueriesHasBeenSet() const { return m_metricQueriesHasBeenSet; }
+ inline void SetMetricQueries(const Aws::Vector& value) { m_metricQueriesHasBeenSet = true; m_metricQueries = value; }
+ inline void SetMetricQueries(Aws::Vector&& value) { m_metricQueriesHasBeenSet = true; m_metricQueries = std::move(value); }
+ inline BatchGetMetricsRequest& WithMetricQueries(const Aws::Vector& value) { SetMetricQueries(value); return *this;}
+ inline BatchGetMetricsRequest& WithMetricQueries(Aws::Vector&& value) { SetMetricQueries(std::move(value)); return *this;}
+ inline BatchGetMetricsRequest& AddMetricQueries(const MetricQuery& value) { m_metricQueriesHasBeenSet = true; m_metricQueries.push_back(value); return *this; }
+ inline BatchGetMetricsRequest& AddMetricQueries(MetricQuery&& value) { m_metricQueriesHasBeenSet = true; m_metricQueries.push_back(std::move(value)); return *this; }
+ ///@}
+ private:
+
+ Aws::Vector m_metricQueries;
+ bool m_metricQueriesHasBeenSet = false;
+ };
+
+} // namespace Model
+} // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/BatchGetMetricsResult.h b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/BatchGetMetricsResult.h
new file mode 100644
index 00000000000..c321c3a1039
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/BatchGetMetricsResult.h
@@ -0,0 +1,69 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include
+#include
+#include
+#include
+#include
+
+namespace Aws
+{
+template
+class AmazonWebServiceResult;
+
+namespace Utils
+{
+namespace Json
+{
+ class JsonValue;
+} // namespace Json
+} // namespace Utils
+namespace SageMakerMetrics
+{
+namespace Model
+{
+ class BatchGetMetricsResult
+ {
+ public:
+ AWS_SAGEMAKERMETRICS_API BatchGetMetricsResult();
+ AWS_SAGEMAKERMETRICS_API BatchGetMetricsResult(const Aws::AmazonWebServiceResult& result);
+ AWS_SAGEMAKERMETRICS_API BatchGetMetricsResult& operator=(const Aws::AmazonWebServiceResult& result);
+
+
+ ///@{
+ /**
+ * The results of a query to retrieve training metrics from SageMaker.
+ */
+ inline const Aws::Vector& GetMetricQueryResults() const{ return m_metricQueryResults; }
+ inline void SetMetricQueryResults(const Aws::Vector& value) { m_metricQueryResults = value; }
+ inline void SetMetricQueryResults(Aws::Vector&& value) { m_metricQueryResults = std::move(value); }
+ inline BatchGetMetricsResult& WithMetricQueryResults(const Aws::Vector& value) { SetMetricQueryResults(value); return *this;}
+ inline BatchGetMetricsResult& WithMetricQueryResults(Aws::Vector&& value) { SetMetricQueryResults(std::move(value)); return *this;}
+ inline BatchGetMetricsResult& AddMetricQueryResults(const MetricQueryResult& value) { m_metricQueryResults.push_back(value); return *this; }
+ inline BatchGetMetricsResult& AddMetricQueryResults(MetricQueryResult&& value) { m_metricQueryResults.push_back(std::move(value)); return *this; }
+ ///@}
+
+ ///@{
+
+ inline const Aws::String& GetRequestId() const{ return m_requestId; }
+ inline void SetRequestId(const Aws::String& value) { m_requestId = value; }
+ inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); }
+ inline void SetRequestId(const char* value) { m_requestId.assign(value); }
+ inline BatchGetMetricsResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;}
+ inline BatchGetMetricsResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;}
+ inline BatchGetMetricsResult& WithRequestId(const char* value) { SetRequestId(value); return *this;}
+ ///@}
+ private:
+
+ Aws::Vector m_metricQueryResults;
+
+ Aws::String m_requestId;
+ };
+
+} // namespace Model
+} // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/BatchPutMetricsRequest.h b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/BatchPutMetricsRequest.h
index 04e267213f3..74f8b67fd11 100644
--- a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/BatchPutMetricsRequest.h
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/BatchPutMetricsRequest.h
@@ -36,7 +36,8 @@ namespace Model
///@{
/**
- * The name of the Trial Component to associate with the metrics.
+ * The name of the Trial Component to associate with the metrics. The Trial
+ * Component name must be entirely lowercase.
*/
inline const Aws::String& GetTrialComponentName() const{ return m_trialComponentName; }
inline bool TrialComponentNameHasBeenSet() const { return m_trialComponentNameHasBeenSet; }
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricQuery.h b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricQuery.h
new file mode 100644
index 00000000000..5754f8c00d6
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricQuery.h
@@ -0,0 +1,153 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include
+#include
+#include
+#include
+#include
+#include
+
+namespace Aws
+{
+namespace Utils
+{
+namespace Json
+{
+ class JsonValue;
+ class JsonView;
+} // namespace Json
+} // namespace Utils
+namespace SageMakerMetrics
+{
+namespace Model
+{
+
+ /**
+ * Specifies a query to retrieve training metrics from SageMaker.
See
+ * Also:
AWS
+ * API Reference
+ */
+ class MetricQuery
+ {
+ public:
+ AWS_SAGEMAKERMETRICS_API MetricQuery();
+ AWS_SAGEMAKERMETRICS_API MetricQuery(Aws::Utils::Json::JsonView jsonValue);
+ AWS_SAGEMAKERMETRICS_API MetricQuery& operator=(Aws::Utils::Json::JsonView jsonValue);
+ AWS_SAGEMAKERMETRICS_API Aws::Utils::Json::JsonValue Jsonize() const;
+
+
+ ///@{
+ /**
+ * The name of the metric to retrieve.
+ */
+ inline const Aws::String& GetMetricName() const{ return m_metricName; }
+ inline bool MetricNameHasBeenSet() const { return m_metricNameHasBeenSet; }
+ inline void SetMetricName(const Aws::String& value) { m_metricNameHasBeenSet = true; m_metricName = value; }
+ inline void SetMetricName(Aws::String&& value) { m_metricNameHasBeenSet = true; m_metricName = std::move(value); }
+ inline void SetMetricName(const char* value) { m_metricNameHasBeenSet = true; m_metricName.assign(value); }
+ inline MetricQuery& WithMetricName(const Aws::String& value) { SetMetricName(value); return *this;}
+ inline MetricQuery& WithMetricName(Aws::String&& value) { SetMetricName(std::move(value)); return *this;}
+ inline MetricQuery& WithMetricName(const char* value) { SetMetricName(value); return *this;}
+ ///@}
+
+ ///@{
+ /**
+ * The ARN of the SageMaker resource to retrieve metrics for.
+ */
+ inline const Aws::String& GetResourceArn() const{ return m_resourceArn; }
+ inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; }
+ inline void SetResourceArn(const Aws::String& value) { m_resourceArnHasBeenSet = true; m_resourceArn = value; }
+ inline void SetResourceArn(Aws::String&& value) { m_resourceArnHasBeenSet = true; m_resourceArn = std::move(value); }
+ inline void SetResourceArn(const char* value) { m_resourceArnHasBeenSet = true; m_resourceArn.assign(value); }
+ inline MetricQuery& WithResourceArn(const Aws::String& value) { SetResourceArn(value); return *this;}
+ inline MetricQuery& WithResourceArn(Aws::String&& value) { SetResourceArn(std::move(value)); return *this;}
+ inline MetricQuery& WithResourceArn(const char* value) { SetResourceArn(value); return *this;}
+ ///@}
+
+ ///@{
+ /**
+ * The metrics stat type of metrics to retrieve.
+ */
+ inline const MetricStatistic& GetMetricStat() const{ return m_metricStat; }
+ inline bool MetricStatHasBeenSet() const { return m_metricStatHasBeenSet; }
+ inline void SetMetricStat(const MetricStatistic& value) { m_metricStatHasBeenSet = true; m_metricStat = value; }
+ inline void SetMetricStat(MetricStatistic&& value) { m_metricStatHasBeenSet = true; m_metricStat = std::move(value); }
+ inline MetricQuery& WithMetricStat(const MetricStatistic& value) { SetMetricStat(value); return *this;}
+ inline MetricQuery& WithMetricStat(MetricStatistic&& value) { SetMetricStat(std::move(value)); return *this;}
+ ///@}
+
+ ///@{
+ /**
+ * The time period of metrics to retrieve.
+ */
+ inline const Period& GetPeriod() const{ return m_period; }
+ inline bool PeriodHasBeenSet() const { return m_periodHasBeenSet; }
+ inline void SetPeriod(const Period& value) { m_periodHasBeenSet = true; m_period = value; }
+ inline void SetPeriod(Period&& value) { m_periodHasBeenSet = true; m_period = std::move(value); }
+ inline MetricQuery& WithPeriod(const Period& value) { SetPeriod(value); return *this;}
+ inline MetricQuery& WithPeriod(Period&& value) { SetPeriod(std::move(value)); return *this;}
+ ///@}
+
+ ///@{
+ /**
+ * The x-axis type of metrics to retrieve.
+ */
+ inline const XAxisType& GetXAxisType() const{ return m_xAxisType; }
+ inline bool XAxisTypeHasBeenSet() const { return m_xAxisTypeHasBeenSet; }
+ inline void SetXAxisType(const XAxisType& value) { m_xAxisTypeHasBeenSet = true; m_xAxisType = value; }
+ inline void SetXAxisType(XAxisType&& value) { m_xAxisTypeHasBeenSet = true; m_xAxisType = std::move(value); }
+ inline MetricQuery& WithXAxisType(const XAxisType& value) { SetXAxisType(value); return *this;}
+ inline MetricQuery& WithXAxisType(XAxisType&& value) { SetXAxisType(std::move(value)); return *this;}
+ ///@}
+
+ ///@{
+ /**
+ * The start time of metrics to retrieve.
+ */
+ inline long long GetStart() const{ return m_start; }
+ inline bool StartHasBeenSet() const { return m_startHasBeenSet; }
+ inline void SetStart(long long value) { m_startHasBeenSet = true; m_start = value; }
+ inline MetricQuery& WithStart(long long value) { SetStart(value); return *this;}
+ ///@}
+
+ ///@{
+ /**
+ * The end time of metrics to retrieve.
+ */
+ inline long long GetEnd() const{ return m_end; }
+ inline bool EndHasBeenSet() const { return m_endHasBeenSet; }
+ inline void SetEnd(long long value) { m_endHasBeenSet = true; m_end = value; }
+ inline MetricQuery& WithEnd(long long value) { SetEnd(value); return *this;}
+ ///@}
+ private:
+
+ Aws::String m_metricName;
+ bool m_metricNameHasBeenSet = false;
+
+ Aws::String m_resourceArn;
+ bool m_resourceArnHasBeenSet = false;
+
+ MetricStatistic m_metricStat;
+ bool m_metricStatHasBeenSet = false;
+
+ Period m_period;
+ bool m_periodHasBeenSet = false;
+
+ XAxisType m_xAxisType;
+ bool m_xAxisTypeHasBeenSet = false;
+
+ long long m_start;
+ bool m_startHasBeenSet = false;
+
+ long long m_end;
+ bool m_endHasBeenSet = false;
+ };
+
+} // namespace Model
+} // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricQueryResult.h b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricQueryResult.h
new file mode 100644
index 00000000000..e70a83edf79
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricQueryResult.h
@@ -0,0 +1,111 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include
+#include
+#include
+#include
+#include
+
+namespace Aws
+{
+namespace Utils
+{
+namespace Json
+{
+ class JsonValue;
+ class JsonView;
+} // namespace Json
+} // namespace Utils
+namespace SageMakerMetrics
+{
+namespace Model
+{
+
+ /**
+ * The result of a query to retrieve training metrics from
+ * SageMaker.
See Also:
AWS
+ * API Reference
+ */
+ class MetricQueryResult
+ {
+ public:
+ AWS_SAGEMAKERMETRICS_API MetricQueryResult();
+ AWS_SAGEMAKERMETRICS_API MetricQueryResult(Aws::Utils::Json::JsonView jsonValue);
+ AWS_SAGEMAKERMETRICS_API MetricQueryResult& operator=(Aws::Utils::Json::JsonView jsonValue);
+ AWS_SAGEMAKERMETRICS_API Aws::Utils::Json::JsonValue Jsonize() const;
+
+
+ ///@{
+ /**
+ * The status of the metric query.
+ */
+ inline const MetricQueryResultStatus& GetStatus() const{ return m_status; }
+ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
+ inline void SetStatus(const MetricQueryResultStatus& value) { m_statusHasBeenSet = true; m_status = value; }
+ inline void SetStatus(MetricQueryResultStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
+ inline MetricQueryResult& WithStatus(const MetricQueryResultStatus& value) { SetStatus(value); return *this;}
+ inline MetricQueryResult& WithStatus(MetricQueryResultStatus&& value) { SetStatus(std::move(value)); return *this;}
+ ///@}
+
+ ///@{
+ /**
+ * A message describing the status of the metric query.
+ */
+ inline const Aws::String& GetMessage() const{ return m_message; }
+ inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
+ inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
+ inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
+ inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
+ inline MetricQueryResult& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
+ inline MetricQueryResult& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
+ inline MetricQueryResult& WithMessage(const char* value) { SetMessage(value); return *this;}
+ ///@}
+
+ ///@{
+ /**
+ * The values for the x-axis of the metrics.
+ */
+ inline const Aws::Vector& GetXAxisValues() const{ return m_xAxisValues; }
+ inline bool XAxisValuesHasBeenSet() const { return m_xAxisValuesHasBeenSet; }
+ inline void SetXAxisValues(const Aws::Vector& value) { m_xAxisValuesHasBeenSet = true; m_xAxisValues = value; }
+ inline void SetXAxisValues(Aws::Vector&& value) { m_xAxisValuesHasBeenSet = true; m_xAxisValues = std::move(value); }
+ inline MetricQueryResult& WithXAxisValues(const Aws::Vector& value) { SetXAxisValues(value); return *this;}
+ inline MetricQueryResult& WithXAxisValues(Aws::Vector&& value) { SetXAxisValues(std::move(value)); return *this;}
+ inline MetricQueryResult& AddXAxisValues(long long value) { m_xAxisValuesHasBeenSet = true; m_xAxisValues.push_back(value); return *this; }
+ ///@}
+
+ ///@{
+ /**
+ * The metric values retrieved by the query.
+ */
+ inline const Aws::Vector& GetMetricValues() const{ return m_metricValues; }
+ inline bool MetricValuesHasBeenSet() const { return m_metricValuesHasBeenSet; }
+ inline void SetMetricValues(const Aws::Vector& value) { m_metricValuesHasBeenSet = true; m_metricValues = value; }
+ inline void SetMetricValues(Aws::Vector&& value) { m_metricValuesHasBeenSet = true; m_metricValues = std::move(value); }
+ inline MetricQueryResult& WithMetricValues(const Aws::Vector& value) { SetMetricValues(value); return *this;}
+ inline MetricQueryResult& WithMetricValues(Aws::Vector&& value) { SetMetricValues(std::move(value)); return *this;}
+ inline MetricQueryResult& AddMetricValues(double value) { m_metricValuesHasBeenSet = true; m_metricValues.push_back(value); return *this; }
+ ///@}
+ private:
+
+ MetricQueryResultStatus m_status;
+ bool m_statusHasBeenSet = false;
+
+ Aws::String m_message;
+ bool m_messageHasBeenSet = false;
+
+ Aws::Vector m_xAxisValues;
+ bool m_xAxisValuesHasBeenSet = false;
+
+ Aws::Vector m_metricValues;
+ bool m_metricValuesHasBeenSet = false;
+ };
+
+} // namespace Model
+} // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricQueryResultStatus.h b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricQueryResultStatus.h
new file mode 100644
index 00000000000..274891125c3
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricQueryResultStatus.h
@@ -0,0 +1,33 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include
+#include
+
+namespace Aws
+{
+namespace SageMakerMetrics
+{
+namespace Model
+{
+ enum class MetricQueryResultStatus
+ {
+ NOT_SET,
+ Complete,
+ Truncated,
+ InternalError,
+ ValidationError
+ };
+
+namespace MetricQueryResultStatusMapper
+{
+AWS_SAGEMAKERMETRICS_API MetricQueryResultStatus GetMetricQueryResultStatusForName(const Aws::String& name);
+
+AWS_SAGEMAKERMETRICS_API Aws::String GetNameForMetricQueryResultStatus(MetricQueryResultStatus value);
+} // namespace MetricQueryResultStatusMapper
+} // namespace Model
+} // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricStatistic.h b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricStatistic.h
new file mode 100644
index 00000000000..a84a5df7935
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/MetricStatistic.h
@@ -0,0 +1,35 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include
+#include
+
+namespace Aws
+{
+namespace SageMakerMetrics
+{
+namespace Model
+{
+ enum class MetricStatistic
+ {
+ NOT_SET,
+ Min,
+ Max,
+ Avg,
+ Count,
+ StdDev,
+ Last
+ };
+
+namespace MetricStatisticMapper
+{
+AWS_SAGEMAKERMETRICS_API MetricStatistic GetMetricStatisticForName(const Aws::String& name);
+
+AWS_SAGEMAKERMETRICS_API Aws::String GetNameForMetricStatistic(MetricStatistic value);
+} // namespace MetricStatisticMapper
+} // namespace Model
+} // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/Period.h b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/Period.h
new file mode 100644
index 00000000000..b8cae3a392f
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/Period.h
@@ -0,0 +1,33 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include
+#include
+
+namespace Aws
+{
+namespace SageMakerMetrics
+{
+namespace Model
+{
+ enum class Period
+ {
+ NOT_SET,
+ OneMinute,
+ FiveMinute,
+ OneHour,
+ IterationNumber
+ };
+
+namespace PeriodMapper
+{
+AWS_SAGEMAKERMETRICS_API Period GetPeriodForName(const Aws::String& name);
+
+AWS_SAGEMAKERMETRICS_API Aws::String GetNameForPeriod(Period value);
+} // namespace PeriodMapper
+} // namespace Model
+} // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/XAxisType.h b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/XAxisType.h
new file mode 100644
index 00000000000..cb6f44c01df
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/include/aws/sagemaker-metrics/model/XAxisType.h
@@ -0,0 +1,31 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#pragma once
+#include
+#include
+
+namespace Aws
+{
+namespace SageMakerMetrics
+{
+namespace Model
+{
+ enum class XAxisType
+ {
+ NOT_SET,
+ IterationNumber,
+ Timestamp
+ };
+
+namespace XAxisTypeMapper
+{
+AWS_SAGEMAKERMETRICS_API XAxisType GetXAxisTypeForName(const Aws::String& name);
+
+AWS_SAGEMAKERMETRICS_API Aws::String GetNameForXAxisType(XAxisType value);
+} // namespace XAxisTypeMapper
+} // namespace Model
+} // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/SageMakerMetricsClient.cpp b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/SageMakerMetricsClient.cpp
index 878b1bc5a58..ffcf22e6e35 100644
--- a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/SageMakerMetricsClient.cpp
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/SageMakerMetricsClient.cpp
@@ -21,6 +21,7 @@
#include
#include
#include
+#include
#include
#include
@@ -165,6 +166,33 @@ void SageMakerMetricsClient::OverrideEndpoint(const Aws::String& endpoint)
m_endpointProvider->OverrideEndpoint(endpoint);
}
+BatchGetMetricsOutcome SageMakerMetricsClient::BatchGetMetrics(const BatchGetMetricsRequest& request) const
+{
+ AWS_OPERATION_GUARD(BatchGetMetrics);
+ AWS_OPERATION_CHECK_PTR(m_endpointProvider, BatchGetMetrics, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE);
+ AWS_OPERATION_CHECK_PTR(m_telemetryProvider, BatchGetMetrics, CoreErrors, CoreErrors::NOT_INITIALIZED);
+ auto tracer = m_telemetryProvider->getTracer(this->GetServiceClientName(), {});
+ auto meter = m_telemetryProvider->getMeter(this->GetServiceClientName(), {});
+ AWS_OPERATION_CHECK_PTR(meter, BatchGetMetrics, CoreErrors, CoreErrors::NOT_INITIALIZED);
+ auto span = tracer->CreateSpan(Aws::String(this->GetServiceClientName()) + ".BatchGetMetrics",
+ {{ TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName() }, { TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName() }, { TracingUtils::SMITHY_SYSTEM_DIMENSION, TracingUtils::SMITHY_METHOD_AWS_VALUE }},
+ smithy::components::tracing::SpanKind::CLIENT);
+ return TracingUtils::MakeCallWithTiming(
+ [&]()-> BatchGetMetricsOutcome {
+ auto endpointResolutionOutcome = TracingUtils::MakeCallWithTiming(
+ [&]() -> ResolveEndpointOutcome { return m_endpointProvider->ResolveEndpoint(request.GetEndpointContextParams()); },
+ TracingUtils::SMITHY_CLIENT_ENDPOINT_RESOLUTION_METRIC,
+ *meter,
+ {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}});
+ AWS_OPERATION_CHECK_SUCCESS(endpointResolutionOutcome, BatchGetMetrics, CoreErrors, CoreErrors::ENDPOINT_RESOLUTION_FAILURE, endpointResolutionOutcome.GetError().GetMessage());
+ endpointResolutionOutcome.GetResult().AddPathSegments("/BatchGetMetrics");
+ return BatchGetMetricsOutcome(MakeRequest(request, endpointResolutionOutcome.GetResult(), Aws::Http::HttpMethod::HTTP_POST, Aws::Auth::SIGV4_SIGNER));
+ },
+ TracingUtils::SMITHY_CLIENT_DURATION_METRIC,
+ *meter,
+ {{TracingUtils::SMITHY_METHOD_DIMENSION, request.GetServiceRequestName()}, {TracingUtils::SMITHY_SERVICE_DIMENSION, this->GetServiceClientName()}});
+}
+
BatchPutMetricsOutcome SageMakerMetricsClient::BatchPutMetrics(const BatchPutMetricsRequest& request) const
{
AWS_OPERATION_GUARD(BatchPutMetrics);
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/SageMakerMetricsEndpointRules.cpp b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/SageMakerMetricsEndpointRules.cpp
index cee07082d8d..da632412479 100644
--- a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/SageMakerMetricsEndpointRules.cpp
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/SageMakerMetricsEndpointRules.cpp
@@ -51,121 +51,121 @@ static constexpr RulesBlobT RulesBlob = {{
',','"','t','y','p','e','"',':','"','S','t','r','i','n','g','"','}','}',',','"','r','u','l','e','s',
'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
'i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','E','n',
-'d','p','o','i','n','t','"','}',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',
+'d','p','o','i','n','t','"','}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U',
+'s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':',
+'"','I','n','v','a','l','i','d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','F',
+'I','P','S',' ','a','n','d',' ','c','u','s','t','o','m',' ','e','n','d','p','o','i','n','t',' ','a',
+'r','e',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','"',',','"','t','y','p','e','"',':',
+'"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
-'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r',
-'u','e',']','}',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','C','o',
-'n','f','i','g','u','r','a','t','i','o','n',':',' ','F','I','P','S',' ','a','n','d',' ','c','u','s',
-'t','o','m',' ','e','n','d','p','o','i','n','t',' ','a','r','e',' ','n','o','t',' ','s','u','p','p',
-'o','r','t','e','d','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',',','{','"',
-'c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r',
-'e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s',
-'"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',',
-'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t',
-'a','c','k','"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':','"','I','n',
-'v','a','l','i','d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','D','u','a','l',
-'s','t','a','c','k',' ','a','n','d',' ','c','u','s','t','o','m',' ','e','n','d','p','o','i','n','t',
-' ','a','r','e',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','"',',','"','t','y','p','e',
-'"',':','"','e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
-'[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','{','"','r','e',
-'f','"',':','"','E','n','d','p','o','i','n','t','"','}',',','"','p','r','o','p','e','r','t','i','e',
-'s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e',
-'"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','c','o','n','d','i',
-'t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"',
-'r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"',
-'f','n','"',':','"','i','s','S','e','t','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
-'"',':','"','R','e','g','i','o','n','"','}',']','}',']',',','"','t','y','p','e','"',':','"','t','r',
-'e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s',
-'"',':','[','{','"','f','n','"',':','"','a','w','s','.','p','a','r','t','i','t','i','o','n','"',',',
-'"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',']',
-',','"','a','s','s','i','g','n','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l',
-'t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s',
-'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
-'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
-'r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',',','{','"',
-'f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v',
-'"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',
-',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r',
-'u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f',
-'n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',
-':','[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a',
-'r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e',
-'s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','F','I','P','S','"',']','}',']','}',
-',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
-'r','g','v','"',':','[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r',
-'"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i',
-'o','n','R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a','l','S',
-'t','a','c','k','"',']','}',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',',
-'"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
-',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{',
-'"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t',
-'"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','m','e','t','r','i','c','s',
-'.','s','a','g','e','m','a','k','e','r','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.',
-'{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','u','a','l','S','t','a','c',
-'k','D','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',
-':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':',
-'"','e','n','d','p','o','i','n','t','"','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i',
-'o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','F','I','P','S',' ','a','n','d',
-' ','D','u','a','l','S','t','a','c','k',' ','a','r','e',' ','e','n','a','b','l','e','d',',',' ','b',
-'u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o',
-'t',' ','s','u','p','p','o','r','t',' ','o','n','e',' ','o','r',' ','b','o','t','h','"',',','"','t',
-'y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',',','{','"','c','o','n','d','i','t','i',
-'o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
-'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P',
-'S','"','}',',','t','r','u','e',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k',
+'"','}',',','t','r','u','e',']','}',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a','l',
+'i','d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','D','u','a','l','s','t','a',
+'c','k',' ','a','n','d',' ','c','u','s','t','o','m',' ','e','n','d','p','o','i','n','t',' ','a','r',
+'e',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','"',',','"','t','y','p','e','"',':','"',
+'e','r','r','o','r','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',',
+'"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','{','"','r','e','f','"',':',
+'"','E','n','d','p','o','i','n','t','"','}',',','"','p','r','o','p','e','r','t','i','e','s','"',':',
+'{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"',
+'e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',
+'}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i',
+'t','i','o','n','s','"',':','[',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d',
+'i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','i','s','S','e','t','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',']','}',']',
',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
-'{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r',
-'g','v','"',':','[','t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',
-',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o',
-'n','R','e','s','u','l','t','"','}',',','"','s','u','p','p','o','r','t','s','F','I','P','S','"',']',
-'}',']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s',
-'"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e',
-'"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i',
-'t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r',
-'l','"',':','"','h','t','t','p','s',':','/','/','m','e','t','r','i','c','s','.','s','a','g','e','m',
-'a','k','e','r','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i',
-'t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p',
-'r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{',
-'}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',']','}',
-',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',
-':','"','F','I','P','S',' ','i','s',' ','e','n','a','b','l','e','d',' ','b','u','t',' ','t','h','i',
-'s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p',
-'o','r','t',' ','F','I','P','S','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',
-']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"',
-'b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"',
-'r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c','k','"','}',',','t','r','u','e',
-']','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',
-':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b',
-'o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','t','r','u',
-'e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':',
-'[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"',
-'}',',','"','s','u','p','p','o','r','t','s','D','u','a','l','S','t','a','c','k','"',']','}',']','}',
-']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e','s','"',':','[',
-'{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','t','y','p','e','"',':','"',
-'t','r','e','e','"',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o',
+'{','"','f','n','"',':','"','a','w','s','.','p','a','r','t','i','t','i','o','n','"',',','"','a','r',
+'g','v','"',':','[','{','"','r','e','f','"',':','"','R','e','g','i','o','n','"','}',']',',','"','a',
+'s','s','i','g','n','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',
+']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','F','I','P','S','"','}',',','t',
+'r','u','e',']','}',',','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l',
+'s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a',
+'l','S','t','a','c','k','"','}',',','t','r','u','e',']','}',']',',','"','r','u','l','e','s','"',':',
+'[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o',
+'o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','t','r','u','e',
+',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[',
+'{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',
+',','"','s','u','p','p','o','r','t','s','F','I','P','S','"',']','}',']','}',',','{','"','f','n','"',
+':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[',
+'t','r','u','e',',','{','"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g',
+'v','"',':','[','{','"','r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u',
+'l','t','"','}',',','"','s','u','p','p','o','r','t','s','D','u','a','l','S','t','a','c','k','"',']',
+'}',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n',
+'s','"',':','[',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o',
'n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':',
'"','h','t','t','p','s',':','/','/','m','e','t','r','i','c','s','.','s','a','g','e','m','a','k','e',
-'r','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u',
-'l','t','#','d','u','a','l','S','t','a','c','k','D','n','s','S','u','f','f','i','x','}','"',',','"',
-'p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':',
-'{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']','}',']',
-'}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r',
-'"',':','"','D','u','a','l','S','t','a','c','k',' ','i','s',' ','e','n','a','b','l','e','d',' ','b',
-'u','t',' ','t','h','i','s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o',
-'t',' ','s','u','p','p','o','r','t',' ','D','u','a','l','S','t','a','c','k','"',',','"','t','y','p',
-'e','"',':','"','e','r','r','o','r','"','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n',
-'s','"',':','[',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"',',','"','r','u','l','e',
-'s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d',
-'p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','m','e',
-'t','r','i','c','s','.','s','a','g','e','m','a','k','e','r','.','{','R','e','g','i','o','n','}','.',
-'{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i',
+'r','-','f','i','p','s','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o',
+'n','R','e','s','u','l','t','#','d','u','a','l','S','t','a','c','k','D','n','s','S','u','f','f','i',
'x','}','"',',','"','p','r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d',
'e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t',
-'"','}',']','}',']','}',']','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
-',','"','e','r','r','o','r','"',':','"','I','n','v','a','l','i','d',' ','C','o','n','f','i','g','u',
-'r','a','t','i','o','n',':',' ','M','i','s','s','i','n','g',' ','R','e','g','i','o','n','"',',','"',
-'t','y','p','e','"',':','"','e','r','r','o','r','"','}',']','}',']','}','\0'
+'"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',']',',','"','t','y','p','e',
+'"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',
+']',',','"','e','r','r','o','r','"',':','"','F','I','P','S',' ','a','n','d',' ','D','u','a','l','S',
+'t','a','c','k',' ','a','r','e',' ','e','n','a','b','l','e','d',',',' ','b','u','t',' ','t','h','i',
+'s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p',
+'o','r','t',' ','o','n','e',' ','o','r',' ','b','o','t','h','"',',','"','t','y','p','e','"',':','"',
+'e','r','r','o','r','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{',
+'"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l',
+'e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f','"',
+':','"','U','s','e','F','I','P','S','"','}',',','t','r','u','e',']','}',']',',','"','r','u','l','e',
+'s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':',
+'"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','{',
+'"','f','n','"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"',
+'r','e','f','"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',',','"',
+'s','u','p','p','o','r','t','s','F','I','P','S','"',']','}',',','t','r','u','e',']','}',']',',','"',
+'r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',',
+'"','r','u','l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',
+',','"','e','n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',
+':','/','/','m','e','t','r','i','c','s','.','s','a','g','e','m','a','k','e','r','-','f','i','p','s',
+'.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l',
+'t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e','s',
+'"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e','"',
+':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e',
+'e','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','F','I','P','S',
+' ','i','s',' ','e','n','a','b','l','e','d',' ','b','u','t',' ','t','h','i','s',' ','p','a','r','t',
+'i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p','o','r','t',' ','F','I',
+'P','S','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',']',',','"','t','y','p',
+'e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n','d','i','t','i','o','n','s','"',':',
+'[','{','"','f','n','"',':','"','b','o','o','l','e','a','n','E','q','u','a','l','s','"',',','"','a',
+'r','g','v','"',':','[','{','"','r','e','f','"',':','"','U','s','e','D','u','a','l','S','t','a','c',
+'k','"','}',',','t','r','u','e',']','}',']',',','"','r','u','l','e','s','"',':','[','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[','{','"','f','n','"',':','"','b','o','o','l','e','a','n',
+'E','q','u','a','l','s','"',',','"','a','r','g','v','"',':','[','t','r','u','e',',','{','"','f','n',
+'"',':','"','g','e','t','A','t','t','r','"',',','"','a','r','g','v','"',':','[','{','"','r','e','f',
+'"',':','"','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','"','}',',','"','s','u','p',
+'p','o','r','t','s','D','u','a','l','S','t','a','c','k','"',']','}',']','}',']',',','"','r','u','l',
+'e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','r','u',
+'l','e','s','"',':','[','{','"','c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e',
+'n','d','p','o','i','n','t','"',':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/',
+'m','e','t','r','i','c','s','.','s','a','g','e','m','a','k','e','r','.','{','R','e','g','i','o','n',
+'}','.','{','P','a','r','t','i','t','i','o','n','R','e','s','u','l','t','#','d','u','a','l','S','t',
+'a','c','k','D','n','s','S','u','f','f','i','x','}','"',',','"','p','r','o','p','e','r','t','i','e',
+'s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{','}','}',',','"','t','y','p','e',
+'"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t','y','p','e','"',':','"','t','r',
+'e','e','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o',
+'n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','D','u','a',
+'l','S','t','a','c','k',' ','i','s',' ','e','n','a','b','l','e','d',' ','b','u','t',' ','t','h','i',
+'s',' ','p','a','r','t','i','t','i','o','n',' ','d','o','e','s',' ','n','o','t',' ','s','u','p','p',
+'o','r','t',' ','D','u','a','l','S','t','a','c','k','"',',','"','t','y','p','e','"',':','"','e','r',
+'r','o','r','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c',
+'o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','r','u','l','e','s','"',':','[','{','"',
+'c','o','n','d','i','t','i','o','n','s','"',':','[',']',',','"','e','n','d','p','o','i','n','t','"',
+':','{','"','u','r','l','"',':','"','h','t','t','p','s',':','/','/','m','e','t','r','i','c','s','.',
+'s','a','g','e','m','a','k','e','r','.','{','R','e','g','i','o','n','}','.','{','P','a','r','t','i',
+'t','i','o','n','R','e','s','u','l','t','#','d','n','s','S','u','f','f','i','x','}','"',',','"','p',
+'r','o','p','e','r','t','i','e','s','"',':','{','}',',','"','h','e','a','d','e','r','s','"',':','{',
+'}','}',',','"','t','y','p','e','"',':','"','e','n','d','p','o','i','n','t','"','}',']',',','"','t',
+'y','p','e','"',':','"','t','r','e','e','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e',
+'e','"','}',']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',',','{','"','c','o','n',
+'d','i','t','i','o','n','s','"',':','[',']',',','"','e','r','r','o','r','"',':','"','I','n','v','a',
+'l','i','d',' ','C','o','n','f','i','g','u','r','a','t','i','o','n',':',' ','M','i','s','s','i','n',
+'g',' ','R','e','g','i','o','n','"',',','"','t','y','p','e','"',':','"','e','r','r','o','r','"','}',
+']',',','"','t','y','p','e','"',':','"','t','r','e','e','"','}',']','}','\0'
}};
const char* SageMakerMetricsEndpointRules::GetRulesBlob()
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/BatchGetMetricsRequest.cpp b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/BatchGetMetricsRequest.cpp
new file mode 100644
index 00000000000..8385ea3cbc3
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/BatchGetMetricsRequest.cpp
@@ -0,0 +1,40 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include
+#include
+
+#include
+
+using namespace Aws::SageMakerMetrics::Model;
+using namespace Aws::Utils::Json;
+using namespace Aws::Utils;
+
+BatchGetMetricsRequest::BatchGetMetricsRequest() :
+ m_metricQueriesHasBeenSet(false)
+{
+}
+
+Aws::String BatchGetMetricsRequest::SerializePayload() const
+{
+ JsonValue payload;
+
+ if(m_metricQueriesHasBeenSet)
+ {
+ Aws::Utils::Array metricQueriesJsonList(m_metricQueries.size());
+ for(unsigned metricQueriesIndex = 0; metricQueriesIndex < metricQueriesJsonList.GetLength(); ++metricQueriesIndex)
+ {
+ metricQueriesJsonList[metricQueriesIndex].AsObject(m_metricQueries[metricQueriesIndex].Jsonize());
+ }
+ payload.WithArray("MetricQueries", std::move(metricQueriesJsonList));
+
+ }
+
+ return payload.View().WriteReadable();
+}
+
+
+
+
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/BatchGetMetricsResult.cpp b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/BatchGetMetricsResult.cpp
new file mode 100644
index 00000000000..6aa24f1a5d6
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/BatchGetMetricsResult.cpp
@@ -0,0 +1,51 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include
+#include
+#include
+#include
+#include
+#include
+
+#include
+
+using namespace Aws::SageMakerMetrics::Model;
+using namespace Aws::Utils::Json;
+using namespace Aws::Utils;
+using namespace Aws;
+
+BatchGetMetricsResult::BatchGetMetricsResult()
+{
+}
+
+BatchGetMetricsResult::BatchGetMetricsResult(const Aws::AmazonWebServiceResult& result)
+{
+ *this = result;
+}
+
+BatchGetMetricsResult& BatchGetMetricsResult::operator =(const Aws::AmazonWebServiceResult& result)
+{
+ JsonView jsonValue = result.GetPayload().View();
+ if(jsonValue.ValueExists("MetricQueryResults"))
+ {
+ Aws::Utils::Array metricQueryResultsJsonList = jsonValue.GetArray("MetricQueryResults");
+ for(unsigned metricQueryResultsIndex = 0; metricQueryResultsIndex < metricQueryResultsJsonList.GetLength(); ++metricQueryResultsIndex)
+ {
+ m_metricQueryResults.push_back(metricQueryResultsJsonList[metricQueryResultsIndex].AsObject());
+ }
+ }
+
+
+ const auto& headers = result.GetHeaderValueCollection();
+ const auto& requestIdIter = headers.find("x-amzn-requestid");
+ if(requestIdIter != headers.end())
+ {
+ m_requestId = requestIdIter->second;
+ }
+
+
+ return *this;
+}
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricQuery.cpp b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricQuery.cpp
new file mode 100644
index 00000000000..23145ac5384
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricQuery.cpp
@@ -0,0 +1,145 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include
+#include
+
+#include
+
+using namespace Aws::Utils::Json;
+using namespace Aws::Utils;
+
+namespace Aws
+{
+namespace SageMakerMetrics
+{
+namespace Model
+{
+
+MetricQuery::MetricQuery() :
+ m_metricNameHasBeenSet(false),
+ m_resourceArnHasBeenSet(false),
+ m_metricStat(MetricStatistic::NOT_SET),
+ m_metricStatHasBeenSet(false),
+ m_period(Period::NOT_SET),
+ m_periodHasBeenSet(false),
+ m_xAxisType(XAxisType::NOT_SET),
+ m_xAxisTypeHasBeenSet(false),
+ m_start(0),
+ m_startHasBeenSet(false),
+ m_end(0),
+ m_endHasBeenSet(false)
+{
+}
+
+MetricQuery::MetricQuery(JsonView jsonValue)
+ : MetricQuery()
+{
+ *this = jsonValue;
+}
+
+MetricQuery& MetricQuery::operator =(JsonView jsonValue)
+{
+ if(jsonValue.ValueExists("MetricName"))
+ {
+ m_metricName = jsonValue.GetString("MetricName");
+
+ m_metricNameHasBeenSet = true;
+ }
+
+ if(jsonValue.ValueExists("ResourceArn"))
+ {
+ m_resourceArn = jsonValue.GetString("ResourceArn");
+
+ m_resourceArnHasBeenSet = true;
+ }
+
+ if(jsonValue.ValueExists("MetricStat"))
+ {
+ m_metricStat = MetricStatisticMapper::GetMetricStatisticForName(jsonValue.GetString("MetricStat"));
+
+ m_metricStatHasBeenSet = true;
+ }
+
+ if(jsonValue.ValueExists("Period"))
+ {
+ m_period = PeriodMapper::GetPeriodForName(jsonValue.GetString("Period"));
+
+ m_periodHasBeenSet = true;
+ }
+
+ if(jsonValue.ValueExists("XAxisType"))
+ {
+ m_xAxisType = XAxisTypeMapper::GetXAxisTypeForName(jsonValue.GetString("XAxisType"));
+
+ m_xAxisTypeHasBeenSet = true;
+ }
+
+ if(jsonValue.ValueExists("Start"))
+ {
+ m_start = jsonValue.GetInt64("Start");
+
+ m_startHasBeenSet = true;
+ }
+
+ if(jsonValue.ValueExists("End"))
+ {
+ m_end = jsonValue.GetInt64("End");
+
+ m_endHasBeenSet = true;
+ }
+
+ return *this;
+}
+
+JsonValue MetricQuery::Jsonize() const
+{
+ JsonValue payload;
+
+ if(m_metricNameHasBeenSet)
+ {
+ payload.WithString("MetricName", m_metricName);
+
+ }
+
+ if(m_resourceArnHasBeenSet)
+ {
+ payload.WithString("ResourceArn", m_resourceArn);
+
+ }
+
+ if(m_metricStatHasBeenSet)
+ {
+ payload.WithString("MetricStat", MetricStatisticMapper::GetNameForMetricStatistic(m_metricStat));
+ }
+
+ if(m_periodHasBeenSet)
+ {
+ payload.WithString("Period", PeriodMapper::GetNameForPeriod(m_period));
+ }
+
+ if(m_xAxisTypeHasBeenSet)
+ {
+ payload.WithString("XAxisType", XAxisTypeMapper::GetNameForXAxisType(m_xAxisType));
+ }
+
+ if(m_startHasBeenSet)
+ {
+ payload.WithInt64("Start", m_start);
+
+ }
+
+ if(m_endHasBeenSet)
+ {
+ payload.WithInt64("End", m_end);
+
+ }
+
+ return payload;
+}
+
+} // namespace Model
+} // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricQueryResult.cpp b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricQueryResult.cpp
new file mode 100644
index 00000000000..15e4eed7a8a
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricQueryResult.cpp
@@ -0,0 +1,117 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include
+#include
+
+#include
+
+using namespace Aws::Utils::Json;
+using namespace Aws::Utils;
+
+namespace Aws
+{
+namespace SageMakerMetrics
+{
+namespace Model
+{
+
+MetricQueryResult::MetricQueryResult() :
+ m_status(MetricQueryResultStatus::NOT_SET),
+ m_statusHasBeenSet(false),
+ m_messageHasBeenSet(false),
+ m_xAxisValuesHasBeenSet(false),
+ m_metricValuesHasBeenSet(false)
+{
+}
+
+MetricQueryResult::MetricQueryResult(JsonView jsonValue)
+ : MetricQueryResult()
+{
+ *this = jsonValue;
+}
+
+MetricQueryResult& MetricQueryResult::operator =(JsonView jsonValue)
+{
+ if(jsonValue.ValueExists("Status"))
+ {
+ m_status = MetricQueryResultStatusMapper::GetMetricQueryResultStatusForName(jsonValue.GetString("Status"));
+
+ m_statusHasBeenSet = true;
+ }
+
+ if(jsonValue.ValueExists("Message"))
+ {
+ m_message = jsonValue.GetString("Message");
+
+ m_messageHasBeenSet = true;
+ }
+
+ if(jsonValue.ValueExists("XAxisValues"))
+ {
+ Aws::Utils::Array xAxisValuesJsonList = jsonValue.GetArray("XAxisValues");
+ for(unsigned xAxisValuesIndex = 0; xAxisValuesIndex < xAxisValuesJsonList.GetLength(); ++xAxisValuesIndex)
+ {
+ m_xAxisValues.push_back(xAxisValuesJsonList[xAxisValuesIndex].AsInt64());
+ }
+ m_xAxisValuesHasBeenSet = true;
+ }
+
+ if(jsonValue.ValueExists("MetricValues"))
+ {
+ Aws::Utils::Array metricValuesJsonList = jsonValue.GetArray("MetricValues");
+ for(unsigned metricValuesIndex = 0; metricValuesIndex < metricValuesJsonList.GetLength(); ++metricValuesIndex)
+ {
+ m_metricValues.push_back(metricValuesJsonList[metricValuesIndex].AsDouble());
+ }
+ m_metricValuesHasBeenSet = true;
+ }
+
+ return *this;
+}
+
+JsonValue MetricQueryResult::Jsonize() const
+{
+ JsonValue payload;
+
+ if(m_statusHasBeenSet)
+ {
+ payload.WithString("Status", MetricQueryResultStatusMapper::GetNameForMetricQueryResultStatus(m_status));
+ }
+
+ if(m_messageHasBeenSet)
+ {
+ payload.WithString("Message", m_message);
+
+ }
+
+ if(m_xAxisValuesHasBeenSet)
+ {
+ Aws::Utils::Array xAxisValuesJsonList(m_xAxisValues.size());
+ for(unsigned xAxisValuesIndex = 0; xAxisValuesIndex < xAxisValuesJsonList.GetLength(); ++xAxisValuesIndex)
+ {
+ xAxisValuesJsonList[xAxisValuesIndex].AsInt64(m_xAxisValues[xAxisValuesIndex]);
+ }
+ payload.WithArray("XAxisValues", std::move(xAxisValuesJsonList));
+
+ }
+
+ if(m_metricValuesHasBeenSet)
+ {
+ Aws::Utils::Array metricValuesJsonList(m_metricValues.size());
+ for(unsigned metricValuesIndex = 0; metricValuesIndex < metricValuesJsonList.GetLength(); ++metricValuesIndex)
+ {
+ metricValuesJsonList[metricValuesIndex].AsDouble(m_metricValues[metricValuesIndex]);
+ }
+ payload.WithArray("MetricValues", std::move(metricValuesJsonList));
+
+ }
+
+ return payload;
+}
+
+} // namespace Model
+} // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricQueryResultStatus.cpp b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricQueryResultStatus.cpp
new file mode 100644
index 00000000000..60ddfb4d60c
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricQueryResultStatus.cpp
@@ -0,0 +1,86 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include
+#include
+#include
+#include
+
+using namespace Aws::Utils;
+
+
+namespace Aws
+{
+ namespace SageMakerMetrics
+ {
+ namespace Model
+ {
+ namespace MetricQueryResultStatusMapper
+ {
+
+ static const int Complete_HASH = HashingUtils::HashString("Complete");
+ static const int Truncated_HASH = HashingUtils::HashString("Truncated");
+ static const int InternalError_HASH = HashingUtils::HashString("InternalError");
+ static const int ValidationError_HASH = HashingUtils::HashString("ValidationError");
+
+
+ MetricQueryResultStatus GetMetricQueryResultStatusForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Complete_HASH)
+ {
+ return MetricQueryResultStatus::Complete;
+ }
+ else if (hashCode == Truncated_HASH)
+ {
+ return MetricQueryResultStatus::Truncated;
+ }
+ else if (hashCode == InternalError_HASH)
+ {
+ return MetricQueryResultStatus::InternalError;
+ }
+ else if (hashCode == ValidationError_HASH)
+ {
+ return MetricQueryResultStatus::ValidationError;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast(hashCode);
+ }
+
+ return MetricQueryResultStatus::NOT_SET;
+ }
+
+ Aws::String GetNameForMetricQueryResultStatus(MetricQueryResultStatus enumValue)
+ {
+ switch(enumValue)
+ {
+ case MetricQueryResultStatus::NOT_SET:
+ return {};
+ case MetricQueryResultStatus::Complete:
+ return "Complete";
+ case MetricQueryResultStatus::Truncated:
+ return "Truncated";
+ case MetricQueryResultStatus::InternalError:
+ return "InternalError";
+ case MetricQueryResultStatus::ValidationError:
+ return "ValidationError";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace MetricQueryResultStatusMapper
+ } // namespace Model
+ } // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricStatistic.cpp b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricStatistic.cpp
new file mode 100644
index 00000000000..4c1fd4c7b43
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/MetricStatistic.cpp
@@ -0,0 +1,100 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include
+#include
+#include
+#include
+
+using namespace Aws::Utils;
+
+
+namespace Aws
+{
+ namespace SageMakerMetrics
+ {
+ namespace Model
+ {
+ namespace MetricStatisticMapper
+ {
+
+ static const int Min_HASH = HashingUtils::HashString("Min");
+ static const int Max_HASH = HashingUtils::HashString("Max");
+ static const int Avg_HASH = HashingUtils::HashString("Avg");
+ static const int Count_HASH = HashingUtils::HashString("Count");
+ static const int StdDev_HASH = HashingUtils::HashString("StdDev");
+ static const int Last_HASH = HashingUtils::HashString("Last");
+
+
+ MetricStatistic GetMetricStatisticForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == Min_HASH)
+ {
+ return MetricStatistic::Min;
+ }
+ else if (hashCode == Max_HASH)
+ {
+ return MetricStatistic::Max;
+ }
+ else if (hashCode == Avg_HASH)
+ {
+ return MetricStatistic::Avg;
+ }
+ else if (hashCode == Count_HASH)
+ {
+ return MetricStatistic::Count;
+ }
+ else if (hashCode == StdDev_HASH)
+ {
+ return MetricStatistic::StdDev;
+ }
+ else if (hashCode == Last_HASH)
+ {
+ return MetricStatistic::Last;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast(hashCode);
+ }
+
+ return MetricStatistic::NOT_SET;
+ }
+
+ Aws::String GetNameForMetricStatistic(MetricStatistic enumValue)
+ {
+ switch(enumValue)
+ {
+ case MetricStatistic::NOT_SET:
+ return {};
+ case MetricStatistic::Min:
+ return "Min";
+ case MetricStatistic::Max:
+ return "Max";
+ case MetricStatistic::Avg:
+ return "Avg";
+ case MetricStatistic::Count:
+ return "Count";
+ case MetricStatistic::StdDev:
+ return "StdDev";
+ case MetricStatistic::Last:
+ return "Last";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace MetricStatisticMapper
+ } // namespace Model
+ } // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/Period.cpp b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/Period.cpp
new file mode 100644
index 00000000000..5c7a7f75521
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/Period.cpp
@@ -0,0 +1,86 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include
+#include
+#include
+#include
+
+using namespace Aws::Utils;
+
+
+namespace Aws
+{
+ namespace SageMakerMetrics
+ {
+ namespace Model
+ {
+ namespace PeriodMapper
+ {
+
+ static const int OneMinute_HASH = HashingUtils::HashString("OneMinute");
+ static const int FiveMinute_HASH = HashingUtils::HashString("FiveMinute");
+ static const int OneHour_HASH = HashingUtils::HashString("OneHour");
+ static const int IterationNumber_HASH = HashingUtils::HashString("IterationNumber");
+
+
+ Period GetPeriodForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == OneMinute_HASH)
+ {
+ return Period::OneMinute;
+ }
+ else if (hashCode == FiveMinute_HASH)
+ {
+ return Period::FiveMinute;
+ }
+ else if (hashCode == OneHour_HASH)
+ {
+ return Period::OneHour;
+ }
+ else if (hashCode == IterationNumber_HASH)
+ {
+ return Period::IterationNumber;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast(hashCode);
+ }
+
+ return Period::NOT_SET;
+ }
+
+ Aws::String GetNameForPeriod(Period enumValue)
+ {
+ switch(enumValue)
+ {
+ case Period::NOT_SET:
+ return {};
+ case Period::OneMinute:
+ return "OneMinute";
+ case Period::FiveMinute:
+ return "FiveMinute";
+ case Period::OneHour:
+ return "OneHour";
+ case Period::IterationNumber:
+ return "IterationNumber";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace PeriodMapper
+ } // namespace Model
+ } // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/XAxisType.cpp b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/XAxisType.cpp
new file mode 100644
index 00000000000..fdcdf207a97
--- /dev/null
+++ b/generated/src/aws-cpp-sdk-sagemaker-metrics/source/model/XAxisType.cpp
@@ -0,0 +1,72 @@
+/**
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
+ * SPDX-License-Identifier: Apache-2.0.
+ */
+
+#include
+#include
+#include
+#include
+
+using namespace Aws::Utils;
+
+
+namespace Aws
+{
+ namespace SageMakerMetrics
+ {
+ namespace Model
+ {
+ namespace XAxisTypeMapper
+ {
+
+ static const int IterationNumber_HASH = HashingUtils::HashString("IterationNumber");
+ static const int Timestamp_HASH = HashingUtils::HashString("Timestamp");
+
+
+ XAxisType GetXAxisTypeForName(const Aws::String& name)
+ {
+ int hashCode = HashingUtils::HashString(name.c_str());
+ if (hashCode == IterationNumber_HASH)
+ {
+ return XAxisType::IterationNumber;
+ }
+ else if (hashCode == Timestamp_HASH)
+ {
+ return XAxisType::Timestamp;
+ }
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ overflowContainer->StoreOverflow(hashCode, name);
+ return static_cast(hashCode);
+ }
+
+ return XAxisType::NOT_SET;
+ }
+
+ Aws::String GetNameForXAxisType(XAxisType enumValue)
+ {
+ switch(enumValue)
+ {
+ case XAxisType::NOT_SET:
+ return {};
+ case XAxisType::IterationNumber:
+ return "IterationNumber";
+ case XAxisType::Timestamp:
+ return "Timestamp";
+ default:
+ EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
+ if(overflowContainer)
+ {
+ return overflowContainer->RetrieveOverflow(static_cast(enumValue));
+ }
+
+ return {};
+ }
+ }
+
+ } // namespace XAxisTypeMapper
+ } // namespace Model
+ } // namespace SageMakerMetrics
+} // namespace Aws
diff --git a/generated/src/aws-cpp-sdk-sagemaker/include/aws/sagemaker/model/S3ModelDataSource.h b/generated/src/aws-cpp-sdk-sagemaker/include/aws/sagemaker/model/S3ModelDataSource.h
index 4eeaee36c8e..955d61e8ae9 100644
--- a/generated/src/aws-cpp-sdk-sagemaker/include/aws/sagemaker/model/S3ModelDataSource.h
+++ b/generated/src/aws-cpp-sdk-sagemaker/include/aws/sagemaker/model/S3ModelDataSource.h
@@ -153,6 +153,21 @@ namespace Model
inline S3ModelDataSource& WithHubAccessConfig(const InferenceHubAccessConfig& value) { SetHubAccessConfig(value); return *this;}
inline S3ModelDataSource& WithHubAccessConfig(InferenceHubAccessConfig&& value) { SetHubAccessConfig(std::move(value)); return *this;}
///@}
+
+ ///@{
+ /**
+ * The Amazon S3 URI of the manifest file. The manifest file is a CSV file that
+ * stores the artifact locations.
+ */
+ inline const Aws::String& GetManifestS3Uri() const{ return m_manifestS3Uri; }
+ inline bool ManifestS3UriHasBeenSet() const { return m_manifestS3UriHasBeenSet; }
+ inline void SetManifestS3Uri(const Aws::String& value) { m_manifestS3UriHasBeenSet = true; m_manifestS3Uri = value; }
+ inline void SetManifestS3Uri(Aws::String&& value) { m_manifestS3UriHasBeenSet = true; m_manifestS3Uri = std::move(value); }
+ inline void SetManifestS3Uri(const char* value) { m_manifestS3UriHasBeenSet = true; m_manifestS3Uri.assign(value); }
+ inline S3ModelDataSource& WithManifestS3Uri(const Aws::String& value) { SetManifestS3Uri(value); return *this;}
+ inline S3ModelDataSource& WithManifestS3Uri(Aws::String&& value) { SetManifestS3Uri(std::move(value)); return *this;}
+ inline S3ModelDataSource& WithManifestS3Uri(const char* value) { SetManifestS3Uri(value); return *this;}
+ ///@}
private:
Aws::String m_s3Uri;
@@ -169,6 +184,9 @@ namespace Model
InferenceHubAccessConfig m_hubAccessConfig;
bool m_hubAccessConfigHasBeenSet = false;
+
+ Aws::String m_manifestS3Uri;
+ bool m_manifestS3UriHasBeenSet = false;
};
} // namespace Model
diff --git a/generated/src/aws-cpp-sdk-sagemaker/source/model/S3ModelDataSource.cpp b/generated/src/aws-cpp-sdk-sagemaker/source/model/S3ModelDataSource.cpp
index 9283c3f44ed..85b829a0a86 100644
--- a/generated/src/aws-cpp-sdk-sagemaker/source/model/S3ModelDataSource.cpp
+++ b/generated/src/aws-cpp-sdk-sagemaker/source/model/S3ModelDataSource.cpp
@@ -25,7 +25,8 @@ S3ModelDataSource::S3ModelDataSource() :
m_compressionType(ModelCompressionType::NOT_SET),
m_compressionTypeHasBeenSet(false),
m_modelAccessConfigHasBeenSet(false),
- m_hubAccessConfigHasBeenSet(false)
+ m_hubAccessConfigHasBeenSet(false),
+ m_manifestS3UriHasBeenSet(false)
{
}
@@ -72,6 +73,13 @@ S3ModelDataSource& S3ModelDataSource::operator =(JsonView jsonValue)
m_hubAccessConfigHasBeenSet = true;
}
+ if(jsonValue.ValueExists("ManifestS3Uri"))
+ {
+ m_manifestS3Uri = jsonValue.GetString("ManifestS3Uri");
+
+ m_manifestS3UriHasBeenSet = true;
+ }
+
return *this;
}
@@ -107,6 +115,12 @@ JsonValue S3ModelDataSource::Jsonize() const
}
+ if(m_manifestS3UriHasBeenSet)
+ {
+ payload.WithString("ManifestS3Uri", m_manifestS3Uri);
+
+ }
+
return payload;
}
diff --git a/generated/src/aws-cpp-sdk-workspaces/include/aws/workspaces/model/WorkspaceImageErrorDetailCode.h b/generated/src/aws-cpp-sdk-workspaces/include/aws/workspaces/model/WorkspaceImageErrorDetailCode.h
index 84507ffebf9..fc688f23407 100644
--- a/generated/src/aws-cpp-sdk-workspaces/include/aws/workspaces/model/WorkspaceImageErrorDetailCode.h
+++ b/generated/src/aws-cpp-sdk-workspaces/include/aws/workspaces/model/WorkspaceImageErrorDetailCode.h
@@ -41,7 +41,10 @@ namespace Model
ZeroRearmCount,
InPlaceUpgrade,
AntiVirusInstalled,
- UEFINotSupported
+ UEFINotSupported,
+ UnknownError,
+ AppXPackagesInstalled,
+ ReservedStorageInUse
};
namespace WorkspaceImageErrorDetailCodeMapper
diff --git a/generated/src/aws-cpp-sdk-workspaces/source/model/WorkspaceImageErrorDetailCode.cpp b/generated/src/aws-cpp-sdk-workspaces/source/model/WorkspaceImageErrorDetailCode.cpp
index e1f3d68e08b..ebd69e30b84 100644
--- a/generated/src/aws-cpp-sdk-workspaces/source/model/WorkspaceImageErrorDetailCode.cpp
+++ b/generated/src/aws-cpp-sdk-workspaces/source/model/WorkspaceImageErrorDetailCode.cpp
@@ -46,6 +46,9 @@ namespace Aws
static const int InPlaceUpgrade_HASH = HashingUtils::HashString("InPlaceUpgrade");
static const int AntiVirusInstalled_HASH = HashingUtils::HashString("AntiVirusInstalled");
static const int UEFINotSupported_HASH = HashingUtils::HashString("UEFINotSupported");
+ static const int UnknownError_HASH = HashingUtils::HashString("UnknownError");
+ static const int AppXPackagesInstalled_HASH = HashingUtils::HashString("AppXPackagesInstalled");
+ static const int ReservedStorageInUse_HASH = HashingUtils::HashString("ReservedStorageInUse");
WorkspaceImageErrorDetailCode GetWorkspaceImageErrorDetailCodeForName(const Aws::String& name)
@@ -155,6 +158,18 @@ namespace Aws
{
return WorkspaceImageErrorDetailCode::UEFINotSupported;
}
+ else if (hashCode == UnknownError_HASH)
+ {
+ return WorkspaceImageErrorDetailCode::UnknownError;
+ }
+ else if (hashCode == AppXPackagesInstalled_HASH)
+ {
+ return WorkspaceImageErrorDetailCode::AppXPackagesInstalled;
+ }
+ else if (hashCode == ReservedStorageInUse_HASH)
+ {
+ return WorkspaceImageErrorDetailCode::ReservedStorageInUse;
+ }
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
{
@@ -223,6 +238,12 @@ namespace Aws
return "AntiVirusInstalled";
case WorkspaceImageErrorDetailCode::UEFINotSupported:
return "UEFINotSupported";
+ case WorkspaceImageErrorDetailCode::UnknownError:
+ return "UnknownError";
+ case WorkspaceImageErrorDetailCode::AppXPackagesInstalled:
+ return "AppXPackagesInstalled";
+ case WorkspaceImageErrorDetailCode::ReservedStorageInUse:
+ return "ReservedStorageInUse";
default:
EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer();
if(overflowContainer)
diff --git a/generated/tests/dynamodb-gen-tests/DynamoDBEndpointProviderTests.cpp b/generated/tests/dynamodb-gen-tests/DynamoDBEndpointProviderTests.cpp
index dd08a428b26..ca4523fdc5a 100644
--- a/generated/tests/dynamodb-gen-tests/DynamoDBEndpointProviderTests.cpp
+++ b/generated/tests/dynamodb-gen-tests/DynamoDBEndpointProviderTests.cpp
@@ -74,7 +74,7 @@ class DynamoDBEndpointProviderTests : public ::testing::TestWithParam
};
Aws::UniquePtrSafeDeleted> DynamoDBEndpointProviderTests::TEST_CASES;
-const size_t DynamoDBEndpointProviderTests::TEST_CASES_SZ = 55;
+const size_t DynamoDBEndpointProviderTests::TEST_CASES_SZ = 97;
Aws::Vector DynamoDBEndpointProviderTests::getTestCase() {
@@ -552,6 +552,354 @@ Aws::Vector DynamoDBEndpointProviderTe
{}, // params
{}, // tags
{{/*No endpoint expected*/}, /*error*/"Invalid Configuration: Missing Region"} // expect
+ },
+ /*TEST CASE 55*/
+ {"For custom endpoint with account ID available, FIPS enabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Endpoint", "https://example.com"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*No endpoint expected*/}, /*error*/"Invalid Configuration: FIPS and custom endpoint are not supported"} // expect
+ },
+ /*TEST CASE 56*/
+ {"For custom endpoint with account ID available, FIPS enabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Endpoint", "https://example.com"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*No endpoint expected*/}, /*error*/"Invalid Configuration: FIPS and custom endpoint are not supported"} // expect
+ },
+ /*TEST CASE 57*/
+ {"For custom endpoint with account ID available, FIPS disabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Endpoint", "https://example.com"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*No endpoint expected*/}, /*error*/"Invalid Configuration: Dualstack and custom endpoint are not supported"} // expect
+ },
+ /*TEST CASE 58*/
+ {"For custom endpoint with account ID available, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Endpoint", "https://example.com"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://example.com",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 59*/
+ {"For custom endpoint with empty account ID available, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", ""), EpParam("Endpoint", "https://example.com"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://example.com",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 60*/
+ {"For region local with account ID available, FIPS enabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "local"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*No endpoint expected*/}, /*error*/"Invalid Configuration: FIPS and local endpoint are not supported"} // expect
+ },
+ /*TEST CASE 61*/
+ {"For region local with account ID available, FIPS enabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "local"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*No endpoint expected*/}, /*error*/"Invalid Configuration: FIPS and local endpoint are not supported"} // expect
+ },
+ /*TEST CASE 62*/
+ {"For region local with account ID available, FIPS disabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "local"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*No endpoint expected*/}, /*error*/"Invalid Configuration: Dualstack and local endpoint are not supported"} // expect
+ },
+ /*TEST CASE 63*/
+ {"For region local with account ID available, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "local"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"http://localhost:8000",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 64*/
+ {"For region local with empty account ID available, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", ""), EpParam("Region", "local"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"http://localhost:8000",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 65*/
+ {"For AccountIdEndpointMode required and no AccountId set", // documentation
+ {EpParam("Region", "us-east-1"), EpParam("AccountIdEndpointMode", "required")}, // params
+ {}, // tags
+ {{/*No endpoint expected*/}, /*error*/"AccountIdEndpointMode is required but no AccountID was provided or able to be loaded."} // expect
+ },
+ /*TEST CASE 66*/
+ {"For region us-east-1 with account ID available, FIPS enabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb-fips.us-east-1.api.aws",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 67*/
+ {"For region us-east-1 with account ID available, FIPS enabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb-fips.us-east-1.amazonaws.com",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 68*/
+ {"For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS enabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", false), EpParam("AccountIdEndpointMode", "preferred")}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb-fips.us-east-1.amazonaws.com",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 69*/
+ {"For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS enabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", false), EpParam("AccountIdEndpointMode", "required")}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb-fips.us-east-1.amazonaws.com",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 70*/
+ {"For region us-east-1 with account ID available, FIPS disabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-east-1.api.aws",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 71*/
+ {"For region us-east-1 with account ID available, FIPS disabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-east-1.api.aws",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 72*/
+ {"For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", true), EpParam("AccountIdEndpointMode", "preferred")}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-east-1.api.aws",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 73*/
+ {"For region us-east-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", true), EpParam("AccountIdEndpointMode", "disabled")}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-east-1.api.aws",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 74*/
+ {"For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", true), EpParam("AccountIdEndpointMode", "required")}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-east-1.api.aws",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 75*/
+ {"For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", false), EpParam("AccountIdEndpointMode", "preferred")}, // params
+ {}, // tags
+ {{/*epUrl*/"https://012345678901.ddb.us-east-1.amazonaws.com",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 76*/
+ {"For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", false), EpParam("AccountIdEndpointMode", "required")}, // params
+ {}, // tags
+ {{/*epUrl*/"https://012345678901.ddb.us-east-1.amazonaws.com",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 77*/
+ {"For region us-east-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-east-1"), EpParam("UseDualStack", false), EpParam("AccountIdEndpointMode", "disabled")}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-east-1.amazonaws.com",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 78*/
+ {"For region us-east-1 with empty account ID, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", ""), EpParam("Region", "us-east-1"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*No endpoint expected*/}, /*error*/"Credentials-sourced account ID parameter is invalid"} // expect
+ },
+ /*TEST CASE 79*/
+ {"For region cn-north-1 with account ID available, FIPS enabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb-fips.cn-north-1.api.amazonwebservices.com.cn",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 80*/
+ {"For region cn-north-1 with account ID available, FIPS enabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb-fips.cn-north-1.amazonaws.com.cn",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 81*/
+ {"For region cn-north-1 with account ID available, FIPS disabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.cn-north-1.api.amazonwebservices.com.cn",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 82*/
+ {"For region cn-north-1 with account ID available, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.cn-north-1.amazonaws.com.cn",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 83*/
+ {"For region cn-north-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", false), EpParam("AccountIdEndpointMode", "preferred")}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.cn-north-1.amazonaws.com.cn",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 84*/
+ {"For region cn-north-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", false), EpParam("AccountIdEndpointMode", "disabled")}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.cn-north-1.amazonaws.com.cn",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 85*/
+ {"For region cn-north-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", false), EpParam("AccountIdEndpointMode", "required")}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.cn-north-1.amazonaws.com.cn",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 86*/
+ {"For region cn-north-1 with empty account ID available, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", ""), EpParam("Region", "cn-north-1"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.cn-north-1.amazonaws.com.cn",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 87*/
+ {"For region us-iso-east-1 with account ID available, FIPS enabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "us-iso-east-1"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*No endpoint expected*/}, /*error*/"FIPS and DualStack are enabled, but this partition does not support one or both"} // expect
+ },
+ /*TEST CASE 88*/
+ {"For region us-iso-east-1 with account ID available, FIPS enabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "us-iso-east-1"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb-fips.us-iso-east-1.c2s.ic.gov",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 89*/
+ {"For region us-iso-east-1 with account ID available, FIPS disabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-iso-east-1"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*No endpoint expected*/}, /*error*/"DualStack is enabled but this partition does not support DualStack"} // expect
+ },
+ /*TEST CASE 90*/
+ {"For region us-iso-east-1 with account ID available, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-iso-east-1"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-iso-east-1.c2s.ic.gov",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 91*/
+ {"For region us-iso-east-1 with empty account ID available, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", ""), EpParam("Region", "us-iso-east-1"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-iso-east-1.c2s.ic.gov",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 92*/
+ {"For region us-gov-east-1 with account ID available, FIPS enabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "us-gov-east-1"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb-fips.us-gov-east-1.api.aws",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 93*/
+ {"For region us-gov-east-1 with account ID available, FIPS enabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", true), EpParam("AccountId", "012345678901"), EpParam("Region", "us-gov-east-1"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-gov-east-1.amazonaws.com",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 94*/
+ {"For region us-gov-east-1 with account ID available, FIPS disabled, and DualStack enabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-gov-east-1"), EpParam("UseDualStack", true)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-gov-east-1.api.aws",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 95*/
+ {"For region us-gov-east-1 with account ID available, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", "012345678901"), EpParam("Region", "us-gov-east-1"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-gov-east-1.amazonaws.com",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
+ },
+ /*TEST CASE 96*/
+ {"For region us-gov-east-1 with empty account ID available, FIPS disabled, and DualStack disabled", // documentation
+ {EpParam("UseFIPS", false), EpParam("AccountId", ""), EpParam("Region", "us-gov-east-1"), EpParam("UseDualStack", false)}, // params
+ {}, // tags
+ {{/*epUrl*/"https://dynamodb.us-gov-east-1.amazonaws.com",
+ {/*authScheme*/},
+ {/*properties*/},
+ {/*headers*/}}, {/*No error*/}} // expect
}
};
return test_cases;
diff --git a/generated/tests/neptune-gen-tests/NeptuneEndpointProviderTests.cpp b/generated/tests/neptune-gen-tests/NeptuneEndpointProviderTests.cpp
index 5b9e60fce19..c1f37354c3c 100644
--- a/generated/tests/neptune-gen-tests/NeptuneEndpointProviderTests.cpp
+++ b/generated/tests/neptune-gen-tests/NeptuneEndpointProviderTests.cpp
@@ -74,7 +74,7 @@ class NeptuneEndpointProviderTests : public ::testing::TestWithParam
};
Aws::UniquePtrSafeDeleted> NeptuneEndpointProviderTests::TEST_CASES;
-const size_t NeptuneEndpointProviderTests::TEST_CASES_SZ = 55;
+const size_t NeptuneEndpointProviderTests::TEST_CASES_SZ = 54;
Aws::Vector NeptuneEndpointProviderTests::getTestCase() {
@@ -543,12 +543,6 @@ Aws::Vector NeptuneEndpointProviderTest
{}, // params
{}, // tags
{{/*No endpoint expected*/}, /*error*/"Invalid Configuration: Missing Region"} // expect
- },
- /*TEST CASE 54*/
- {"Partition doesn't support DualStack", // documentation
- {EpParam("UseFIPS", false), EpParam("Region", "us-isob-east-1"), EpParam("UseDualStack", true)}, // params
- {}, // tags
- {{/*No endpoint expected*/}, /*error*/"DualStack is enabled but this partition does not support DualStack"} // expect
}
};
return test_cases;
diff --git a/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h b/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h
index ec52d1e43c3..8847508b72d 100644
--- a/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h
+++ b/src/aws-cpp-sdk-core/include/aws/core/VersionConfig.h
@@ -4,7 +4,7 @@
*/
#pragma once
-#define AWS_SDK_VERSION_STRING "1.11.409"
+#define AWS_SDK_VERSION_STRING "1.11.410"
#define AWS_SDK_VERSION_MAJOR 1
#define AWS_SDK_VERSION_MINOR 11
-#define AWS_SDK_VERSION_PATCH 409
+#define AWS_SDK_VERSION_PATCH 410
diff --git a/tools/code-generation/api-descriptions/neptune-2014-10-31.normal.json b/tools/code-generation/api-descriptions/neptune-2014-10-31.normal.json
index b3438e19105..1c0515ce69c 100644
--- a/tools/code-generation/api-descriptions/neptune-2014-10-31.normal.json
+++ b/tools/code-generation/api-descriptions/neptune-2014-10-31.normal.json
@@ -4,13 +4,15 @@
"apiVersion":"2014-10-31",
"endpointPrefix":"rds",
"protocol":"query",
+ "protocols":["query"],
"serviceAbbreviation":"Amazon Neptune",
"serviceFullName":"Amazon Neptune",
"serviceId":"Neptune",
"signatureVersion":"v4",
"signingName":"rds",
"uid":"neptune-2014-10-31",
- "xmlNamespace":"http://rds.amazonaws.com/doc/2014-10-31/"
+ "xmlNamespace":"http://rds.amazonaws.com/doc/2014-10-31/",
+ "auth":["aws.auth#sigv4"]
},
"operations":{
"AddRoleToDBCluster":{
diff --git a/tools/code-generation/api-descriptions/sagemaker-2017-07-24.normal.json b/tools/code-generation/api-descriptions/sagemaker-2017-07-24.normal.json
index 4e3da8b6b56..f9d86b0e824 100644
--- a/tools/code-generation/api-descriptions/sagemaker-2017-07-24.normal.json
+++ b/tools/code-generation/api-descriptions/sagemaker-2017-07-24.normal.json
@@ -33952,6 +33952,10 @@
"HubAccessConfig":{
"shape":"InferenceHubAccessConfig",
"documentation":"Configuration information for hub access.
"
+ },
+ "ManifestS3Uri":{
+ "shape":"S3ModelUri",
+ "documentation":"The Amazon S3 URI of the manifest file. The manifest file is a CSV file that stores the artifact locations.
"
}
},
"documentation":"Specifies the S3 location of ML model data to deploy.
"
diff --git a/tools/code-generation/api-descriptions/sagemaker-metrics-2022-09-30.normal.json b/tools/code-generation/api-descriptions/sagemaker-metrics-2022-09-30.normal.json
index fb2d62b2084..74c09d9ebd7 100644
--- a/tools/code-generation/api-descriptions/sagemaker-metrics-2022-09-30.normal.json
+++ b/tools/code-generation/api-descriptions/sagemaker-metrics-2022-09-30.normal.json
@@ -4,14 +4,26 @@
"apiVersion":"2022-09-30",
"endpointPrefix":"metrics.sagemaker",
"protocol":"rest-json",
+ "protocols":["rest-json"],
"serviceAbbreviation":"SageMaker Metrics",
"serviceFullName":"Amazon SageMaker Metrics Service",
"serviceId":"SageMaker Metrics",
"signatureVersion":"v4",
"signingName":"sagemaker",
- "uid":"sagemaker-metrics-2022-09-30"
+ "uid":"sagemaker-metrics-2022-09-30",
+ "auth":["aws.auth#sigv4"]
},
"operations":{
+ "BatchGetMetrics":{
+ "name":"BatchGetMetrics",
+ "http":{
+ "method":"POST",
+ "requestUri":"/BatchGetMetrics"
+ },
+ "input":{"shape":"BatchGetMetricsRequest"},
+ "output":{"shape":"BatchGetMetricsResponse"},
+ "documentation":"Used to retrieve training metrics from SageMaker.
"
+ },
"BatchPutMetrics":{
"name":"BatchPutMetrics",
"http":{
@@ -20,10 +32,29 @@
},
"input":{"shape":"BatchPutMetricsRequest"},
"output":{"shape":"BatchPutMetricsResponse"},
- "documentation":"Used to ingest training metrics into SageMaker. These metrics can be visualized in SageMaker Studio and retrieved with the GetMetrics
API.
"
+ "documentation":"Used to ingest training metrics into SageMaker. These metrics can be visualized in SageMaker Studio.
"
}
},
"shapes":{
+ "BatchGetMetricsRequest":{
+ "type":"structure",
+ "required":["MetricQueries"],
+ "members":{
+ "MetricQueries":{
+ "shape":"MetricQueryList",
+ "documentation":"Queries made to retrieve training metrics from SageMaker.
"
+ }
+ }
+ },
+ "BatchGetMetricsResponse":{
+ "type":"structure",
+ "members":{
+ "MetricQueryResults":{
+ "shape":"MetricQueryResultList",
+ "documentation":"The results of a query to retrieve training metrics from SageMaker.
"
+ }
+ }
+ },
"BatchPutMetricsError":{
"type":"structure",
"members":{
@@ -53,7 +84,7 @@
"members":{
"TrialComponentName":{
"shape":"ExperimentEntityName",
- "documentation":"The name of the Trial Component to associate with the metrics.
"
+ "documentation":"The name of the Trial Component to associate with the metrics. The Trial Component name must be entirely lowercase.
"
},
"MetricData":{
"shape":"RawMetricDataList",
@@ -75,15 +106,136 @@
"type":"string",
"max":120,
"min":1,
- "pattern":"^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,119}"
+ "pattern":"^[a-z0-9](-*[a-z0-9]){0,119}"
},
"Integer":{"type":"integer"},
+ "Long":{"type":"long"},
+ "Message":{
+ "type":"string",
+ "max":2048,
+ "pattern":".*"
+ },
"MetricName":{
"type":"string",
"max":255,
"min":1,
"pattern":".+"
},
+ "MetricQuery":{
+ "type":"structure",
+ "required":[
+ "MetricName",
+ "ResourceArn",
+ "MetricStat",
+ "Period",
+ "XAxisType"
+ ],
+ "members":{
+ "MetricName":{
+ "shape":"MetricName",
+ "documentation":"The name of the metric to retrieve.
"
+ },
+ "ResourceArn":{
+ "shape":"SageMakerResourceArn",
+ "documentation":"The ARN of the SageMaker resource to retrieve metrics for.
"
+ },
+ "MetricStat":{
+ "shape":"MetricStatistic",
+ "documentation":"The metrics stat type of metrics to retrieve.
"
+ },
+ "Period":{
+ "shape":"Period",
+ "documentation":"The time period of metrics to retrieve.
"
+ },
+ "XAxisType":{
+ "shape":"XAxisType",
+ "documentation":"The x-axis type of metrics to retrieve.
"
+ },
+ "Start":{
+ "shape":"Long",
+ "documentation":"The start time of metrics to retrieve.
",
+ "box":true
+ },
+ "End":{
+ "shape":"Long",
+ "documentation":"The end time of metrics to retrieve.
",
+ "box":true
+ }
+ },
+ "documentation":"Specifies a query to retrieve training metrics from SageMaker.
"
+ },
+ "MetricQueryList":{
+ "type":"list",
+ "member":{"shape":"MetricQuery"},
+ "max":100,
+ "min":1
+ },
+ "MetricQueryResult":{
+ "type":"structure",
+ "required":[
+ "Status",
+ "XAxisValues",
+ "MetricValues"
+ ],
+ "members":{
+ "Status":{
+ "shape":"MetricQueryResultStatus",
+ "documentation":"The status of the metric query.
"
+ },
+ "Message":{
+ "shape":"Message",
+ "documentation":"A message describing the status of the metric query.
"
+ },
+ "XAxisValues":{
+ "shape":"XAxisValues",
+ "documentation":"The values for the x-axis of the metrics.
"
+ },
+ "MetricValues":{
+ "shape":"MetricValues",
+ "documentation":"The metric values retrieved by the query.
"
+ }
+ },
+ "documentation":"The result of a query to retrieve training metrics from SageMaker.
"
+ },
+ "MetricQueryResultList":{
+ "type":"list",
+ "member":{"shape":"MetricQueryResult"},
+ "max":100,
+ "min":1
+ },
+ "MetricQueryResultStatus":{
+ "type":"string",
+ "enum":[
+ "Complete",
+ "Truncated",
+ "InternalError",
+ "ValidationError"
+ ]
+ },
+ "MetricStatistic":{
+ "type":"string",
+ "enum":[
+ "Min",
+ "Max",
+ "Avg",
+ "Count",
+ "StdDev",
+ "Last"
+ ]
+ },
+ "MetricValues":{
+ "type":"list",
+ "member":{"shape":"Double"}
+ },
+ "Period":{
+ "type":"string",
+ "enum":[
+ "OneMinute",
+ "FiveMinute",
+ "OneHour",
+ "IterationNumber"
+ ]
+ },
"PutMetricsErrorCode":{
"type":"string",
"enum":[
@@ -126,11 +278,27 @@
"max":10,
"min":1
},
+ "SageMakerResourceArn":{
+ "type":"string",
+ "max":2048,
+ "pattern":"arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:[a-z\\-].*/.*"
+ },
"Step":{
"type":"integer",
"min":0
},
- "Timestamp":{"type":"timestamp"}
+ "Timestamp":{"type":"timestamp"},
+ "XAxisType":{
+ "type":"string",
+ "enum":[
+ "IterationNumber",
+ "Timestamp"
+ ]
+ },
+ "XAxisValues":{
+ "type":"list",
+ "member":{"shape":"Long"}
+ }
},
"documentation":"Contains all data plane API operations and data types for Amazon SageMaker Metrics. Use these APIs to put and retrieve (get) features related to your training run.
"
}
diff --git a/tools/code-generation/api-descriptions/workspaces-2015-04-08.normal.json b/tools/code-generation/api-descriptions/workspaces-2015-04-08.normal.json
index 6f0b46e385f..6a7ea5c8023 100644
--- a/tools/code-generation/api-descriptions/workspaces-2015-04-08.normal.json
+++ b/tools/code-generation/api-descriptions/workspaces-2015-04-08.normal.json
@@ -6622,7 +6622,10 @@
"ZeroRearmCount",
"InPlaceUpgrade",
"AntiVirusInstalled",
- "UEFINotSupported"
+ "UEFINotSupported",
+ "UnknownError",
+ "AppXPackagesInstalled",
+ "ReservedStorageInUse"
]
},
"WorkspaceImageId":{
diff --git a/tools/code-generation/endpoints/dynamodb-2011-12-05.endpoint-rule-set.json b/tools/code-generation/endpoints/dynamodb-2011-12-05.endpoint-rule-set.json
index 5e7f294eea5..c628afe22b1 100644
--- a/tools/code-generation/endpoints/dynamodb-2011-12-05.endpoint-rule-set.json
+++ b/tools/code-generation/endpoints/dynamodb-2011-12-05.endpoint-rule-set.json
@@ -26,6 +26,18 @@
"required": false,
"documentation": "Override the endpoint used to send this request",
"type": "String"
+ },
+ "AccountId": {
+ "builtIn": "AWS::Auth::AccountId",
+ "required": false,
+ "documentation": "The AWS AccountId used for the request.",
+ "type": "String"
+ },
+ "AccountIdEndpointMode": {
+ "builtIn": "AWS::Auth::AccountIdEndpointMode",
+ "required": false,
+ "documentation": "The AccountId Endpoint Mode.",
+ "type": "String"
}
},
"rules": [
@@ -74,9 +86,7 @@
{
"conditions": [],
"endpoint": {
- "url": {
- "ref": "Endpoint"
- },
+ "url": "{Endpoint}",
"properties": {},
"headers": {}
},
@@ -110,6 +120,176 @@
}
],
"rules": [
+ {
+ "conditions": [
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "Region"
+ },
+ "local"
+ ]
+ }
+ ],
+ "rules": [
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseFIPS"
+ },
+ true
+ ]
+ }
+ ],
+ "error": "Invalid Configuration: FIPS and local endpoint are not supported",
+ "type": "error"
+ },
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseDualStack"
+ },
+ true
+ ]
+ }
+ ],
+ "error": "Invalid Configuration: Dualstack and local endpoint are not supported",
+ "type": "error"
+ },
+ {
+ "conditions": [],
+ "endpoint": {
+ "url": "http://localhost:8000",
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "dynamodb",
+ "signingRegion": "us-east-1"
+ }
+ ]
+ },
+ "headers": {}
+ },
+ "type": "endpoint"
+ }
+ ],
+ "type": "tree"
+ },
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ },
+ "required"
+ ]
+ },
+ {
+ "fn": "not",
+ "argv": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountId"
+ }
+ ]
+ }
+ ]
+ }
+ ],
+ "error": "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded.",
+ "type": "error"
+ },
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountId"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "fn": "getAttr",
+ "argv": [
+ {
+ "ref": "PartitionResult"
+ },
+ "name"
+ ]
+ },
+ "aws"
+ ]
+ },
+ {
+ "fn": "not",
+ "argv": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseFIPS"
+ },
+ true
+ ]
+ }
+ ]
+ },
+ {
+ "fn": "not",
+ "argv": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseDualStack"
+ },
+ true
+ ]
+ }
+ ]
+ },
+ {
+ "fn": "not",
+ "argv": [
+ {
+ "fn": "isValidHostLabel",
+ "argv": [
+ {
+ "ref": "AccountId"
+ },
+ false
+ ]
+ }
+ ]
+ }
+ ],
+ "error": "Credentials-sourced account ID parameter is invalid",
+ "type": "error"
+ },
{
"conditions": [
{
@@ -137,7 +317,6 @@
{
"fn": "booleanEquals",
"argv": [
- true,
{
"fn": "getAttr",
"argv": [
@@ -146,13 +325,13 @@
},
"supportsFIPS"
]
- }
+ },
+ true
]
},
{
"fn": "booleanEquals",
"argv": [
- true,
{
"fn": "getAttr",
"argv": [
@@ -161,11 +340,39 @@
},
"supportsDualStack"
]
- }
+ },
+ true
]
}
],
"rules": [
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ },
+ "disabled"
+ ]
+ }
+ ],
+ "endpoint": {
+ "url": "https://dynamodb-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ },
{
"conditions": [],
"endpoint": {
@@ -236,8 +443,68 @@
]
}
],
+ "rules": [
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ },
+ "disabled"
+ ]
+ }
+ ],
+ "endpoint": {
+ "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ },
+ {
+ "conditions": [],
+ "endpoint": {
+ "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ }
+ ],
+ "type": "tree"
+ },
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ },
+ "disabled"
+ ]
+ }
+ ],
"endpoint": {
- "url": "https://dynamodb.{Region}.amazonaws.com",
+ "url": "https://dynamodb-fips.{Region}.{PartitionResult#dnsSuffix}",
"properties": {},
"headers": {}
},
@@ -281,7 +548,6 @@
{
"fn": "booleanEquals",
"argv": [
- true,
{
"fn": "getAttr",
"argv": [
@@ -290,11 +556,39 @@
},
"supportsDualStack"
]
- }
+ },
+ true
]
}
],
"rules": [
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ },
+ "disabled"
+ ]
+ }
+ ],
+ "endpoint": {
+ "url": "https://dynamodb.{Region}.{PartitionResult#dualStackDnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ },
{
"conditions": [],
"endpoint": {
@@ -317,27 +611,88 @@
},
{
"conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
{
"fn": "stringEquals",
"argv": [
{
- "ref": "Region"
+ "ref": "AccountIdEndpointMode"
},
- "local"
+ "disabled"
]
}
],
"endpoint": {
- "url": "http://localhost:8000",
- "properties": {
- "authSchemes": [
+ "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ },
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountId"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "fn": "getAttr",
+ "argv": [
+ {
+ "ref": "PartitionResult"
+ },
+ "name"
+ ]
+ },
+ "aws"
+ ]
+ },
+ {
+ "fn": "not",
+ "argv": [
{
- "name": "sigv4",
- "signingName": "dynamodb",
- "signingRegion": "us-east-1"
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseFIPS"
+ },
+ true
+ ]
}
]
},
+ {
+ "fn": "not",
+ "argv": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseDualStack"
+ },
+ true
+ ]
+ }
+ ]
+ }
+ ],
+ "endpoint": {
+ "url": "https://{AccountId}.ddb.{Region}.{PartitionResult#dnsSuffix}",
+ "properties": {},
"headers": {}
},
"type": "endpoint"
diff --git a/tools/code-generation/endpoints/dynamodb-2011-12-05.endpoint-tests.json b/tools/code-generation/endpoints/dynamodb-2011-12-05.endpoint-tests.json
index 66351adfbb7..1936e4ec358 100644
--- a/tools/code-generation/endpoints/dynamodb-2011-12-05.endpoint-tests.json
+++ b/tools/code-generation/endpoints/dynamodb-2011-12-05.endpoint-tests.json
@@ -707,6 +707,843 @@
"expect": {
"error": "Invalid Configuration: Missing Region"
}
+ },
+ {
+ "documentation": "For custom endpoint with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "error": "Invalid Configuration: FIPS and custom endpoint are not supported"
+ },
+ "params": {
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For custom endpoint with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "error": "Invalid Configuration: FIPS and custom endpoint are not supported"
+ },
+ "params": {
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For custom endpoint with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported"
+ },
+ "params": {
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For custom endpoint with account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://example.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "SDK::Endpoint": "https://example.com",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For custom endpoint with empty account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://example.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "SDK::Endpoint": "https://example.com",
+ "AWS::Auth::AccountId": ""
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For region local with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "error": "Invalid Configuration: FIPS and local endpoint are not supported"
+ },
+ "params": {
+ "Region": "local",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region local with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "error": "Invalid Configuration: FIPS and local endpoint are not supported"
+ },
+ "params": {
+ "Region": "local",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region local with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "error": "Invalid Configuration: Dualstack and local endpoint are not supported"
+ },
+ "params": {
+ "Region": "local",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region local with account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "dynamodb",
+ "signingRegion": "us-east-1"
+ }
+ ]
+ },
+ "url": "http://localhost:8000"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "local",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "local",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region local with empty account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "dynamodb",
+ "signingRegion": "us-east-1"
+ }
+ ]
+ },
+ "url": "http://localhost:8000"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "local",
+ "AWS::Auth::AccountId": ""
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "local",
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For AccountIdEndpointMode required and no AccountId set",
+ "expect": {
+ "error": "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded."
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountIdEndpointMode": "required"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountIdEndpointMode": "required"
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-east-1.api.aws"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseFIPS": true,
+ "AWS::UseDualStack": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseFIPS": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::Auth::AccountIdEndpointMode": "preferred",
+ "AWS::UseFIPS": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "preferred",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::Auth::AccountIdEndpointMode": "required",
+ "AWS::UseFIPS": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "required",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.api.aws"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseDualStack": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.api.aws"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseDualStack": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.api.aws"
+ }
+ },
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "preferred",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.api.aws"
+ }
+ },
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "disabled",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.api.aws"
+ }
+ },
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "required",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://012345678901.ddb.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::Auth::AccountIdEndpointMode": "preferred"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false,
+ "AccountIdEndpointMode": "preferred"
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://012345678901.ddb.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::Auth::AccountIdEndpointMode": "required"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false,
+ "AccountIdEndpointMode": "required"
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::Auth::AccountIdEndpointMode": "disabled"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false,
+ "AccountIdEndpointMode": "disabled"
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with empty account ID, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "error": "Credentials-sourced account ID parameter is invalid"
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": " "
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.cn-north-1.api.amazonwebservices.com.cn"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "cn-north-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseFIPS": true,
+ "AWS::UseDualStack": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "cn-north-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseFIPS": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.api.amazonwebservices.com.cn"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "cn-north-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseDualStack": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "cn-north-1",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "preferred",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "disabled",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "required",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with empty account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "cn-north-1",
+ "AWS::Auth::AccountId": ""
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-iso-east-1 with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "error": "FIPS and DualStack are enabled, but this partition does not support one or both"
+ },
+ "params": {
+ "Region": "us-iso-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-iso-east-1 with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-iso-east-1.c2s.ic.gov"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-iso-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseFIPS": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-iso-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-iso-east-1 with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "error": "DualStack is enabled but this partition does not support DualStack"
+ },
+ "params": {
+ "Region": "us-iso-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-iso-east-1 with account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-iso-east-1",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-iso-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-iso-east-1 with empty account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-iso-east-1",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-iso-east-1",
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-gov-east-1 with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-gov-east-1.api.aws"
+ }
+ },
+ "params": {
+ "Region": "us-gov-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-gov-east-1 with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-gov-east-1.amazonaws.com"
+ }
+ },
+ "params": {
+ "Region": "us-gov-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-gov-east-1 with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-gov-east-1.api.aws"
+ }
+ },
+ "params": {
+ "Region": "us-gov-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-gov-east-1 with account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-gov-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-gov-east-1",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-gov-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-gov-east-1 with empty account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-gov-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-gov-east-1",
+ "AWS::Auth::AccountId": ""
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-gov-east-1",
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
}
],
"version": "1.0"
diff --git a/tools/code-generation/endpoints/dynamodb-2012-08-10.endpoint-rule-set.json b/tools/code-generation/endpoints/dynamodb-2012-08-10.endpoint-rule-set.json
index 5e7f294eea5..c628afe22b1 100644
--- a/tools/code-generation/endpoints/dynamodb-2012-08-10.endpoint-rule-set.json
+++ b/tools/code-generation/endpoints/dynamodb-2012-08-10.endpoint-rule-set.json
@@ -26,6 +26,18 @@
"required": false,
"documentation": "Override the endpoint used to send this request",
"type": "String"
+ },
+ "AccountId": {
+ "builtIn": "AWS::Auth::AccountId",
+ "required": false,
+ "documentation": "The AWS AccountId used for the request.",
+ "type": "String"
+ },
+ "AccountIdEndpointMode": {
+ "builtIn": "AWS::Auth::AccountIdEndpointMode",
+ "required": false,
+ "documentation": "The AccountId Endpoint Mode.",
+ "type": "String"
}
},
"rules": [
@@ -74,9 +86,7 @@
{
"conditions": [],
"endpoint": {
- "url": {
- "ref": "Endpoint"
- },
+ "url": "{Endpoint}",
"properties": {},
"headers": {}
},
@@ -110,6 +120,176 @@
}
],
"rules": [
+ {
+ "conditions": [
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "Region"
+ },
+ "local"
+ ]
+ }
+ ],
+ "rules": [
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseFIPS"
+ },
+ true
+ ]
+ }
+ ],
+ "error": "Invalid Configuration: FIPS and local endpoint are not supported",
+ "type": "error"
+ },
+ {
+ "conditions": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseDualStack"
+ },
+ true
+ ]
+ }
+ ],
+ "error": "Invalid Configuration: Dualstack and local endpoint are not supported",
+ "type": "error"
+ },
+ {
+ "conditions": [],
+ "endpoint": {
+ "url": "http://localhost:8000",
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "dynamodb",
+ "signingRegion": "us-east-1"
+ }
+ ]
+ },
+ "headers": {}
+ },
+ "type": "endpoint"
+ }
+ ],
+ "type": "tree"
+ },
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ },
+ "required"
+ ]
+ },
+ {
+ "fn": "not",
+ "argv": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountId"
+ }
+ ]
+ }
+ ]
+ }
+ ],
+ "error": "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded.",
+ "type": "error"
+ },
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountId"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "fn": "getAttr",
+ "argv": [
+ {
+ "ref": "PartitionResult"
+ },
+ "name"
+ ]
+ },
+ "aws"
+ ]
+ },
+ {
+ "fn": "not",
+ "argv": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseFIPS"
+ },
+ true
+ ]
+ }
+ ]
+ },
+ {
+ "fn": "not",
+ "argv": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseDualStack"
+ },
+ true
+ ]
+ }
+ ]
+ },
+ {
+ "fn": "not",
+ "argv": [
+ {
+ "fn": "isValidHostLabel",
+ "argv": [
+ {
+ "ref": "AccountId"
+ },
+ false
+ ]
+ }
+ ]
+ }
+ ],
+ "error": "Credentials-sourced account ID parameter is invalid",
+ "type": "error"
+ },
{
"conditions": [
{
@@ -137,7 +317,6 @@
{
"fn": "booleanEquals",
"argv": [
- true,
{
"fn": "getAttr",
"argv": [
@@ -146,13 +325,13 @@
},
"supportsFIPS"
]
- }
+ },
+ true
]
},
{
"fn": "booleanEquals",
"argv": [
- true,
{
"fn": "getAttr",
"argv": [
@@ -161,11 +340,39 @@
},
"supportsDualStack"
]
- }
+ },
+ true
]
}
],
"rules": [
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ },
+ "disabled"
+ ]
+ }
+ ],
+ "endpoint": {
+ "url": "https://dynamodb-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ },
{
"conditions": [],
"endpoint": {
@@ -236,8 +443,68 @@
]
}
],
+ "rules": [
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ },
+ "disabled"
+ ]
+ }
+ ],
+ "endpoint": {
+ "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ },
+ {
+ "conditions": [],
+ "endpoint": {
+ "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ }
+ ],
+ "type": "tree"
+ },
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ },
+ "disabled"
+ ]
+ }
+ ],
"endpoint": {
- "url": "https://dynamodb.{Region}.amazonaws.com",
+ "url": "https://dynamodb-fips.{Region}.{PartitionResult#dnsSuffix}",
"properties": {},
"headers": {}
},
@@ -281,7 +548,6 @@
{
"fn": "booleanEquals",
"argv": [
- true,
{
"fn": "getAttr",
"argv": [
@@ -290,11 +556,39 @@
},
"supportsDualStack"
]
- }
+ },
+ true
]
}
],
"rules": [
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ },
+ "disabled"
+ ]
+ }
+ ],
+ "endpoint": {
+ "url": "https://dynamodb.{Region}.{PartitionResult#dualStackDnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ },
{
"conditions": [],
"endpoint": {
@@ -317,27 +611,88 @@
},
{
"conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountIdEndpointMode"
+ }
+ ]
+ },
{
"fn": "stringEquals",
"argv": [
{
- "ref": "Region"
+ "ref": "AccountIdEndpointMode"
},
- "local"
+ "disabled"
]
}
],
"endpoint": {
- "url": "http://localhost:8000",
- "properties": {
- "authSchemes": [
+ "url": "https://dynamodb.{Region}.{PartitionResult#dnsSuffix}",
+ "properties": {},
+ "headers": {}
+ },
+ "type": "endpoint"
+ },
+ {
+ "conditions": [
+ {
+ "fn": "isSet",
+ "argv": [
+ {
+ "ref": "AccountId"
+ }
+ ]
+ },
+ {
+ "fn": "stringEquals",
+ "argv": [
+ {
+ "fn": "getAttr",
+ "argv": [
+ {
+ "ref": "PartitionResult"
+ },
+ "name"
+ ]
+ },
+ "aws"
+ ]
+ },
+ {
+ "fn": "not",
+ "argv": [
{
- "name": "sigv4",
- "signingName": "dynamodb",
- "signingRegion": "us-east-1"
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseFIPS"
+ },
+ true
+ ]
}
]
},
+ {
+ "fn": "not",
+ "argv": [
+ {
+ "fn": "booleanEquals",
+ "argv": [
+ {
+ "ref": "UseDualStack"
+ },
+ true
+ ]
+ }
+ ]
+ }
+ ],
+ "endpoint": {
+ "url": "https://{AccountId}.ddb.{Region}.{PartitionResult#dnsSuffix}",
+ "properties": {},
"headers": {}
},
"type": "endpoint"
diff --git a/tools/code-generation/endpoints/dynamodb-2012-08-10.endpoint-tests.json b/tools/code-generation/endpoints/dynamodb-2012-08-10.endpoint-tests.json
index 66351adfbb7..1936e4ec358 100644
--- a/tools/code-generation/endpoints/dynamodb-2012-08-10.endpoint-tests.json
+++ b/tools/code-generation/endpoints/dynamodb-2012-08-10.endpoint-tests.json
@@ -707,6 +707,843 @@
"expect": {
"error": "Invalid Configuration: Missing Region"
}
+ },
+ {
+ "documentation": "For custom endpoint with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "error": "Invalid Configuration: FIPS and custom endpoint are not supported"
+ },
+ "params": {
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For custom endpoint with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "error": "Invalid Configuration: FIPS and custom endpoint are not supported"
+ },
+ "params": {
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For custom endpoint with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported"
+ },
+ "params": {
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For custom endpoint with account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://example.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "SDK::Endpoint": "https://example.com",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For custom endpoint with empty account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://example.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "SDK::Endpoint": "https://example.com",
+ "AWS::Auth::AccountId": ""
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false,
+ "Endpoint": "https://example.com"
+ }
+ },
+ {
+ "documentation": "For region local with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "error": "Invalid Configuration: FIPS and local endpoint are not supported"
+ },
+ "params": {
+ "Region": "local",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region local with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "error": "Invalid Configuration: FIPS and local endpoint are not supported"
+ },
+ "params": {
+ "Region": "local",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region local with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "error": "Invalid Configuration: Dualstack and local endpoint are not supported"
+ },
+ "params": {
+ "Region": "local",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region local with account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "dynamodb",
+ "signingRegion": "us-east-1"
+ }
+ ]
+ },
+ "url": "http://localhost:8000"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "local",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "local",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region local with empty account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "properties": {
+ "authSchemes": [
+ {
+ "name": "sigv4",
+ "signingName": "dynamodb",
+ "signingRegion": "us-east-1"
+ }
+ ]
+ },
+ "url": "http://localhost:8000"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "local",
+ "AWS::Auth::AccountId": ""
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "local",
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For AccountIdEndpointMode required and no AccountId set",
+ "expect": {
+ "error": "AccountIdEndpointMode is required but no AccountID was provided or able to be loaded."
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountIdEndpointMode": "required"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountIdEndpointMode": "required"
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-east-1.api.aws"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseFIPS": true,
+ "AWS::UseDualStack": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseFIPS": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::Auth::AccountIdEndpointMode": "preferred",
+ "AWS::UseFIPS": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "preferred",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::Auth::AccountIdEndpointMode": "required",
+ "AWS::UseFIPS": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "required",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.api.aws"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseDualStack": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.api.aws"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseDualStack": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.api.aws"
+ }
+ },
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "preferred",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.api.aws"
+ }
+ },
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "disabled",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.api.aws"
+ }
+ },
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "required",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://012345678901.ddb.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::Auth::AccountIdEndpointMode": "preferred"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false,
+ "AccountIdEndpointMode": "preferred"
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://012345678901.ddb.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::Auth::AccountIdEndpointMode": "required"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false,
+ "AccountIdEndpointMode": "required"
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::Auth::AccountIdEndpointMode": "disabled"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false,
+ "AccountIdEndpointMode": "disabled"
+ }
+ },
+ {
+ "documentation": "For region us-east-1 with empty account ID, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "error": "Credentials-sourced account ID parameter is invalid"
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-east-1",
+ "AWS::Auth::AccountId": " "
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-east-1",
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.cn-north-1.api.amazonwebservices.com.cn"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "cn-north-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseFIPS": true,
+ "AWS::UseDualStack": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "cn-north-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseFIPS": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.api.amazonwebservices.com.cn"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "cn-north-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseDualStack": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "cn-north-1",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, AccountIdEndpointMode preferred, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "preferred",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, AccountIdEndpointMode disabled, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "disabled",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with account ID available, AccountIdEndpointMode required, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "012345678901",
+ "AccountIdEndpointMode": "required",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region cn-north-1 with empty account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.cn-north-1.amazonaws.com.cn"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "cn-north-1",
+ "AWS::Auth::AccountId": ""
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "cn-north-1",
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-iso-east-1 with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "error": "FIPS and DualStack are enabled, but this partition does not support one or both"
+ },
+ "params": {
+ "Region": "us-iso-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-iso-east-1 with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-iso-east-1.c2s.ic.gov"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-iso-east-1",
+ "AWS::Auth::AccountId": "012345678901",
+ "AWS::UseFIPS": true
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-iso-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-iso-east-1 with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "error": "DualStack is enabled but this partition does not support DualStack"
+ },
+ "params": {
+ "Region": "us-iso-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-iso-east-1 with account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-iso-east-1",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-iso-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-iso-east-1 with empty account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-iso-east-1.c2s.ic.gov"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-iso-east-1",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-iso-east-1",
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-gov-east-1 with account ID available, FIPS enabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb-fips.us-gov-east-1.api.aws"
+ }
+ },
+ "params": {
+ "Region": "us-gov-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-gov-east-1 with account ID available, FIPS enabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-gov-east-1.amazonaws.com"
+ }
+ },
+ "params": {
+ "Region": "us-gov-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": true,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-gov-east-1 with account ID available, FIPS disabled, and DualStack enabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-gov-east-1.api.aws"
+ }
+ },
+ "params": {
+ "Region": "us-gov-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": true
+ }
+ },
+ {
+ "documentation": "For region us-gov-east-1 with account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-gov-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-gov-east-1",
+ "AWS::Auth::AccountId": "012345678901"
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-gov-east-1",
+ "AccountId": "012345678901",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
+ },
+ {
+ "documentation": "For region us-gov-east-1 with empty account ID available, FIPS disabled, and DualStack disabled",
+ "expect": {
+ "endpoint": {
+ "url": "https://dynamodb.us-gov-east-1.amazonaws.com"
+ }
+ },
+ "operationInputs": [
+ {
+ "builtInParams": {
+ "AWS::Region": "us-gov-east-1",
+ "AWS::Auth::AccountId": ""
+ },
+ "operationName": "ListTables"
+ }
+ ],
+ "params": {
+ "Region": "us-gov-east-1",
+ "AccountId": "",
+ "UseFIPS": false,
+ "UseDualStack": false
+ }
}
],
"version": "1.0"
diff --git a/tools/code-generation/endpoints/neptune-2014-10-31.endpoint-tests.json b/tools/code-generation/endpoints/neptune-2014-10-31.endpoint-tests.json
index 8ac5ed557d2..8b0bc663a10 100644
--- a/tools/code-generation/endpoints/neptune-2014-10-31.endpoint-tests.json
+++ b/tools/code-generation/endpoints/neptune-2014-10-31.endpoint-tests.json
@@ -685,17 +685,6 @@
"expect": {
"error": "Invalid Configuration: Missing Region"
}
- },
- {
- "documentation": "Partition doesn't support DualStack",
- "expect": {
- "error": "DualStack is enabled but this partition does not support DualStack"
- },
- "params": {
- "Region": "us-isob-east-1",
- "UseFIPS": false,
- "UseDualStack": true
- }
}
],
"version": "1.0"
diff --git a/tools/code-generation/endpoints/sagemaker-metrics-2022-09-30.endpoint-rule-set.json b/tools/code-generation/endpoints/sagemaker-metrics-2022-09-30.endpoint-rule-set.json
index 9b57ecb1b0d..037361e96f6 100644
--- a/tools/code-generation/endpoints/sagemaker-metrics-2022-09-30.endpoint-rule-set.json
+++ b/tools/code-generation/endpoints/sagemaker-metrics-2022-09-30.endpoint-rule-set.json
@@ -40,7 +40,6 @@
]
}
],
- "type": "tree",
"rules": [
{
"conditions": [
@@ -59,7 +58,6 @@
},
{
"conditions": [],
- "type": "tree",
"rules": [
{
"conditions": [
@@ -87,13 +85,14 @@
},
"type": "endpoint"
}
- ]
+ ],
+ "type": "tree"
}
- ]
+ ],
+ "type": "tree"
},
{
"conditions": [],
- "type": "tree",
"rules": [
{
"conditions": [
@@ -106,7 +105,6 @@
]
}
],
- "type": "tree",
"rules": [
{
"conditions": [
@@ -120,7 +118,6 @@
"assign": "PartitionResult"
}
],
- "type": "tree",
"rules": [
{
"conditions": [
@@ -143,7 +140,6 @@
]
}
],
- "type": "tree",
"rules": [
{
"conditions": [
@@ -178,11 +174,9 @@
]
}
],
- "type": "tree",
"rules": [
{
"conditions": [],
- "type": "tree",
"rules": [
{
"conditions": [],
@@ -193,16 +187,19 @@
},
"type": "endpoint"
}
- ]
+ ],
+ "type": "tree"
}
- ]
+ ],
+ "type": "tree"
},
{
"conditions": [],
"error": "FIPS and DualStack are enabled, but this partition does not support one or both",
"type": "error"
}
- ]
+ ],
+ "type": "tree"
},
{
"conditions": [
@@ -216,14 +213,12 @@
]
}
],
- "type": "tree",
"rules": [
{
"conditions": [
{
"fn": "booleanEquals",
"argv": [
- true,
{
"fn": "getAttr",
"argv": [
@@ -232,15 +227,14 @@
},
"supportsFIPS"
]
- }
+ },
+ true
]
}
],
- "type": "tree",
"rules": [
{
"conditions": [],
- "type": "tree",
"rules": [
{
"conditions": [],
@@ -251,16 +245,19 @@
},
"type": "endpoint"
}
- ]
+ ],
+ "type": "tree"
}
- ]
+ ],
+ "type": "tree"
},
{
"conditions": [],
"error": "FIPS is enabled but this partition does not support FIPS",
"type": "error"
}
- ]
+ ],
+ "type": "tree"
},
{
"conditions": [
@@ -274,7 +271,6 @@
]
}
],
- "type": "tree",
"rules": [
{
"conditions": [
@@ -294,11 +290,9 @@
]
}
],
- "type": "tree",
"rules": [
{
"conditions": [],
- "type": "tree",
"rules": [
{
"conditions": [],
@@ -309,20 +303,22 @@
},
"type": "endpoint"
}
- ]
+ ],
+ "type": "tree"
}
- ]
+ ],
+ "type": "tree"
},
{
"conditions": [],
"error": "DualStack is enabled but this partition does not support DualStack",
"type": "error"
}
- ]
+ ],
+ "type": "tree"
},
{
"conditions": [],
- "type": "tree",
"rules": [
{
"conditions": [],
@@ -333,18 +329,22 @@
},
"type": "endpoint"
}
- ]
+ ],
+ "type": "tree"
}
- ]
+ ],
+ "type": "tree"
}
- ]
+ ],
+ "type": "tree"
},
{
"conditions": [],
"error": "Invalid Configuration: Missing Region",
"type": "error"
}
- ]
+ ],
+ "type": "tree"
}
]
}
\ No newline at end of file