diff --git a/.changelog/66854abc82354af4a993a956c1bbea29.json b/.changelog/66854abc82354af4a993a956c1bbea29.json new file mode 100644 index 00000000000..39da26e1563 --- /dev/null +++ b/.changelog/66854abc82354af4a993a956c1bbea29.json @@ -0,0 +1,8 @@ +{ + "id": "66854abc-8235-4af4-a993-a956c1bbea29", + "type": "feature", + "description": "This release adds support for email maximum delivery seconds that allows senders to control the time within which their emails are attempted for delivery.", + "modules": [ + "service/sesv2" + ] +} \ No newline at end of file diff --git a/.changelog/6b12c882adbe4e17bcf0619d57064959.json b/.changelog/6b12c882adbe4e17bcf0619d57064959.json new file mode 100644 index 00000000000..50a71e7dbc2 --- /dev/null +++ b/.changelog/6b12c882adbe4e17bcf0619d57064959.json @@ -0,0 +1,8 @@ +{ + "id": "6b12c882-adbe-4e17-bcf0-619d57064959", + "type": "feature", + "description": "Enable proxy for reserved capacity fleet.", + "modules": [ + "service/codebuild" + ] +} \ No newline at end of file diff --git a/.changelog/844e583e4e174484ac017e4f6dc22437.json b/.changelog/844e583e4e174484ac017e4f6dc22437.json new file mode 100644 index 00000000000..b7a8f8f485f --- /dev/null +++ b/.changelog/844e583e4e174484ac017e4f6dc22437.json @@ -0,0 +1,8 @@ +{ + "id": "844e583e-4e17-4484-ac01-7e4f6dc22437", + "type": "documentation", + "description": "Documentation update for AWS CloudFormation API Reference.", + "modules": [ + "service/cloudformation" + ] +} \ No newline at end of file diff --git a/.changelog/9894a254a3f843a58a96cf26c950efc0.json b/.changelog/9894a254a3f843a58a96cf26c950efc0.json new file mode 100644 index 00000000000..4976d54eac4 --- /dev/null +++ b/.changelog/9894a254a3f843a58a96cf26c950efc0.json @@ -0,0 +1,8 @@ +{ + "id": "9894a254-a3f8-43a5-8a96-cf26c950efc0", + "type": "feature", + "description": "AWS Resilience Hub now integrates with the myApplications platform, enabling customers to easily assess the resilience of applications defined in myApplications. The new Resiliency widget provides visibility into application resilience and actionable recommendations for improvement.", + "modules": [ + "service/resiliencehub" + ] +} \ No newline at end of file diff --git a/.changelog/9a70dc0073cd4b83ae1d1fa31f852972.json b/.changelog/9a70dc0073cd4b83ae1d1fa31f852972.json new file mode 100644 index 00000000000..fbecd52fb54 --- /dev/null +++ b/.changelog/9a70dc0073cd4b83ae1d1fa31f852972.json @@ -0,0 +1,8 @@ +{ + "id": "9a70dc00-73cd-4b83-ae1d-1fa31f852972", + "type": "feature", + "description": "On a channel that you own, you can now replace an ongoing stream with a new stream by streaming up with the priority parameter appended to the stream key.", + "modules": [ + "service/ivs" + ] +} \ No newline at end of file diff --git a/.changelog/b16bf3e4219849b49aeffccd078c4c77.json b/.changelog/b16bf3e4219849b49aeffccd078c4c77.json new file mode 100644 index 00000000000..9f9dd08e7f3 --- /dev/null +++ b/.changelog/b16bf3e4219849b49aeffccd078c4c77.json @@ -0,0 +1,8 @@ +{ + "id": "b16bf3e4-2198-49b4-9aef-fccd078c4c77", + "type": "feature", + "description": "Added sourceUrlType field to StartDeployment request", + "modules": [ + "service/amplify" + ] +} \ No newline at end of file diff --git a/.changelog/d8c84bb3bd114118bb319089c6a14b89.json b/.changelog/d8c84bb3bd114118bb319089c6a14b89.json new file mode 100644 index 00000000000..23c57e41e50 --- /dev/null +++ b/.changelog/d8c84bb3bd114118bb319089c6a14b89.json @@ -0,0 +1,8 @@ +{ + "id": "d8c84bb3-bd11-4118-bb31-9089c6a14b89", + "type": "feature", + "description": "Amazon Q Business now supports embedding the Amazon Q Business web experience on third-party websites.", + "modules": [ + "service/qbusiness" + ] +} \ No newline at end of file diff --git a/.changelog/eff05dfe4ecc40108354244d723a8772.json b/.changelog/eff05dfe4ecc40108354244d723a8772.json new file mode 100644 index 00000000000..aa0bc87ea03 --- /dev/null +++ b/.changelog/eff05dfe4ecc40108354244d723a8772.json @@ -0,0 +1,8 @@ +{ + "id": "eff05dfe-4ecc-4010-8354-244d723a8772", + "type": "feature", + "description": "We are expanding support for 40 new locales in AWS Transcribe Streaming.", + "modules": [ + "service/transcribestreaming" + ] +} \ No newline at end of file diff --git a/.changelog/f2aa80a6d2de45ec8b3a28b42fa4a249.json b/.changelog/f2aa80a6d2de45ec8b3a28b42fa4a249.json new file mode 100644 index 00000000000..48e7b714395 --- /dev/null +++ b/.changelog/f2aa80a6d2de45ec8b3a28b42fa4a249.json @@ -0,0 +1,8 @@ +{ + "id": "f2aa80a6-d2de-45ec-8b3a-28b42fa4a249", + "type": "feature", + "description": "This release launches the CreateIntegration, DeleteIntegration, DescribeIntegrations and ModifyIntegration APIs to create and manage Amazon Redshift Zero-ETL Integrations.", + "modules": [ + "service/redshift" + ] +} \ No newline at end of file diff --git a/feature/dynamodbstreams/attributevalue/go_module_metadata.go b/feature/dynamodbstreams/attributevalue/go_module_metadata.go index 4c3b125da45..7a98a199477 100644 --- a/feature/dynamodbstreams/attributevalue/go_module_metadata.go +++ b/feature/dynamodbstreams/attributevalue/go_module_metadata.go @@ -3,4 +3,4 @@ package attributevalue // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.14.34" +const goModuleVersion = "1.15.12" diff --git a/service/amplify/api_op_CreateDeployment.go b/service/amplify/api_op_CreateDeployment.go index c9bbabcd11b..8e1aff92ebd 100644 --- a/service/amplify/api_op_CreateDeployment.go +++ b/service/amplify/api_op_CreateDeployment.go @@ -11,7 +11,7 @@ import ( ) // Creates a deployment for a manually deployed Amplify app. Manually deployed -// apps are not connected to a repository. +// apps are not connected to a Git repository. // // The maximum duration between the CreateDeployment call and the StartDeployment // call cannot exceed 8 hours. If the duration exceeds 8 hours, the StartDeployment diff --git a/service/amplify/api_op_StartDeployment.go b/service/amplify/api_op_StartDeployment.go index d9c50d513a5..9a33d46e760 100644 --- a/service/amplify/api_op_StartDeployment.go +++ b/service/amplify/api_op_StartDeployment.go @@ -12,7 +12,7 @@ import ( ) // Starts a deployment for a manually deployed app. Manually deployed apps are not -// connected to a repository. +// connected to a Git repository. // // The maximum duration between the CreateDeployment call and the StartDeployment // call cannot exceed 8 hours. If the duration exceeds 8 hours, the StartDeployment @@ -40,19 +40,26 @@ type StartDeploymentInput struct { // This member is required. AppId *string - // The name of the branch to use for the job. + // The name of the branch to use for the deployment job. // // This member is required. BranchName *string - // The job ID for this deployment, generated by the create deployment request. + // The job ID for this deployment that is generated by the CreateDeployment + // request. JobId *string - // The source URL for this deployment, used when calling start deployment without - // create deployment. The source URL can be any HTTP GET URL that is publicly - // accessible and downloads a single .zip file. + // The source URL for the deployment that is used when calling StartDeployment + // without CreateDeployment . The source URL can be either an HTTP GET URL that is + // publicly accessible and downloads a single .zip file, or an Amazon S3 bucket and + // prefix. SourceUrl *string + // The type of source specified by the sourceURL . If the value is ZIP , the source + // is a .zip file. If the value is BUCKET_PREFIX , the source is an Amazon S3 + // bucket and prefix. If no value is specified, the default is ZIP . + SourceUrlType types.SourceUrlType + noSmithyDocumentSerde } diff --git a/service/amplify/deserializers.go b/service/amplify/deserializers.go index 3a2b9c57a71..4bd3ffc58fa 100644 --- a/service/amplify/deserializers.go +++ b/service/amplify/deserializers.go @@ -8077,6 +8077,24 @@ func awsRestjson1_deserializeDocumentJobSummary(v **types.JobSummary, value inte sv.JobType = types.JobType(jtv) } + case "sourceUrl": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected SourceUrl to be of type string, got %T instead", value) + } + sv.SourceUrl = ptr.String(jtv) + } + + case "sourceUrlType": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected SourceUrlType to be of type string, got %T instead", value) + } + sv.SourceUrlType = types.SourceUrlType(jtv) + } + case "startTime": if value != nil { switch jtv := value.(type) { diff --git a/service/amplify/serializers.go b/service/amplify/serializers.go index 808b887a003..291796b324f 100644 --- a/service/amplify/serializers.go +++ b/service/amplify/serializers.go @@ -2690,6 +2690,11 @@ func awsRestjson1_serializeOpDocumentStartDeploymentInput(v *StartDeploymentInpu ok.String(*v.SourceUrl) } + if len(v.SourceUrlType) > 0 { + ok := object.Key("sourceUrlType") + ok.String(string(v.SourceUrlType)) + } + return nil } diff --git a/service/amplify/types/enums.go b/service/amplify/types/enums.go index f14f9d7c1eb..9c46ba90273 100644 --- a/service/amplify/types/enums.go +++ b/service/amplify/types/enums.go @@ -169,6 +169,25 @@ func (RepositoryCloneMethod) Values() []RepositoryCloneMethod { } } +type SourceUrlType string + +// Enum values for SourceUrlType +const ( + SourceUrlTypeZip SourceUrlType = "ZIP" + SourceUrlTypeBucketPrefix SourceUrlType = "BUCKET_PREFIX" +) + +// Values returns all known values for SourceUrlType. Note that this can be +// expanded in the future, and so it is only as up to date as the client. +// +// The ordering of this slice is not guaranteed to be stable across updates. +func (SourceUrlType) Values() []SourceUrlType { + return []SourceUrlType{ + "ZIP", + "BUCKET_PREFIX", + } +} + type Stage string // Enum values for Stage diff --git a/service/amplify/types/types.go b/service/amplify/types/types.go index 4d62929bb50..80b770e3984 100644 --- a/service/amplify/types/types.go +++ b/service/amplify/types/types.go @@ -630,9 +630,13 @@ type JobSummary struct { JobId *string // The type for the job. If the value is RELEASE , the job was manually released - // from its source by using the StartJob API. If the value is RETRY , the job was - // manually retried using the StartJob API. If the value is WEB_HOOK , the job was - // automatically triggered by webhooks. + // from its source by using the StartJob API. This value is available only for + // apps that are connected to a repository. + // + // If the value is RETRY , the job was manually retried using the StartJob API. If + // the value is WEB_HOOK , the job was automatically triggered by webhooks. If the + // value is MANUAL , the job is for a manually deployed app. Manually deployed apps + // are not connected to a Git repository. // // This member is required. JobType JobType @@ -650,6 +654,16 @@ type JobSummary struct { // The end date and time for the job. EndTime *time.Time + // The source URL for the files to deploy. The source URL can be either an HTTP + // GET URL that is publicly accessible and downloads a single .zip file, or an + // Amazon S3 bucket and prefix. + SourceUrl *string + + // The type of source specified by the sourceURL . If the value is ZIP , the source + // is a .zip file. If the value is BUCKET_PREFIX , the source is an Amazon S3 + // bucket and prefix. If no value is specified, the default is ZIP . + SourceUrlType SourceUrlType + noSmithyDocumentSerde } diff --git a/service/cloudformation/api_op_ActivateType.go b/service/cloudformation/api_op_ActivateType.go index c26fae2ef98..0a37c39a364 100644 --- a/service/cloudformation/api_op_ActivateType.go +++ b/service/cloudformation/api_op_ActivateType.go @@ -12,15 +12,12 @@ import ( ) // Activates a public third-party extension, making it available for use in stack -// templates. For more information, see [Using public extensions]in the CloudFormation User Guide. -// -// Once you have activated a public third-party extension in your account and -// Region, use [SetTypeConfiguration]to specify configuration properties for the extension. For more -// information, see [Configuring extensions at the account level]in the CloudFormation User Guide. +// templates. Once you have activated a public third-party extension in your +// account and Region, use [SetTypeConfiguration]to specify configuration properties for the extension. +// For more information, see [Using public extensions]in the CloudFormation User Guide. // // [SetTypeConfiguration]: https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_SetTypeConfiguration.html // [Using public extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html -// [Configuring extensions at the account level]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-private.html#registry-set-configuration func (c *Client) ActivateType(ctx context.Context, params *ActivateTypeInput, optFns ...func(*Options)) (*ActivateTypeOutput, error) { if params == nil { params = &ActivateTypeInput{} diff --git a/service/cloudformation/api_op_BatchDescribeTypeConfigurations.go b/service/cloudformation/api_op_BatchDescribeTypeConfigurations.go index 0a511ac615f..cba0014d0a1 100644 --- a/service/cloudformation/api_op_BatchDescribeTypeConfigurations.go +++ b/service/cloudformation/api_op_BatchDescribeTypeConfigurations.go @@ -14,9 +14,9 @@ import ( // Returns configuration data for the specified CloudFormation extensions, from // the CloudFormation registry for the account and Region. // -// For more information, see [Configuring extensions at the account level] in the CloudFormation User Guide. +// For more information, see [Edit configuration data for extensions in your account] in the CloudFormation User Guide. // -// [Configuring extensions at the account level]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-private.html#registry-set-configuration +// [Edit configuration data for extensions in your account]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-set-configuration.html func (c *Client) BatchDescribeTypeConfigurations(ctx context.Context, params *BatchDescribeTypeConfigurationsInput, optFns ...func(*Options)) (*BatchDescribeTypeConfigurationsOutput, error) { if params == nil { params = &BatchDescribeTypeConfigurationsInput{} diff --git a/service/cloudformation/api_op_ContinueUpdateRollback.go b/service/cloudformation/api_op_ContinueUpdateRollback.go index 2f8f9e2e87c..aeace9ad137 100644 --- a/service/cloudformation/api_op_ContinueUpdateRollback.go +++ b/service/cloudformation/api_op_ContinueUpdateRollback.go @@ -86,18 +86,18 @@ type ContinueUpdateRollbackInput struct { // // Don't confuse a child stack's name with its corresponding logical ID defined in // the parent stack. For an example of a continue update rollback operation with - // nested stacks, see [Using ResourcesToSkip to recover a nested stacks hierarchy]. + // nested stacks, see [Continue rolling back from failed nested stack updates]. // // [troubleshoot]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-update-rollback-failed - // [Using ResourcesToSkip to recover a nested stacks hierarchy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-continueupdaterollback.html#nested-stacks + // [Continue rolling back from failed nested stack updates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-continueupdaterollback.html#nested-stacks ResourcesToSkip []string - // The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role - // that CloudFormation assumes to roll back the stack. CloudFormation uses the - // role's credentials to make calls on your behalf. CloudFormation always uses this - // role for all future operations on the stack. Provided that users have permission - // to operate on the stack, CloudFormation uses this role even if the users don't - // have permission to pass it. Ensure that the role grants least permission. + // The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to + // roll back the stack. CloudFormation uses the role's credentials to make calls on + // your behalf. CloudFormation always uses this role for all future operations on + // the stack. Provided that users have permission to operate on the stack, + // CloudFormation uses this role even if the users don't have permission to pass + // it. Ensure that the role grants least permission. // // If you don't specify a value, CloudFormation uses the role that was previously // associated with the stack. If no role is available, CloudFormation uses a diff --git a/service/cloudformation/api_op_CreateChangeSet.go b/service/cloudformation/api_op_CreateChangeSet.go index 59b6743634a..143357e1628 100644 --- a/service/cloudformation/api_op_CreateChangeSet.go +++ b/service/cloudformation/api_op_CreateChangeSet.go @@ -77,9 +77,9 @@ type CreateChangeSetInput struct { // - CAPABILITY_IAM and CAPABILITY_NAMED_IAM // // Some stack templates might include resources that can affect permissions in - // your Amazon Web Services account; for example, by creating new Identity and - // Access Management (IAM) users. For those stacks, you must explicitly acknowledge - // this by specifying one of these capabilities. + // your Amazon Web Services account; for example, by creating new IAM users. For + // those stacks, you must explicitly acknowledge this by specifying one of these + // capabilities. // // The following IAM resources require you to specify either the CAPABILITY_IAM or // CAPABILITY_NAMED_IAM capability. @@ -130,20 +130,20 @@ type CreateChangeSetInput struct { // nested stacks, you must create or update the stack directly from the template // using the CreateStackor UpdateStackaction, and specifying this capability. // - // For more information about macros, see [Using CloudFormation macros to perform custom processing on templates]. + // For more information about macros, see [Perform custom processing on CloudFormation templates with template macros]. // // Only one of the Capabilities and ResourceType parameters can be specified. // - // [AWS::IAM::AccessKey]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html + // [AWS::IAM::AccessKey]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html // [AWS::Include]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html - // [AWS::IAM::User]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html + // [AWS::IAM::User]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html // [AWS::IAM::InstanceProfile]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html - // [Acknowledging IAM resources in CloudFormation templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities - // [AWS::IAM::Policy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html - // [AWS::IAM::Group]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html - // [AWS::IAM::UserToGroupAddition]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html + // [Acknowledging IAM resources in CloudFormation templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities + // [Perform custom processing on CloudFormation templates with template macros]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html + // [AWS::IAM::Policy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html + // [AWS::IAM::Group]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html + // [AWS::IAM::UserToGroupAddition]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html // [AWS::IAM::Role]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html - // [Using CloudFormation macros to perform custom processing on templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html // [AWS::Serverless]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html Capabilities []types.Capability @@ -152,14 +152,12 @@ type CreateChangeSetInput struct { // To create a change set for an import operation, specify IMPORT . // // If you create a change set for a new stack, CloudFormation creates a stack with - // a unique stack ID, but no template or resources. The stack will be in the [REVIEW_IN_PROGRESS]state - // until you execute the change set. + // a unique stack ID, but no template or resources. The stack will be in the + // REVIEW_IN_PROGRESS state until you execute the change set. // // By default, CloudFormation specifies UPDATE . You can't use the UPDATE type to // create a change set for a new stack or the CREATE type to create a change set // for an existing stack. - // - // [REVIEW_IN_PROGRESS]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-describing-stacks.html#d0e11995 ChangeSetType types.ChangeSetType // A unique identifier for this CreateChangeSet request. Specify this token if you @@ -176,9 +174,9 @@ type CreateChangeSetInput struct { // This parameter can only import resources that have custom names in templates. // For more information, see [name type]in the CloudFormation User Guide. To import resources // that do not accept custom names, such as EC2 instances, use the resource import - // feature instead. For more information, see [Bringing existing resources into CloudFormation management]in the CloudFormation User Guide. + // feature instead. For more information, see [Import Amazon Web Services resources into a CloudFormation stack with a resource import]in the CloudFormation User Guide. // - // [Bringing existing resources into CloudFormation management]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import.html + // [Import Amazon Web Services resources into a CloudFormation stack with a resource import]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import.html // [name type]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html ImportExistingResources *bool @@ -187,9 +185,9 @@ type CreateChangeSetInput struct { // change set, specify True . IncludeNestedStacks *bool - // The Amazon Resource Names (ARNs) of Amazon Simple Notification Service (Amazon - // SNS) topics that CloudFormation associates with the stack. To remove all - // associated notification topics, specify an empty list. + // The Amazon Resource Names (ARNs) of Amazon SNS topics that CloudFormation + // associates with the stack. To remove all associated notification topics, specify + // an empty list. NotificationARNs []string // Determines what action will be taken if stack creation fails. If this parameter @@ -224,24 +222,24 @@ type CreateChangeSetInput struct { // // If the list of resource types doesn't include a resource type that you're // updating, the stack update fails. By default, CloudFormation grants permissions - // to all resource types. Identity and Access Management (IAM) uses this parameter - // for condition keys in IAM policies for CloudFormation. For more information, see - // [Controlling access with Identity and Access Management]in the CloudFormation User Guide. + // to all resource types. IAM uses this parameter for condition keys in IAM + // policies for CloudFormation. For more information, see [Control access with Identity and Access Management]in the CloudFormation + // User Guide. // // Only one of the Capabilities and ResourceType parameters can be specified. // - // [Controlling access with Identity and Access Management]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html + // [Control access with Identity and Access Management]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html ResourceTypes []string // The resources to import into your stack. ResourcesToImport []types.ResourceToImport - // The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role - // that CloudFormation assumes when executing the change set. CloudFormation uses - // the role's credentials to make calls on your behalf. CloudFormation uses this - // role for all future operations on the stack. Provided that users have permission - // to operate on the stack, CloudFormation uses this role even if the users don't - // have permission to pass it. Ensure that the role grants least permission. + // The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes when + // executing the change set. CloudFormation uses the role's credentials to make + // calls on your behalf. CloudFormation uses this role for all future operations on + // the stack. Provided that users have permission to operate on the stack, + // CloudFormation uses this role even if the users don't have permission to pass + // it. Ensure that the role grants least permission. // // If you don't specify a value, CloudFormation uses the role that was previously // associated with the stack. If no role is available, CloudFormation uses a diff --git a/service/cloudformation/api_op_CreateStack.go b/service/cloudformation/api_op_CreateStack.go index 508999d0950..7d406f7aac8 100644 --- a/service/cloudformation/api_op_CreateStack.go +++ b/service/cloudformation/api_op_CreateStack.go @@ -14,6 +14,11 @@ import ( // Creates a stack as specified in the template. After the call completes // successfully, the stack creation starts. You can check the status of the stack // through the DescribeStacksoperation. +// +// For more information about creating a stack and monitoring stack progress, see [Managing Amazon Web Services resources as a single unit with CloudFormation stacks] +// in the CloudFormation User Guide. +// +// [Managing Amazon Web Services resources as a single unit with CloudFormation stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacks.html func (c *Client) CreateStack(ctx context.Context, params *CreateStackInput, optFns ...func(*Options)) (*CreateStackOutput, error) { if params == nil { params = &CreateStackInput{} @@ -48,9 +53,9 @@ type CreateStackInput struct { // - CAPABILITY_IAM and CAPABILITY_NAMED_IAM // // Some stack templates might include resources that can affect permissions in - // your Amazon Web Services account; for example, by creating new Identity and - // Access Management (IAM) users. For those stacks, you must explicitly acknowledge - // this by specifying one of these capabilities. + // your Amazon Web Services account; for example, by creating new IAM users. For + // those stacks, you must explicitly acknowledge this by specifying one of these + // capabilities. // // The following IAM resources require you to specify either the CAPABILITY_IAM or // CAPABILITY_NAMED_IAM capability. @@ -80,7 +85,7 @@ type CreateStackInput struct { // // [AWS::IAM::UserToGroupAddition] // - // For more information, see [Acknowledging IAM Resources in CloudFormation Templates]. + // For more information, see [Acknowledging IAM resources in CloudFormation templates]. // // - CAPABILITY_AUTO_EXPAND // @@ -105,21 +110,21 @@ type CreateStackInput struct { // templates. Be aware that the Lambda function owner can update the function // operation without CloudFormation being notified. // - // For more information, see [Using CloudFormation macros to perform custom processing on templates]. + // For more information, see [Perform custom processing on CloudFormation templates with template macros]. // // Only one of the Capabilities and ResourceType parameters can be specified. // - // [AWS::IAM::AccessKey]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html + // [AWS::IAM::AccessKey]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html // [AWS::Include]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html - // [AWS::IAM::User]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html + // [AWS::IAM::User]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html // [AWS::IAM::InstanceProfile]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html - // [AWS::IAM::Policy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html - // [AWS::IAM::Group]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html - // [AWS::IAM::UserToGroupAddition]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html + // [Acknowledging IAM resources in CloudFormation templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities + // [Perform custom processing on CloudFormation templates with template macros]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html + // [AWS::IAM::Policy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html + // [AWS::IAM::Group]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html + // [AWS::IAM::UserToGroupAddition]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html // [AWS::IAM::Role]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html - // [Using CloudFormation macros to perform custom processing on templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html // [AWS::Serverless]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html - // [Acknowledging IAM Resources in CloudFormation Templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities Capabilities []types.Capability // A unique identifier for this CreateStack request. Specify this token if you @@ -148,20 +153,20 @@ type CreateStackInput struct { // Whether to enable termination protection on the specified stack. If a user // attempts to delete a stack with termination protection enabled, the operation - // fails and the stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted]in the + // fails and the stack remains unchanged. For more information, see [Protect CloudFormation stacks from being deleted]in the // CloudFormation User Guide. Termination protection is deactivated on stacks by // default. // // For [nested stacks], termination protection is set on the root stack and can't be changed // directly on the nested stack. // - // [Protecting a Stack From Being Deleted]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html + // [Protect CloudFormation stacks from being deleted]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html // [nested stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html EnableTerminationProtection *bool - // The Amazon Simple Notification Service (Amazon SNS) topic ARNs to publish stack - // related events. You can find your Amazon SNS topic ARNs using the Amazon SNS - // console or your Command Line Interface (CLI). + // The Amazon SNS topic ARNs to publish stack related events. You can find your + // Amazon SNS topic ARNs using the Amazon SNS console or your Command Line + // Interface (CLI). NotificationARNs []string // Determines what action will be taken if stack creation fails. This must be one @@ -188,13 +193,12 @@ type CreateStackInput struct { // // If the list of resource types doesn't include a resource that you're creating, // the stack creation fails. By default, CloudFormation grants permissions to all - // resource types. Identity and Access Management (IAM) uses this parameter for - // CloudFormation-specific condition keys in IAM policies. For more information, - // see [Controlling Access with Identity and Access Management]. + // resource types. IAM uses this parameter for CloudFormation-specific condition + // keys in IAM policies. For more information, see [Control access with Identity and Access Management]. // // Only one of the Capabilities and ResourceType parameters can be specified. // - // [Controlling Access with Identity and Access Management]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html + // [Control access with Identity and Access Management]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html ResourceTypes []string // When set to true , newly created resources are deleted when the operation rolls @@ -204,12 +208,12 @@ type CreateStackInput struct { // Default: false RetainExceptOnCreate *bool - // The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role - // that CloudFormation assumes to create the stack. CloudFormation uses the role's - // credentials to make calls on your behalf. CloudFormation always uses this role - // for all future operations on the stack. Provided that users have permission to - // operate on the stack, CloudFormation uses this role even if the users don't have - // permission to pass it. Ensure that the role grants least privilege. + // The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to + // create the stack. CloudFormation uses the role's credentials to make calls on + // your behalf. CloudFormation always uses this role for all future operations on + // the stack. Provided that users have permission to operate on the stack, + // CloudFormation uses this role even if the users don't have permission to pass + // it. Ensure that the role grants least privilege. // // If you don't specify a value, CloudFormation uses the role that was previously // associated with the stack. If no role is available, CloudFormation uses a @@ -220,11 +224,11 @@ type CreateStackInput struct { // updating operations, and for the specified monitoring period afterwards. RollbackConfiguration *types.RollbackConfiguration - // Structure containing the stack policy body. For more information, go to [Prevent Updates to Stack Resources] in the + // Structure containing the stack policy body. For more information, see [Prevent updates to stack resources] in the // CloudFormation User Guide. You can specify either the StackPolicyBody or the // StackPolicyURL parameter, but not both. // - // [Prevent Updates to Stack Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html + // [Prevent updates to stack resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html StackPolicyBody *string // Location of a file containing the stack policy. The URL must point to a policy @@ -239,24 +243,18 @@ type CreateStackInput struct { Tags []types.Tag // Structure containing the template body with a minimum length of 1 byte and a - // maximum length of 51,200 bytes. For more information, go to [Template anatomy]in the - // CloudFormation User Guide. + // maximum length of 51,200 bytes. // // Conditional: You must specify either the TemplateBody or the TemplateURL // parameter, but not both. - // - // [Template anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateBody *string // Location of file containing the template body. The URL must point to a template // (max size: 460,800 bytes) that's located in an Amazon S3 bucket or a Systems - // Manager document. For more information, go to the [Template anatomy]in the CloudFormation User - // Guide. The location for an Amazon S3 bucket must start with https:// . + // Manager document. The location for an Amazon S3 bucket must start with https:// . // // Conditional: You must specify either the TemplateBody or the TemplateURL // parameter, but not both. - // - // [Template anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateURL *string // The amount of time that can pass before the stack status becomes CREATE_FAILED ; diff --git a/service/cloudformation/api_op_CreateStackSet.go b/service/cloudformation/api_op_CreateStackSet.go index 1ef99ac9214..7bad466c624 100644 --- a/service/cloudformation/api_op_CreateStackSet.go +++ b/service/cloudformation/api_op_CreateStackSet.go @@ -84,9 +84,9 @@ type CreateStackSetInput struct { // - CAPABILITY_IAM and CAPABILITY_NAMED_IAM // // Some stack templates might include resources that can affect permissions in - // your Amazon Web Services account; for example, by creating new Identity and - // Access Management (IAM) users. For those stack sets, you must explicitly - // acknowledge this by specifying one of these capabilities. + // your Amazon Web Services account; for example, by creating new IAM users. For + // those stack sets, you must explicitly acknowledge this by specifying one of + // these capabilities. // // The following IAM resources require you to specify either the CAPABILITY_IAM or // CAPABILITY_NAMED_IAM capability. @@ -116,7 +116,7 @@ type CreateStackSetInput struct { // // [AWS::IAM::UserToGroupAddition] // - // For more information, see [Acknowledging IAM Resources in CloudFormation Templates]. + // For more information, see [Acknowledging IAM resources in CloudFormation templates]. // // - CAPABILITY_AUTO_EXPAND // @@ -132,17 +132,17 @@ type CreateStackSetInput struct { // with service-managed permissions, if you reference a macro in your template the // stack set operation will fail. // - // [AWS::IAM::AccessKey]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html + // [AWS::IAM::AccessKey]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html // [AWS::Include]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html - // [AWS::IAM::User]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html + // [AWS::IAM::User]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html // [AWS::IAM::InstanceProfile]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html - // [AWS::IAM::Policy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html - // [AWS::IAM::Group]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html - // [AWS::IAM::UserToGroupAddition]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html + // [Acknowledging IAM resources in CloudFormation templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities + // [AWS::IAM::Policy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html + // [AWS::IAM::Group]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html + // [AWS::IAM::UserToGroupAddition]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html // [AWS::IAM::Role]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html // [Using CloudFormation Macros to Perform Custom Processing on Templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html // [AWS::Serverless]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html - // [Acknowledging IAM Resources in CloudFormation Templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities Capabilities []types.Capability // A unique identifier for this CreateStackSet request. Specify this token if you @@ -202,24 +202,18 @@ type CreateStackSetInput struct { Tags []types.Tag // The structure that contains the template body, with a minimum length of 1 byte - // and a maximum length of 51,200 bytes. For more information, see [Template Anatomy]in the - // CloudFormation User Guide. + // and a maximum length of 51,200 bytes. // // Conditional: You must specify either the TemplateBody or the TemplateURL // parameter, but not both. - // - // [Template Anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateBody *string // The location of the file that contains the template body. The URL must point to // a template (maximum size: 460,800 bytes) that's located in an Amazon S3 bucket - // or a Systems Manager document. For more information, see [Template Anatomy]in the CloudFormation - // User Guide. + // or a Systems Manager document. // // Conditional: You must specify either the TemplateBody or the TemplateURL // parameter, but not both. - // - // [Template Anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateURL *string noSmithyDocumentSerde diff --git a/service/cloudformation/api_op_DeleteStack.go b/service/cloudformation/api_op_DeleteStack.go index 5b977829613..fb70b8d9af3 100644 --- a/service/cloudformation/api_op_DeleteStack.go +++ b/service/cloudformation/api_op_DeleteStack.go @@ -14,6 +14,11 @@ import ( // Deletes a specified stack. Once the call completes successfully, stack deletion // starts. Deleted stacks don't show up in the DescribeStacksoperation if the deletion has been // completed successfully. +// +// For more information about deleting a stack, see [Delete a stack from the CloudFormation console] in the CloudFormation User +// Guide. +// +// [Delete a stack from the CloudFormation console]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-delete-stack.html func (c *Client) DeleteStack(ctx context.Context, params *DeleteStackInput, optFns ...func(*Options)) (*DeleteStackOutput, error) { if params == nil { params = &DeleteStackInput{} @@ -72,9 +77,9 @@ type DeleteStackInput struct { // non-empty S3 bucket, but you want to delete the stack. RetainResources []string - // The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role - // that CloudFormation assumes to delete the stack. CloudFormation uses the role's - // credentials to make calls on your behalf. + // The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to + // delete the stack. CloudFormation uses the role's credentials to make calls on + // your behalf. // // If you don't specify a value, CloudFormation uses the role that was previously // associated with the stack. If no role is available, CloudFormation uses a diff --git a/service/cloudformation/api_op_DeleteStackInstances.go b/service/cloudformation/api_op_DeleteStackInstances.go index f910d3301c5..2d9ca3583ae 100644 --- a/service/cloudformation/api_op_DeleteStackInstances.go +++ b/service/cloudformation/api_op_DeleteStackInstances.go @@ -41,7 +41,7 @@ type DeleteStackInstancesInput struct { // // For more information, see [Stack set operation options]. // - // [Stack set operation options]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options + // [Stack set operation options]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html#stackset-ops-options // // This member is required. RetainStacks *bool diff --git a/service/cloudformation/api_op_DescribeAccountLimits.go b/service/cloudformation/api_op_DescribeAccountLimits.go index 53a1c5a3a58..ba10e26879b 100644 --- a/service/cloudformation/api_op_DescribeAccountLimits.go +++ b/service/cloudformation/api_op_DescribeAccountLimits.go @@ -13,9 +13,9 @@ import ( // Retrieves your account's CloudFormation limits, such as the maximum number of // stacks that you can create in your account. For more information about account -// limits, see [CloudFormation Quotas]in the CloudFormation User Guide. +// limits, see [Understand CloudFormation quotas]in the CloudFormation User Guide. // -// [CloudFormation Quotas]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-limits.html +// [Understand CloudFormation quotas]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-limits.html func (c *Client) DescribeAccountLimits(ctx context.Context, params *DescribeAccountLimitsInput, optFns ...func(*Options)) (*DescribeAccountLimitsOutput, error) { if params == nil { params = &DescribeAccountLimitsInput{} diff --git a/service/cloudformation/api_op_DescribeChangeSet.go b/service/cloudformation/api_op_DescribeChangeSet.go index c4df24e6b87..c8178947ed1 100644 --- a/service/cloudformation/api_op_DescribeChangeSet.go +++ b/service/cloudformation/api_op_DescribeChangeSet.go @@ -18,10 +18,10 @@ import ( ) // Returns the inputs for the change set and a list of changes that CloudFormation -// will make if you execute the change set. For more information, see [Updating Stacks Using Change Sets]in the +// will make if you execute the change set. For more information, see [Update CloudFormation stacks using change sets]in the // CloudFormation User Guide. // -// [Updating Stacks Using Change Sets]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets.html +// [Update CloudFormation stacks using change sets]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets.html func (c *Client) DescribeChangeSet(ctx context.Context, params *DescribeChangeSetInput, optFns ...func(*Options)) (*DescribeChangeSetOutput, error) { if params == nil { params = &DescribeChangeSetInput{} @@ -106,8 +106,8 @@ type DescribeChangeSetOutput struct { // If there is no additional page, this value is null. NextToken *string - // The ARNs of the Amazon Simple Notification Service (Amazon SNS) topics that - // will be associated with the stack if you execute the change set. + // The ARNs of the Amazon SNS topics that will be associated with the stack if you + // execute the change set. NotificationARNs []string // Determines what action will be taken if stack creation fails. When this diff --git a/service/cloudformation/api_op_DescribePublisher.go b/service/cloudformation/api_op_DescribePublisher.go index ab9f5e4515b..46ec89a6223 100644 --- a/service/cloudformation/api_op_DescribePublisher.go +++ b/service/cloudformation/api_op_DescribePublisher.go @@ -22,7 +22,7 @@ import ( // [RegisterPublisher] // // [Publishing extensions to make them available for public use] -// - in the CloudFormation CLI User Guide +// - in the CloudFormation Command Line Interface (CLI) User Guide // // [Publishing extensions to make them available for public use]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html // [RegisterPublisher]: https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_RegisterPublisher.html diff --git a/service/cloudformation/api_op_DescribeResourceScan.go b/service/cloudformation/api_op_DescribeResourceScan.go index ab349371d33..db5071f8cb2 100644 --- a/service/cloudformation/api_op_DescribeResourceScan.go +++ b/service/cloudformation/api_op_DescribeResourceScan.go @@ -73,13 +73,21 @@ type DescribeResourceScanOutput struct { // Status of the resource scan. // - // INPROGRESS The resource scan is still in progress. + // INPROGRESS // - // COMPLETE The resource scan is complete. + // The resource scan is still in progress. // - // EXPIRED The resource scan has expired. + // COMPLETE // - // FAILED The resource scan has failed. + // The resource scan is complete. + // + // EXPIRED + // + // The resource scan has expired. + // + // FAILED + // + // The resource scan has failed. Status types.ResourceScanStatus // The reason for the resource scan status, providing more information if a diff --git a/service/cloudformation/api_op_DescribeStackDriftDetectionStatus.go b/service/cloudformation/api_op_DescribeStackDriftDetectionStatus.go index d51b4334f18..b0fa8ed414b 100644 --- a/service/cloudformation/api_op_DescribeStackDriftDetectionStatus.go +++ b/service/cloudformation/api_op_DescribeStackDriftDetectionStatus.go @@ -17,14 +17,14 @@ import ( // has drifted, from its expected configuration, as defined in the stack template // and any values specified as template parameters. A stack is considered to have // drifted if one or more of its resources have drifted. For more information about -// stack and resource drift, see [Detecting Unregulated Configuration Changes to Stacks and Resources]. +// stack and resource drift, see [Detect unmanaged configuration changes to stacks and resources with drift detection]. // // Use DetectStackDrift to initiate a stack drift detection operation. DetectStackDrift returns a // StackDriftDetectionId you can use to monitor the progress of the operation using // DescribeStackDriftDetectionStatus . Once the drift detection operation has // completed, use DescribeStackResourceDriftsto return drift information about the stack and its resources. // -// [Detecting Unregulated Configuration Changes to Stacks and Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html +// [Detect unmanaged configuration changes to stacks and resources with drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html func (c *Client) DescribeStackDriftDetectionStatus(ctx context.Context, params *DescribeStackDriftDetectionStatusInput, optFns ...func(*Options)) (*DescribeStackDriftDetectionStatusOutput, error) { if params == nil { params = &DescribeStackDriftDetectionStatusInput{} diff --git a/service/cloudformation/api_op_DescribeStackEvents.go b/service/cloudformation/api_op_DescribeStackEvents.go index 9d727434bbc..4f49cce0221 100644 --- a/service/cloudformation/api_op_DescribeStackEvents.go +++ b/service/cloudformation/api_op_DescribeStackEvents.go @@ -12,13 +12,13 @@ import ( ) // Returns all stack related events for a specified stack in reverse chronological -// order. For more information about a stack's event history, see [CloudFormation stack creation events]in the +// order. For more information about a stack's event history, see [Understand CloudFormation stack creation events]in the // CloudFormation User Guide. // // You can list events for stacks that have failed to create or have been deleted // by specifying the unique stack identifier (stack ID). // -// [CloudFormation stack creation events]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stack-resource-configuration-complete.html +// [Understand CloudFormation stack creation events]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stack-resource-configuration-complete.html func (c *Client) DescribeStackEvents(ctx context.Context, params *DescribeStackEventsInput, optFns ...func(*Options)) (*DescribeStackEventsOutput, error) { if params == nil { params = &DescribeStackEventsInput{} diff --git a/service/cloudformation/api_op_DescribeStackResourceDrifts.go b/service/cloudformation/api_op_DescribeStackResourceDrifts.go index 08a0651e034..ebea6c37698 100644 --- a/service/cloudformation/api_op_DescribeStackResourceDrifts.go +++ b/service/cloudformation/api_op_DescribeStackResourceDrifts.go @@ -19,12 +19,12 @@ import ( // that has been checked for drift. Resources that haven't yet been checked for // drift aren't included. Resources that don't currently support drift detection // aren't checked, and so not included. For a list of resources that support drift -// detection, see [Resources that Support Drift Detection]. +// detection, see [Resource type support for imports and drift detection]. // // Use DetectStackResourceDrift to detect drift on individual resources, or DetectStackDrift to detect drift on all // supported resources for a given stack. // -// [Resources that Support Drift Detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift-resource-list.html +// [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html func (c *Client) DescribeStackResourceDrifts(ctx context.Context, params *DescribeStackResourceDriftsInput, optFns ...func(*Options)) (*DescribeStackResourceDriftsOutput, error) { if params == nil { params = &DescribeStackResourceDriftsInput{} @@ -84,9 +84,9 @@ type DescribeStackResourceDriftsOutput struct { // that has been checked for drift. Resources that haven't yet been checked for // drift aren't included. Resources that do not currently support drift detection // aren't checked, and so not included. For a list of resources that support drift - // detection, see [Resources that Support Drift Detection]. + // detection, see [Resource type support for imports and drift detection]. // - // [Resources that Support Drift Detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift-resource-list.html + // [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html // // This member is required. StackResourceDrifts []types.StackResourceDrift diff --git a/service/cloudformation/api_op_DescribeStackResources.go b/service/cloudformation/api_op_DescribeStackResources.go index e7cbd76c300..1aac488c5f2 100644 --- a/service/cloudformation/api_op_DescribeStackResources.go +++ b/service/cloudformation/api_op_DescribeStackResources.go @@ -25,7 +25,7 @@ import ( // You must specify either StackName or PhysicalResourceId , but not both. In // addition, you can specify LogicalResourceId to filter the returned result. For // more information about resources, the LogicalResourceId and PhysicalResourceId , -// go to the [CloudFormation User Guide]. +// see the [CloudFormation User Guide]. // // A ValidationError is returned if you specify both StackName and // PhysicalResourceId in the same request. diff --git a/service/cloudformation/api_op_DescribeStacks.go b/service/cloudformation/api_op_DescribeStacks.go index 802dd18fbc9..83e4b90e46e 100644 --- a/service/cloudformation/api_op_DescribeStacks.go +++ b/service/cloudformation/api_op_DescribeStacks.go @@ -19,11 +19,11 @@ import ( // Returns the description for the specified stack; if no stack name was // specified, then it returns the description for all the stacks created. For more -// information about a stack's event history, see [CloudFormation stack creation events]in the CloudFormation User Guide. +// information about a stack's event history, see [Understand CloudFormation stack creation events]in the CloudFormation User Guide. // // If the stack doesn't exist, a ValidationError is returned. // -// [CloudFormation stack creation events]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stack-resource-configuration-complete.html +// [Understand CloudFormation stack creation events]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stack-resource-configuration-complete.html func (c *Client) DescribeStacks(ctx context.Context, params *DescribeStacksInput, optFns ...func(*Options)) (*DescribeStacksOutput, error) { if params == nil { params = &DescribeStacksInput{} diff --git a/service/cloudformation/api_op_DescribeType.go b/service/cloudformation/api_op_DescribeType.go index c39f647faa4..2401cf41a2e 100644 --- a/service/cloudformation/api_op_DescribeType.go +++ b/service/cloudformation/api_op_DescribeType.go @@ -77,19 +77,19 @@ type DescribeTypeOutput struct { // Whether CloudFormation automatically updates the extension in this account and // Region when a new minor version is published by the extension publisher. Major // versions released by the publisher must be manually updated. For more - // information, see [Activating public extensions for use in your account]in the CloudFormation User Guide. + // information, see [Automatically use new versions of extensions]in the CloudFormation User Guide. // - // [Activating public extensions for use in your account]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable + // [Automatically use new versions of extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-auto AutoUpdate *bool // A JSON string that represent the current configuration data for the extension // in this account and Region. // - // To set the configuration data for an extension, use [SetTypeConfiguration]. For more information, see [Configuring extensions at the account level] + // To set the configuration data for an extension, use [SetTypeConfiguration]. For more information, see [Edit configuration data for extensions in your account] // in the CloudFormation User Guide. // // [SetTypeConfiguration]: https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_SetTypeConfiguration.html - // [Configuring extensions at the account level]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-private.html#registry-set-configuration + // [Edit configuration data for extensions in your account]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-set-configuration.html ConfigurationSchema *string // The ID of the default version of the extension. The default version is used @@ -188,9 +188,9 @@ type DescribeTypeOutput struct { // If you specified a TypeNameAlias when enabling the extension in this account // and Region, CloudFormation treats that alias as the extension's type name within // the account and Region, not the type name of the public extension. For more - // information, see [Specifying aliases to refer to extensions]in the CloudFormation User Guide. + // information, see [Use aliases to refer to extensions]in the CloudFormation User Guide. // - // [Specifying aliases to refer to extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-alias + // [Use aliases to refer to extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-alias OriginalTypeName *string // For resource type extensions, the provisioning behavior of the resource type. @@ -235,10 +235,10 @@ type DescribeTypeOutput struct { // The schema that defines the extension. // - // For more information about extension schemas, see [Resource Provider Schema] in the CloudFormation CLI - // User Guide. + // For more information about extension schemas, see [Resource type schema] in the CloudFormation + // Command Line Interface (CLI) User Guide. // - // [Resource Provider Schema]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html + // [Resource type schema]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html Schema *string // The URL of the source code for the extension. @@ -271,7 +271,8 @@ type DescribeTypeOutput struct { // - PASSED : The extension has passed all its contract tests. // // An extension must have a test status of PASSED before it can be published. For - // more information, see [Publishing extensions to make them available for public use]in the CloudFormation Command Line Interface User Guide. + // more information, see [Publishing extensions to make them available for public use]in the CloudFormation Command Line Interface (CLI) User + // Guide. // // - FAILED : The extension has failed one or more contract tests. // diff --git a/service/cloudformation/api_op_DetectStackDrift.go b/service/cloudformation/api_op_DetectStackDrift.go index 9800e92ff35..0086e198a0b 100644 --- a/service/cloudformation/api_op_DetectStackDrift.go +++ b/service/cloudformation/api_op_DetectStackDrift.go @@ -17,12 +17,12 @@ import ( // resource with its expected template configuration. Only resource properties // explicitly defined in the stack template are checked for drift. A stack is // considered to have drifted if one or more of its resources differ from their -// expected template configurations. For more information, see [Detecting Unregulated Configuration Changes to Stacks and Resources]. +// expected template configurations. For more information, see [Detect unmanaged configuration changes to stacks and resources with drift detection]. // // Use DetectStackDrift to detect drift on all supported resources for a given // stack, or DetectStackResourceDriftto detect drift on individual resources. // -// For a list of stack resources that currently support drift detection, see [Resources that Support Drift Detection]. +// For a list of stack resources that currently support drift detection, see [Resource type support for imports and drift detection]. // // DetectStackDrift can take up to several minutes, depending on the number of // resources contained within the stack. Use DescribeStackDriftDetectionStatusto monitor the progress of a detect @@ -33,8 +33,8 @@ import ( // nested stacks belonging to that stack. Perform DetectStackDrift directly on the // nested stack itself. // -// [Resources that Support Drift Detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift-resource-list.html -// [Detecting Unregulated Configuration Changes to Stacks and Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html +// [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html +// [Detect unmanaged configuration changes to stacks and resources with drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html func (c *Client) DetectStackDrift(ctx context.Context, params *DetectStackDriftInput, optFns ...func(*Options)) (*DetectStackDriftOutput, error) { if params == nil { params = &DetectStackDriftInput{} diff --git a/service/cloudformation/api_op_DetectStackResourceDrift.go b/service/cloudformation/api_op_DetectStackResourceDrift.go index f2afaf17d3e..dfa28872340 100644 --- a/service/cloudformation/api_op_DetectStackResourceDrift.go +++ b/service/cloudformation/api_op_DetectStackResourceDrift.go @@ -16,17 +16,17 @@ import ( // and any values specified as template parameters. This information includes // actual and expected property values for resources in which CloudFormation // detects drift. Only resource properties explicitly defined in the stack template -// are checked for drift. For more information about stack and resource drift, see [Detecting Unregulated Configuration Changes to Stacks and Resources] +// are checked for drift. For more information about stack and resource drift, see [Detect unmanaged configuration changes to stacks and resources with drift detection] // . // // Use DetectStackResourceDrift to detect drift on individual resources, or DetectStackDrift to // detect drift on all resources in a given stack that support drift detection. // // Resources that don't currently support drift detection can't be checked. For a -// list of resources that support drift detection, see [Resources that Support Drift Detection]. +// list of resources that support drift detection, see [Resource type support for imports and drift detection]. // -// [Resources that Support Drift Detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift-resource-list.html -// [Detecting Unregulated Configuration Changes to Stacks and Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html +// [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html +// [Detect unmanaged configuration changes to stacks and resources with drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html func (c *Client) DetectStackResourceDrift(ctx context.Context, params *DetectStackResourceDriftInput, optFns ...func(*Options)) (*DetectStackResourceDriftOutput, error) { if params == nil { params = &DetectStackResourceDriftInput{} diff --git a/service/cloudformation/api_op_DetectStackSetDrift.go b/service/cloudformation/api_op_DetectStackSetDrift.go index 33ae78780a3..6a2dc95900b 100644 --- a/service/cloudformation/api_op_DetectStackSetDrift.go +++ b/service/cloudformation/api_op_DetectStackSetDrift.go @@ -94,7 +94,7 @@ type DetectStackSetDriftInput struct { // For more information about maximum concurrent accounts and failure tolerance, // see [Stack set operation options]. // - // [Stack set operation options]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options + // [Stack set operation options]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html#stackset-ops-options OperationPreferences *types.StackSetOperationPreferences noSmithyDocumentSerde diff --git a/service/cloudformation/api_op_EstimateTemplateCost.go b/service/cloudformation/api_op_EstimateTemplateCost.go index 55955ec0e5a..c7776b6ea98 100644 --- a/service/cloudformation/api_op_EstimateTemplateCost.go +++ b/service/cloudformation/api_op_EstimateTemplateCost.go @@ -36,24 +36,18 @@ type EstimateTemplateCostInput struct { Parameters []types.Parameter // Structure containing the template body with a minimum length of 1 byte and a - // maximum length of 51,200 bytes. (For more information, go to [Template Anatomy]in the - // CloudFormation User Guide.) + // maximum length of 51,200 bytes. // // Conditional: You must pass TemplateBody or TemplateURL . If both are passed, // only TemplateBody is used. - // - // [Template Anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateBody *string // Location of file containing the template body. The URL must point to a template - // that's located in an Amazon S3 bucket or a Systems Manager document. For more - // information, go to [Template Anatomy]in the CloudFormation User Guide. The location for an Amazon - // S3 bucket must start with https:// . + // that's located in an Amazon S3 bucket or a Systems Manager document. The + // location for an Amazon S3 bucket must start with https:// . // // Conditional: You must pass TemplateURL or TemplateBody . If both are passed, // only TemplateBody is used. - // - // [Template Anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateURL *string noSmithyDocumentSerde diff --git a/service/cloudformation/api_op_GetStackPolicy.go b/service/cloudformation/api_op_GetStackPolicy.go index 67d433ac3cb..69c69487f3a 100644 --- a/service/cloudformation/api_op_GetStackPolicy.go +++ b/service/cloudformation/api_op_GetStackPolicy.go @@ -42,10 +42,10 @@ type GetStackPolicyInput struct { // The output for the GetStackPolicy action. type GetStackPolicyOutput struct { - // Structure containing the stack policy body. (For more information, go to [Prevent Updates to Stack Resources] in - // the CloudFormation User Guide.) + // Structure containing the stack policy body. (For more information, see [Prevent updates to stack resources] in the + // CloudFormation User Guide.) // - // [Prevent Updates to Stack Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html + // [Prevent updates to stack resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html StackPolicyBody *string // Metadata pertaining to the operation's result. diff --git a/service/cloudformation/api_op_GetTemplate.go b/service/cloudformation/api_op_GetTemplate.go index d94f67d75f9..42b641f765e 100644 --- a/service/cloudformation/api_op_GetTemplate.go +++ b/service/cloudformation/api_op_GetTemplate.go @@ -73,13 +73,10 @@ type GetTemplateOutput struct { // set, the Processed template becomes available. StagesAvailable []types.TemplateStage - // Structure containing the template body. (For more information, go to [Template Anatomy] in the - // CloudFormation User Guide.) + // Structure containing the template body. // // CloudFormation returns the same template that was used when the stack was // created. - // - // [Template Anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateBody *string // Metadata pertaining to the operation's result. diff --git a/service/cloudformation/api_op_GetTemplateSummary.go b/service/cloudformation/api_op_GetTemplateSummary.go index 840deb713ad..c528a8a7c90 100644 --- a/service/cloudformation/api_op_GetTemplateSummary.go +++ b/service/cloudformation/api_op_GetTemplateSummary.go @@ -73,13 +73,10 @@ type GetTemplateSummaryInput struct { StackSetName *string // Structure containing the template body with a minimum length of 1 byte and a - // maximum length of 51,200 bytes. For more information about templates, see [Template anatomy]in - // the CloudFormation User Guide. + // maximum length of 51,200 bytes. // // Conditional: You must specify only one of the following parameters: StackName , // StackSetName , TemplateBody , or TemplateURL . - // - // [Template anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateBody *string // Specifies options for the GetTemplateSummary API action. @@ -87,14 +84,10 @@ type GetTemplateSummaryInput struct { // Location of file containing the template body. The URL must point to a template // (max size: 460,800 bytes) that's located in an Amazon S3 bucket or a Systems - // Manager document. For more information about templates, see [Template anatomy]in the - // CloudFormation User Guide. The location for an Amazon S3 bucket must start with - // https:// . + // Manager document. The location for an Amazon S3 bucket must start with https:// . // // Conditional: You must specify only one of the following parameters: StackName , // StackSetName , TemplateBody , or TemplateURL . - // - // [Template anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateURL *string noSmithyDocumentSerde @@ -108,9 +101,9 @@ type GetTemplateSummaryOutput struct { // for this parameter when you use the CreateStackor UpdateStack actions with your template; otherwise, // those actions return an InsufficientCapabilities error. // - // For more information, see [Acknowledging IAM Resources in CloudFormation Templates]. + // For more information, see [Acknowledging IAM resources in CloudFormation templates]. // - // [Acknowledging IAM Resources in CloudFormation Templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities + // [Acknowledging IAM resources in CloudFormation templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities Capabilities []types.Capability // The list of resources that generated the values in the Capabilities response diff --git a/service/cloudformation/api_op_ImportStacksToStackSet.go b/service/cloudformation/api_op_ImportStacksToStackSet.go index 0cb494788d8..ab035077f30 100644 --- a/service/cloudformation/api_op_ImportStacksToStackSet.go +++ b/service/cloudformation/api_op_ImportStacksToStackSet.go @@ -55,7 +55,7 @@ type ImportStacksToStackSetInput struct { // For more information about maximum concurrent accounts and failure tolerance, // see [Stack set operation options]. // - // [Stack set operation options]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options + // [Stack set operation options]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html#stackset-ops-options OperationPreferences *types.StackSetOperationPreferences // The list of OU ID's to which the stacks being imported has to be mapped as diff --git a/service/cloudformation/api_op_ListExports.go b/service/cloudformation/api_op_ListExports.go index 98e2fb8e872..53ed34be0d0 100644 --- a/service/cloudformation/api_op_ListExports.go +++ b/service/cloudformation/api_op_ListExports.go @@ -15,9 +15,9 @@ import ( // this action. Use this action to see the exported output values that you can // import into other stacks. To import values, use the [Fn::ImportValue]function. // -// For more information, see [CloudFormation export stack output values]. +// For more information, see [Get exported outputs from a deployed CloudFormation stack]. // -// [CloudFormation export stack output values]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-exports.html +// [Get exported outputs from a deployed CloudFormation stack]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-exports.html // [Fn::ImportValue]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-importvalue.html func (c *Client) ListExports(ctx context.Context, params *ListExportsInput, optFns ...func(*Options)) (*ListExportsOutput, error) { if params == nil { diff --git a/service/cloudformation/api_op_PublishType.go b/service/cloudformation/api_op_PublishType.go index 658b88e4978..bb4b46975fc 100644 --- a/service/cloudformation/api_op_PublishType.go +++ b/service/cloudformation/api_op_PublishType.go @@ -14,7 +14,7 @@ import ( // Publishes the specified extension to the CloudFormation registry as a public // extension in this Region. Public extensions are available for use by all // CloudFormation users. For more information about publishing extensions, see [Publishing extensions to make them available for public use]in -// the CloudFormation CLI User Guide. +// the CloudFormation Command Line Interface (CLI) User Guide. // // To publish an extension, you must be registered as a publisher with // CloudFormation. For more information, see [RegisterPublisher]. diff --git a/service/cloudformation/api_op_RegisterPublisher.go b/service/cloudformation/api_op_RegisterPublisher.go index feddcb21564..4058091627e 100644 --- a/service/cloudformation/api_op_RegisterPublisher.go +++ b/service/cloudformation/api_op_RegisterPublisher.go @@ -16,9 +16,9 @@ import ( // Web Services Regions. // // For information about requirements for registering as a public extension -// publisher, see [Registering your account to publish CloudFormation extensions]in the CloudFormation CLI User Guide. +// publisher, see [Prerequisite: Registering your account to publish CloudFormation extensions]in the CloudFormation Command Line Interface (CLI) User Guide. // -// [Registering your account to publish CloudFormation extensions]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-prereqs +// [Prerequisite: Registering your account to publish CloudFormation extensions]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-prereqs func (c *Client) RegisterPublisher(ctx context.Context, params *RegisterPublisherInput, optFns ...func(*Options)) (*RegisterPublisherOutput, error) { if params == nil { params = &RegisterPublisherInput{} @@ -48,9 +48,10 @@ type RegisterPublisherInput struct { // If you are using a Bitbucket or GitHub account for identity verification, the // Amazon Resource Name (ARN) for your connection to that account. // - // For more information, see [Registering your account to publish CloudFormation extensions] in the CloudFormation CLI User Guide. + // For more information, see [Prerequisite: Registering your account to publish CloudFormation extensions] in the CloudFormation Command Line Interface (CLI) + // User Guide. // - // [Registering your account to publish CloudFormation extensions]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-prereqs + // [Prerequisite: Registering your account to publish CloudFormation extensions]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-prereqs ConnectionArn *string noSmithyDocumentSerde diff --git a/service/cloudformation/api_op_RegisterType.go b/service/cloudformation/api_op_RegisterType.go index c630d9c43b3..05aeb339935 100644 --- a/service/cloudformation/api_op_RegisterType.go +++ b/service/cloudformation/api_op_RegisterType.go @@ -22,7 +22,7 @@ import ( // - Making the extension available for use in your account. // // For more information about how to develop extensions and ready them for -// registration, see [Creating Resource Providers]in the CloudFormation CLI User Guide. +// registration, see [Creating resource types using the CloudFormation CLI]in the CloudFormation Command Line Interface (CLI) User Guide. // // You can have a maximum of 50 resource extension versions registered at a time. // This maximum is per account and per Region. Use [DeregisterType]to deregister specific @@ -33,11 +33,11 @@ import ( // // Once you have registered a private extension in your account and Region, use [SetTypeConfiguration] // to specify configuration properties for the extension. For more information, see -// [Configuring extensions at the account level]in the CloudFormation User Guide. +// [Edit configuration data for extensions in your account]in the CloudFormation User Guide. // // [SetTypeConfiguration]: https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_SetTypeConfiguration.html -// [Creating Resource Providers]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-types.html -// [Configuring extensions at the account level]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-private.html#registry-set-configuration +// [Edit configuration data for extensions in your account]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-set-configuration.html +// [Creating resource types using the CloudFormation CLI]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-types.html // [DeregisterType]: https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_DeregisterType.html func (c *Client) RegisterType(ctx context.Context, params *RegisterTypeInput, optFns ...func(*Options)) (*RegisterTypeOutput, error) { if params == nil { @@ -60,7 +60,8 @@ type RegisterTypeInput struct { // the necessary files for the extension you want to register. // // For information about generating a schema handler package for the extension you - // want to register, see [submit]in the CloudFormation CLI User Guide. + // want to register, see [submit]in the CloudFormation Command Line Interface (CLI) User + // Guide. // // The user registering the extension must be able to access the package in the S3 // bucket. That's, the user needs to have [GetObject]permissions for the schema handler @@ -78,11 +79,11 @@ type RegisterTypeInput struct { // // We suggest that extension names adhere to the following patterns: // - // - For resource types, company_or_organization::service::type. + // - For resource types, company_or_organization::service::type . // - // - For modules, company_or_organization::service::type::MODULE. + // - For modules, company_or_organization::service::type::MODULE . // - // - For hooks, MyCompany::Testing::MyTestHook. + // - For hooks, MyCompany::Testing::MyTestHook . // // The following organization namespaces are reserved and can't be used in your // extension names: diff --git a/service/cloudformation/api_op_RollbackStack.go b/service/cloudformation/api_op_RollbackStack.go index c273107729a..5d228f5072f 100644 --- a/service/cloudformation/api_op_RollbackStack.go +++ b/service/cloudformation/api_op_RollbackStack.go @@ -62,8 +62,8 @@ type RollbackStackInput struct { // Default: false RetainExceptOnCreate *bool - // The Amazon Resource Name (ARN) of an Identity and Access Management role that - // CloudFormation assumes to rollback the stack. + // The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to + // rollback the stack. RoleARN *string noSmithyDocumentSerde diff --git a/service/cloudformation/api_op_SetStackPolicy.go b/service/cloudformation/api_op_SetStackPolicy.go index 634e8112618..ed586c4b563 100644 --- a/service/cloudformation/api_op_SetStackPolicy.go +++ b/service/cloudformation/api_op_SetStackPolicy.go @@ -34,7 +34,7 @@ type SetStackPolicyInput struct { // This member is required. StackName *string - // Structure containing the stack policy body. For more information, go to [Prevent updates to stack resources] in the + // Structure containing the stack policy body. For more information, see [Prevent updates to stack resources] in the // CloudFormation User Guide. You can specify either the StackPolicyBody or the // StackPolicyURL parameter, but not both. // diff --git a/service/cloudformation/api_op_SetTypeConfiguration.go b/service/cloudformation/api_op_SetTypeConfiguration.go index c8de474ca9b..7d3dc9510e6 100644 --- a/service/cloudformation/api_op_SetTypeConfiguration.go +++ b/service/cloudformation/api_op_SetTypeConfiguration.go @@ -15,16 +15,16 @@ import ( // the given account and Region. // // To view the current configuration data for an extension, refer to the -// ConfigurationSchema element of [DescribeType]. For more information, see [Configuring extensions at the account level] in the +// ConfigurationSchema element of [DescribeType]. For more information, see [Edit configuration data for extensions in your account] in the // CloudFormation User Guide. // // It's strongly recommended that you use dynamic references to restrict sensitive // configuration definitions, such as third-party credentials. For more details on -// dynamic references, see [Using dynamic references to specify template values]in the CloudFormation User Guide. +// dynamic references, see [Specify values stored in other services using dynamic references]in the CloudFormation User Guide. // // [DescribeType]: https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_DescribeType.html -// [Using dynamic references to specify template values]: https://docs.aws.amazon.com/ -// [Configuring extensions at the account level]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-private.html#registry-set-configuration +// [Edit configuration data for extensions in your account]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-set-configuration.html +// [Specify values stored in other services using dynamic references]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html func (c *Client) SetTypeConfiguration(ctx context.Context, params *SetTypeConfigurationInput, optFns ...func(*Options)) (*SetTypeConfigurationOutput, error) { if params == nil { params = &SetTypeConfigurationInput{} @@ -46,10 +46,10 @@ type SetTypeConfigurationInput struct { // // The configuration data must be formatted as JSON, and validate against the // schema returned in the ConfigurationSchema response element of [DescribeType]. For more - // information, see [Defining account-level configuration data for an extension]in the CloudFormation CLI User Guide. + // information, see [Defining the account-level configuration of an extension]in the CloudFormation Command Line Interface (CLI) User Guide. // // [DescribeType]: https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_DescribeType.html - // [Defining account-level configuration data for an extension]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-model.html#resource-type-howto-configuration + // [Defining the account-level configuration of an extension]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-model.html#resource-type-howto-configuration // // This member is required. Configuration *string diff --git a/service/cloudformation/api_op_TestType.go b/service/cloudformation/api_op_TestType.go index c79c6d4a28c..08131899ccc 100644 --- a/service/cloudformation/api_op_TestType.go +++ b/service/cloudformation/api_op_TestType.go @@ -20,7 +20,8 @@ import ( // - For modules, this includes determining if the module's model meets all // necessary requirements. // -// For more information, see [Testing your public extension prior to publishing] in the CloudFormation CLI User Guide. +// For more information, see [Testing your public extension before publishing] in the CloudFormation Command Line Interface (CLI) +// User Guide. // // If you don't specify a version, CloudFormation uses the default version of the // extension in your account and Region for testing. @@ -33,10 +34,11 @@ import ( // status description for the extension. // // An extension must have a test status of PASSED before it can be published. For -// more information, see [Publishing extensions to make them available for public use]in the CloudFormation CLI User Guide. +// more information, see [Publishing extensions to make them available for public use]in the CloudFormation Command Line Interface (CLI) User +// Guide. // // [DescribeType]: https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_DescribeType.html -// [Testing your public extension prior to publishing]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-testing +// [Testing your public extension before publishing]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html#publish-extension-testing // [RegisterType]: https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/API_RegisterType.html // [Publishing extensions to make them available for public use]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-publish.html func (c *Client) TestType(ctx context.Context, params *TestTypeInput, optFns ...func(*Options)) (*TestTypeOutput, error) { @@ -73,8 +75,7 @@ type TestTypeInput struct { // // - PutObject // - // For more information, see [Actions, Resources, and Condition Keys for Amazon S3] in the Amazon Web Services Identity and Access - // Management User Guide. + // For more information, see [Actions, Resources, and Condition Keys for Amazon S3] in the Identity and Access Management User Guide. // // [Actions, Resources, and Condition Keys for Amazon S3]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html LogDeliveryBucket *string diff --git a/service/cloudformation/api_op_UpdateStack.go b/service/cloudformation/api_op_UpdateStack.go index 150c86d1a59..1ae3b37bee7 100644 --- a/service/cloudformation/api_op_UpdateStack.go +++ b/service/cloudformation/api_op_UpdateStack.go @@ -17,10 +17,10 @@ import ( // // To get a copy of the template for an existing stack, you can use the GetTemplate action. // -// For more information about creating an update template, updating a stack, and -// monitoring the progress of the update, see [Updating a Stack]. +// For more information about updating a stack and monitoring the progress of the +// update, see [Managing Amazon Web Services resources as a single unit with CloudFormation stacks]in the CloudFormation User Guide. // -// [Updating a Stack]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html +// [Managing Amazon Web Services resources as a single unit with CloudFormation stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacks.html func (c *Client) UpdateStack(ctx context.Context, params *UpdateStackInput, optFns ...func(*Options)) (*UpdateStackOutput, error) { if params == nil { params = &UpdateStackInput{} @@ -50,9 +50,9 @@ type UpdateStackInput struct { // - CAPABILITY_IAM and CAPABILITY_NAMED_IAM // // Some stack templates might include resources that can affect permissions in - // your Amazon Web Services account; for example, by creating new Identity and - // Access Management (IAM) users. For those stacks, you must explicitly acknowledge - // this by specifying one of these capabilities. + // your Amazon Web Services account, for example, by creating new IAM users. For + // those stacks, you must explicitly acknowledge this by specifying one of these + // capabilities. // // The following IAM resources require you to specify either the CAPABILITY_IAM or // CAPABILITY_NAMED_IAM capability. @@ -82,7 +82,7 @@ type UpdateStackInput struct { // // [AWS::IAM::UserToGroupAddition] // - // For more information, see [Acknowledging IAM Resources in CloudFormation Templates]. + // For more information, see [Acknowledging IAM resources in CloudFormation templates]. // // - CAPABILITY_AUTO_EXPAND // @@ -107,21 +107,21 @@ type UpdateStackInput struct { // templates. Be aware that the Lambda function owner can update the function // operation without CloudFormation being notified. // - // For more information, see [Using CloudFormation Macros to Perform Custom Processing on Templates]. + // For more information, see [Perform custom processing on CloudFormation templates with template macros]. // // Only one of the Capabilities and ResourceType parameters can be specified. // - // [AWS::IAM::AccessKey]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html + // [AWS::IAM::AccessKey]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html // [AWS::Include]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html - // [AWS::IAM::User]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html + // [AWS::IAM::User]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html // [AWS::IAM::InstanceProfile]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html - // [AWS::IAM::Policy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html - // [AWS::IAM::Group]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html - // [AWS::IAM::UserToGroupAddition]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html + // [Acknowledging IAM resources in CloudFormation templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities + // [Perform custom processing on CloudFormation templates with template macros]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html + // [AWS::IAM::Policy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html + // [AWS::IAM::Group]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html + // [AWS::IAM::UserToGroupAddition]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html // [AWS::IAM::Role]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html - // [Using CloudFormation Macros to Perform Custom Processing on Templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html // [AWS::Serverless]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html - // [Acknowledging IAM Resources in CloudFormation Templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities Capabilities []types.Capability // A unique identifier for this UpdateStack request. Specify this token if you @@ -164,13 +164,12 @@ type UpdateStackInput struct { // // If the list of resource types doesn't include a resource that you're updating, // the stack update fails. By default, CloudFormation grants permissions to all - // resource types. Identity and Access Management (IAM) uses this parameter for - // CloudFormation-specific condition keys in IAM policies. For more information, - // see [Controlling Access with Identity and Access Management]. + // resource types. IAM uses this parameter for CloudFormation-specific condition + // keys in IAM policies. For more information, see [Control access with Identity and Access Management]. // // Only one of the Capabilities and ResourceType parameters can be specified. // - // [Controlling Access with Identity and Access Management]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html + // [Control access with Identity and Access Management]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html ResourceTypes []string // When set to true , newly created resources are deleted when the operation rolls @@ -180,12 +179,12 @@ type UpdateStackInput struct { // Default: false RetainExceptOnCreate *bool - // The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role - // that CloudFormation assumes to update the stack. CloudFormation uses the role's - // credentials to make calls on your behalf. CloudFormation always uses this role - // for all future operations on the stack. Provided that users have permission to - // operate on the stack, CloudFormation uses this role even if the users don't have - // permission to pass it. Ensure that the role grants least privilege. + // The Amazon Resource Name (ARN) of an IAM role that CloudFormation assumes to + // update the stack. CloudFormation uses the role's credentials to make calls on + // your behalf. CloudFormation always uses this role for all future operations on + // the stack. Provided that users have permission to operate on the stack, + // CloudFormation uses this role even if the users don't have permission to pass + // it. Ensure that the role grants least privilege. // // If you don't specify a value, CloudFormation uses the role that was previously // associated with the stack. If no role is available, CloudFormation uses a @@ -243,24 +242,18 @@ type UpdateStackInput struct { Tags []types.Tag // Structure containing the template body with a minimum length of 1 byte and a - // maximum length of 51,200 bytes. (For more information, go to [Template Anatomy]in the - // CloudFormation User Guide.) + // maximum length of 51,200 bytes. // // Conditional: You must specify only one of the following parameters: TemplateBody // , TemplateURL , or set the UsePreviousTemplate to true . - // - // [Template Anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateBody *string // Location of file containing the template body. The URL must point to a template - // that's located in an Amazon S3 bucket or a Systems Manager document. For more - // information, go to [Template Anatomy]in the CloudFormation User Guide. The location for an Amazon - // S3 bucket must start with https:// . + // that's located in an Amazon S3 bucket or a Systems Manager document. The + // location for an Amazon S3 bucket must start with https:// . // // Conditional: You must specify only one of the following parameters: TemplateBody // , TemplateURL , or set the UsePreviousTemplate to true . - // - // [Template Anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateURL *string // Reuse the existing template that is associated with the stack that you are diff --git a/service/cloudformation/api_op_UpdateStackSet.go b/service/cloudformation/api_op_UpdateStackSet.go index 4053b89ffa5..9a96be8bfab 100644 --- a/service/cloudformation/api_op_UpdateStackSet.go +++ b/service/cloudformation/api_op_UpdateStackSet.go @@ -104,9 +104,9 @@ type UpdateStackSetInput struct { // - CAPABILITY_IAM and CAPABILITY_NAMED_IAM // // Some stack templates might include resources that can affect permissions in - // your Amazon Web Services account; for example, by creating new Identity and - // Access Management (IAM) users. For those stacks sets, you must explicitly - // acknowledge this by specifying one of these capabilities. + // your Amazon Web Services account, for example, by creating new IAM users. For + // those stacks sets, you must explicitly acknowledge this by specifying one of + // these capabilities. // // The following IAM resources require you to specify either the CAPABILITY_IAM or // CAPABILITY_NAMED_IAM capability. @@ -136,7 +136,7 @@ type UpdateStackSetInput struct { // // [AWS::IAM::UserToGroupAddition] // - // For more information, see [Acknowledging IAM Resources in CloudFormation Templates]. + // For more information, see [Acknowledging IAM resources in CloudFormation templates]. // // - CAPABILITY_AUTO_EXPAND // @@ -152,17 +152,17 @@ type UpdateStackSetInput struct { // with service-managed permissions, if you reference a macro in your template the // stack set operation will fail. // - // [AWS::IAM::AccessKey]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html + // [AWS::IAM::AccessKey]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html // [AWS::Include]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html - // [AWS::IAM::User]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html + // [AWS::IAM::User]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html // [AWS::IAM::InstanceProfile]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html - // [AWS::IAM::Policy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html - // [AWS::IAM::Group]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html - // [AWS::IAM::UserToGroupAddition]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html + // [Acknowledging IAM resources in CloudFormation templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities + // [AWS::IAM::Policy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html + // [AWS::IAM::Group]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html + // [AWS::IAM::UserToGroupAddition]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html // [AWS::IAM::Role]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html // [Using CloudFormation Macros to Perform Custom Processing on Templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html // [AWS::Serverless]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html - // [Acknowledging IAM Resources in CloudFormation Templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities Capabilities []types.Capability // [Service-managed permissions] The Organizations accounts in which to update @@ -284,24 +284,18 @@ type UpdateStackSetInput struct { Tags []types.Tag // The structure that contains the template body, with a minimum length of 1 byte - // and a maximum length of 51,200 bytes. For more information, see [Template Anatomy]in the - // CloudFormation User Guide. + // and a maximum length of 51,200 bytes. // // Conditional: You must specify only one of the following parameters: TemplateBody // or TemplateURL —or set UsePreviousTemplate to true. - // - // [Template Anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateBody *string // The location of the file that contains the template body. The URL must point to // a template (maximum size: 460,800 bytes) that is located in an Amazon S3 bucket - // or a Systems Manager document. For more information, see [Template Anatomy]in the CloudFormation - // User Guide. + // or a Systems Manager document. // // Conditional: You must specify only one of the following parameters: TemplateBody // or TemplateURL —or set UsePreviousTemplate to true. - // - // [Template Anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateURL *string // Use the existing template that's associated with the stack set that you're diff --git a/service/cloudformation/api_op_UpdateTerminationProtection.go b/service/cloudformation/api_op_UpdateTerminationProtection.go index c71c279384f..84cd454d11a 100644 --- a/service/cloudformation/api_op_UpdateTerminationProtection.go +++ b/service/cloudformation/api_op_UpdateTerminationProtection.go @@ -12,14 +12,14 @@ import ( // Updates termination protection for the specified stack. If a user attempts to // delete a stack with termination protection enabled, the operation fails and the -// stack remains unchanged. For more information, see [Protecting a Stack From Being Deleted]in the CloudFormation User +// stack remains unchanged. For more information, see [Protect a CloudFormation stack from being deleted]in the CloudFormation User // Guide. // // For [nested stacks], termination protection is set on the root stack and can't be changed // directly on the nested stack. // -// [Protecting a Stack From Being Deleted]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html // [nested stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html +// [Protect a CloudFormation stack from being deleted]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html func (c *Client) UpdateTerminationProtection(ctx context.Context, params *UpdateTerminationProtectionInput, optFns ...func(*Options)) (*UpdateTerminationProtectionOutput, error) { if params == nil { params = &UpdateTerminationProtectionInput{} diff --git a/service/cloudformation/api_op_ValidateTemplate.go b/service/cloudformation/api_op_ValidateTemplate.go index 78cf425c5f7..a54073ed654 100644 --- a/service/cloudformation/api_op_ValidateTemplate.go +++ b/service/cloudformation/api_op_ValidateTemplate.go @@ -33,24 +33,18 @@ func (c *Client) ValidateTemplate(ctx context.Context, params *ValidateTemplateI type ValidateTemplateInput struct { // Structure containing the template body with a minimum length of 1 byte and a - // maximum length of 51,200 bytes. For more information, go to [Template Anatomy]in the - // CloudFormation User Guide. + // maximum length of 51,200 bytes. // // Conditional: You must pass TemplateURL or TemplateBody . If both are passed, // only TemplateBody is used. - // - // [Template Anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateBody *string // Location of file containing the template body. The URL must point to a template // (max size: 460,800 bytes) that is located in an Amazon S3 bucket or a Systems - // Manager document. For more information, go to [Template Anatomy]in the CloudFormation User Guide. - // The location for an Amazon S3 bucket must start with https:// . + // Manager document. The location for an Amazon S3 bucket must start with https:// . // // Conditional: You must pass TemplateURL or TemplateBody . If both are passed, // only TemplateBody is used. - // - // [Template Anatomy]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-anatomy.html TemplateURL *string noSmithyDocumentSerde @@ -64,9 +58,9 @@ type ValidateTemplateOutput struct { // this parameter when you use the CreateStackor UpdateStack actions with your template; otherwise, // those actions return an InsufficientCapabilities error. // - // For more information, see [Acknowledging IAM Resources in CloudFormation Templates]. + // For more information, see [Acknowledging IAM resources in CloudFormation templates]. // - // [Acknowledging IAM Resources in CloudFormation Templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities + // [Acknowledging IAM resources in CloudFormation templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities Capabilities []types.Capability // The list of resources that generated the values in the Capabilities response diff --git a/service/cloudformation/doc.go b/service/cloudformation/doc.go index d2a8288629f..f74b778c09a 100644 --- a/service/cloudformation/doc.go +++ b/service/cloudformation/doc.go @@ -9,8 +9,8 @@ // infrastructure deployments predictably and repeatedly. You can use // CloudFormation to leverage Amazon Web Services products, such as Amazon Elastic // Compute Cloud, Amazon Elastic Block Store, Amazon Simple Notification Service, -// Elastic Load Balancing, and Auto Scaling to build highly reliable, highly -// scalable, cost-effective applications without creating or configuring the +// Elastic Load Balancing, and Amazon EC2 Auto Scaling to build highly reliable, +// highly scalable, cost-effective applications without creating or configuring the // underlying Amazon Web Services infrastructure. // // With CloudFormation, you declare all your resources and dependencies in a diff --git a/service/cloudformation/types/types.go b/service/cloudformation/types/types.go index 17301eeb91c..066e47e1ac4 100644 --- a/service/cloudformation/types/types.go +++ b/service/cloudformation/types/types.go @@ -68,9 +68,9 @@ type AccountGateResult struct { // - Number of stack outputs // // For more information about these account limits, and other CloudFormation -// limits, see [CloudFormation quotas]in the CloudFormation User Guide. +// limits, see [Understand CloudFormation quotas]in the CloudFormation User Guide. // -// [CloudFormation quotas]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-limits.html +// [Understand CloudFormation quotas]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-limits.html type AccountLimit struct { // The name of the account limit. @@ -369,9 +369,9 @@ type ManagedExecution struct { // Contains information about the module from which the resource was created, if // the resource was created from a module included in the stack template. // -// For more information about modules, see [Using modules to encapsulate and reuse resource configurations] in the CloudFormation User Guide. +// For more information about modules, see [Create reusable resource configurations that can be included across templates with CloudFormation modules] in the CloudFormation User Guide. // -// [Using modules to encapsulate and reuse resource configurations]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html +// [Create reusable resource configurations that can be included across templates with CloudFormation modules]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html type ModuleInfo struct { // A concatenated list of the logical IDs of the module or modules containing the @@ -383,9 +383,9 @@ type ModuleInfo struct { // // moduleA/moduleB // - // For more information, see [Referencing resources in a module] in the CloudFormation User Guide. + // For more information, see [Reference module resources in CloudFormation templates] in the CloudFormation User Guide. // - // [Referencing resources in a module]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html#module-ref-resources + // [Reference module resources in CloudFormation templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/module-ref-resources.html LogicalIdHierarchy *string // A concatenated list of the module type or types containing the resource. Module @@ -442,10 +442,11 @@ type Parameter struct { // The input value associated with the parameter. ParameterValue *string - // Read-only. The value that corresponds to a SSM parameter key. This field is - // returned only for [SSM]parameter types in the template. + // Read-only. The value that corresponds to a Systems Manager parameter key. This + // field is returned only for Systems Manager parameter types in the template. For + // more information, see [Use CloudFormation-supplied parameter types]in the CloudFormation User Guide. // - // [SSM]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html#aws-ssm-parameter-types + // [Use CloudFormation-supplied parameter types]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-supplied-parameter-types.html ResolvedValue *string // During a stack update, use the existing parameter value that the stack is using @@ -515,9 +516,9 @@ type PhysicalResourceIdContextKeyValuePair struct { // Information about a resource property whose actual value differs from its // expected value, as defined in the stack template and any values specified as // template parameters. These will be present only for resources whose -// StackResourceDriftStatus is MODIFIED . For more information, see [Detecting Unregulated Configuration Changes to Stacks and Resources]. +// StackResourceDriftStatus is MODIFIED . For more information, see [Detect unmanaged configuration changes to stacks and resources with drift detection]. // -// [Detecting Unregulated Configuration Changes to Stacks and Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html +// [Detect unmanaged configuration changes to stacks and resources with drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html type PropertyDifference struct { // The actual property value of the resource property. @@ -556,9 +557,9 @@ type PropertyDifference struct { // For extensions that are modules, a public third-party extension that must be // activated in your account in order for the module itself to be activated. // -// For more information, see [Activating public modules for use in your account] in the CloudFormation User Guide. +// For more information, see [Requirements for activating third-party public modules] in the CloudFormation User Guide. // -// [Activating public modules for use in your account]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/modules.html#module-enabling +// [Requirements for activating third-party public modules]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/module-versioning.html#requirements-for-modules type RequiredActivatedType struct { // The type name of the public extension. @@ -566,9 +567,9 @@ type RequiredActivatedType struct { // If you specified a TypeNameAlias when enabling the extension in this account // and Region, CloudFormation treats that alias as the extension's type name within // the account and Region, not the type name of the public extension. For more - // information, see [Specifying aliases to refer to extensions]in the CloudFormation User Guide. + // information, see [Use aliases to refer to extensions]in the CloudFormation User Guide. // - // [Specifying aliases to refer to extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-alias + // [Use aliases to refer to extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-alias OriginalTypeName *string // The publisher ID of the extension publisher. @@ -644,13 +645,13 @@ type ResourceChange struct { // the value of the RequiresRecreation property in the ResourceTargetDefinition // structure. For example, if the RequiresRecreation field is Always and the // Evaluation field is Static , Replacement is True . If the RequiresRecreation - // field is Always and the Evaluation field is Dynamic , Replacement is - // Conditionally . + // field is Always and the Evaluation field is Dynamic , Replacement is Conditional + // . // // If you have multiple changes with different RequiresRecreation values, the // Replacement value depends on the change with the most impact. A - // RequiresRecreation value of Always has the most impact, followed by - // Conditionally , and then Never . + // RequiresRecreation value of Always has the most impact, followed by Conditional + // , and then Never . Replacement Replacement // The type of CloudFormation resource, such as AWS::S3::Bucket . @@ -735,8 +736,7 @@ type ResourceDefinition struct { // schema.) The value is the value of that primary identifier. For example, for a // AWS::DynamoDB::Table resource, the primary identifiers is TableName so the // key-value pair could be "TableName": "MyDDBTable" . For more information, see [primaryIdentifier] - // in the CloudFormation Command Line Interface User guide for extension - // development. + // in the CloudFormation Command Line Interface (CLI) User Guide. // // [primaryIdentifier]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-primaryidentifier // @@ -744,9 +744,9 @@ type ResourceDefinition struct { ResourceIdentifier map[string]string // The type of the resource, such as AWS::DynamoDB::Table . For the list of - // supported resources, see [IaC generator supported resource types]in the CloudFormation User Guide + // supported resources, see [Resource type support for imports and drift detection]in the CloudFormation User Guide // - // [IaC generator supported resource types]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html + // [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html // // This member is required. ResourceType *string @@ -769,21 +769,28 @@ type ResourceDetail struct { // in the resource schema.) The value is the value of that primary identifier. For // example, for a AWS::DynamoDB::Table resource, the primary identifiers is // TableName so the key-value pair could be "TableName": "MyDDBTable" . For more - // information, see [primaryIdentifier]in the CloudFormation Command Line Interface User guide for - // extension development. + // information, see [primaryIdentifier]in the CloudFormation Command Line Interface (CLI) User Guide. // // [primaryIdentifier]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-primaryidentifier ResourceIdentifier map[string]string // Status of the processing of a resource in a generated template. // - // InProgress The resource processing is still in progress. + // InProgress + // + // The resource processing is still in progress. + // + // Complete // - // Complete The resource processing is complete. + // The resource processing is complete. // - // Pending The resource processing is pending. + // Pending // - // Failed The resource processing has failed. + // The resource processing is pending. + // + // Failed + // + // The resource processing has failed. ResourceStatus GeneratedTemplateResourceStatus // The reason for the resource detail, providing more information if a failure @@ -791,9 +798,9 @@ type ResourceDetail struct { ResourceStatusReason *string // The type of the resource, such as AWS::DynamoDB::Table . For the list of - // supported resources, see [IaC generator supported resource types]In the CloudFormation User Guide + // supported resources, see [Resource type support for imports and drift detection]In the CloudFormation User Guide // - // [IaC generator supported resource types]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html + // [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html ResourceType *string // The warnings generated for this resource. @@ -840,13 +847,21 @@ type ResourceScanSummary struct { // Status of the resource scan. // - // INPROGRESS The resource scan is still in progress. + // INPROGRESS + // + // The resource scan is still in progress. // - // COMPLETE The resource scan is complete. + // COMPLETE // - // EXPIRED The resource scan has expired. + // The resource scan is complete. // - // FAILED The resource scan has failed. + // EXPIRED + // + // The resource scan has expired. + // + // FAILED + // + // The resource scan has failed. Status ResourceScanStatus // The reason for the resource scan status, providing more information if a @@ -891,9 +906,10 @@ type ResourceTargetDefinition struct { // If the Attribute value is Properties , indicates whether a change to this // property causes the resource to be recreated. The value can be Never , Always , // or Conditionally . To determine the conditions for a Conditionally recreation, - // see the update behavior for that [property]in the CloudFormation User Guide. + // see the update behavior for that property in the [Amazon Web Services resource and property types reference]in the CloudFormation User + // Guide. // - // [property]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html + // [Amazon Web Services resource and property types reference]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html RequiresRecreation RequiresRecreation noSmithyDocumentSerde @@ -915,9 +931,9 @@ type ResourceToImport struct { ResourceIdentifier map[string]string // The type of resource to import into your stack, such as AWS::S3::Bucket . For a - // list of supported resource types, see [Resources that support import operations]in the CloudFormation User Guide. + // list of supported resource types, see [Resource type support for imports and drift detection]in the CloudFormation User Guide. // - // [Resources that support import operations]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html + // [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html // // This member is required. ResourceType *string @@ -932,9 +948,9 @@ type ResourceToImport struct { // Rollback triggers enable you to have CloudFormation monitor the state of your // application during stack creation and updating, and to roll back that operation // if the application breaches the threshold of any of the alarms you've specified. -// For more information, see [Monitor and Roll Back Stack Operations]. +// For more information, see [Roll back your CloudFormation stack on alarm breach with rollback triggers]. // -// [Monitor and Roll Back Stack Operations]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-rollback-triggers.html +// [Roll back your CloudFormation stack on alarm breach with rollback triggers]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-rollback-triggers.html type RollbackConfiguration struct { // The amount of time, in minutes, during which CloudFormation should monitor all @@ -1001,7 +1017,7 @@ type RollbackTrigger struct { // The resource type of the rollback trigger. Specify either [AWS::CloudWatch::Alarm] or [AWS::CloudWatch::CompositeAlarm] resource types. // // [AWS::CloudWatch::CompositeAlarm]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html - // [AWS::CloudWatch::Alarm]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html + // [AWS::CloudWatch::Alarm]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-alarm.html // // This member is required. Type *string @@ -1022,16 +1038,15 @@ type ScannedResource struct { // schema.) The value is the value of that primary identifier. For example, for a // AWS::DynamoDB::Table resource, the primary identifiers is TableName so the // key-value pair could be "TableName": "MyDDBTable" . For more information, see [primaryIdentifier] - // in the CloudFormation Command Line Interface User guide for extension - // development. + // in the CloudFormation Command Line Interface (CLI) User Guide. // // [primaryIdentifier]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-primaryidentifier ResourceIdentifier map[string]string // The type of the resource, such as AWS::DynamoDB::Table . For the list of - // supported resources, see [Resource type support]In the CloudFormation User Guide + // supported resources, see [Resource type support for imports and drift detection]In the CloudFormation User Guide // - // [Resource type support]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html + // [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html ResourceType *string noSmithyDocumentSerde @@ -1047,8 +1062,7 @@ type ScannedResourceIdentifier struct { // schema.) The value is the value of that primary identifier. For example, for a // AWS::DynamoDB::Table resource, the primary identifiers is TableName so the // key-value pair could be "TableName": "MyDDBTable" . For more information, see [primaryIdentifier] - // in the CloudFormation Command Line Interface User guide for extension - // development. + // in the CloudFormation Command Line Interface (CLI) User Guide. // // [primaryIdentifier]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-schema.html#schema-properties-primaryidentifier // @@ -1056,9 +1070,9 @@ type ScannedResourceIdentifier struct { ResourceIdentifier map[string]string // The type of the resource, such as AWS::DynamoDB::Table . For the list of - // supported resources, see [IaC generator supported resource types]In the CloudFormation User Guide. + // supported resources, see [Resource type support for imports and drift detection]In the CloudFormation User Guide. // - // [IaC generator supported resource types]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html + // [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html // // This member is required. ResourceType *string @@ -1109,9 +1123,9 @@ type Stack struct { // present, the resource or resource configuration phase has completed and the // stabilization of the resources is in progress. The stack sets // CONFIGURATION_COMPLETE when all of the resources in the stack have reached that - // event. For more information, see [CloudFormation stack deployment]in the CloudFormation User Guide. + // event. For more information, see [Understand CloudFormation stack creation events]in the CloudFormation User Guide. // - // [CloudFormation stack deployment]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stack-resource-configuration-complete.html + // [Understand CloudFormation stack creation events]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stack-resource-configuration-complete.html DetailedStatus DetailedStatus // Boolean to enable or disable rollback on stack creation failures: @@ -1123,19 +1137,19 @@ type Stack struct { // Information about whether a stack's actual configuration differs, or has // drifted, from its expected configuration, as defined in the stack template and - // any values specified as template parameters. For more information, see [Detecting Unregulated Configuration Changes to Stacks and Resources]. + // any values specified as template parameters. For more information, see [Detect unmanaged configuration changes to stacks and resources with drift detection]. // - // [Detecting Unregulated Configuration Changes to Stacks and Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html + // [Detect unmanaged configuration changes to stacks and resources with drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html DriftInformation *StackDriftInformation // Whether termination protection is enabled for the stack. // // For [nested stacks], termination protection is set on the root stack and can't be changed - // directly on the nested stack. For more information, see [Protecting a Stack From Being Deleted]in the CloudFormation + // directly on the nested stack. For more information, see [Protect a CloudFormation stack from being deleted]in the CloudFormation // User Guide. // - // [Protecting a Stack From Being Deleted]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html // [nested stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html + // [Protect a CloudFormation stack from being deleted]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html EnableTerminationProtection *bool // The time the stack was last updated. This field will only be returned if the @@ -1156,9 +1170,9 @@ type Stack struct { // of the direct parent of this stack. For the first level of nested stacks, the // root stack is also the parent stack. // - // For more information, see [Working with Nested Stacks] in the CloudFormation User Guide. + // For more information, see [Embed stacks within other stacks using nested stacks] in the CloudFormation User Guide. // - // [Working with Nested Stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html + // [Embed stacks within other stacks using nested stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html ParentId *string // When set to true , newly created resources are deleted when the operation rolls @@ -1168,9 +1182,9 @@ type Stack struct { // Default: false RetainExceptOnCreate *bool - // The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role - // that's associated with the stack. During a stack operation, CloudFormation uses - // this role's credentials to make calls on your behalf. + // The Amazon Resource Name (ARN) of an IAM role that's associated with the stack. + // During a stack operation, CloudFormation uses this role's credentials to make + // calls on your behalf. RoleARN *string // The rollback triggers for CloudFormation to monitor during stack creation and @@ -1180,9 +1194,9 @@ type Stack struct { // For nested stacks--stacks created as resources for another stack--the stack ID // of the top-level stack to which the nested stack ultimately belongs. // - // For more information, see [Working with Nested Stacks] in the CloudFormation User Guide. + // For more information, see [Embed stacks within other stacks using nested stacks] in the CloudFormation User Guide. // - // [Working with Nested Stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html + // [Embed stacks within other stacks using nested stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html RootId *string // Unique identifier of the stack. @@ -1304,13 +1318,13 @@ type StackEvent struct { // event. // // - CONFIGURATION_COMPLETE - all of the resources in the stack have reached that - // event. For more information, see [CloudFormation stack deployment]in the CloudFormation User Guide. + // event. For more information, see [Understand CloudFormation stack creation events]in the CloudFormation User Guide. // // - VALIDATION_FAILED - template validation failed because of invalid properties // in the template. The ResourceStatusReason field shows what properties are // defined incorrectly. // - // [CloudFormation stack deployment]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stack-resource-configuration-complete.html + // [Understand CloudFormation stack creation events]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stack-resource-configuration-complete.html DetailedStatus DetailedStatus // Specify the hook failure mode for non-compliant resources in the followings @@ -1349,16 +1363,15 @@ type StackEvent struct { // Success/failure message associated with the resource. ResourceStatusReason *string - // Type of resource. (For more information, go to [Amazon Web Services Resource Types Reference] in the CloudFormation User - // Guide.) + // Type of resource. For more information, see [Amazon Web Services resource and property types reference] in the CloudFormation User Guide. // - // [Amazon Web Services Resource Types Reference]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html + // [Amazon Web Services resource and property types reference]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html ResourceType *string noSmithyDocumentSerde } -// An CloudFormation stack, in a specific account and Region, that's part of a +// A CloudFormation stack, in a specific account and Region, that's part of a // stack set operation. A stack instance is a reference to an attempted or actual // stack in a given account within a given Region. A stack instance can exist // without a stack—for example, if the stack couldn't be created for some reason. A @@ -1511,9 +1524,9 @@ type StackInstanceResourceDriftsSummary struct { // This member is required. LogicalResourceId *string - // Type of resource. For more information, go to [Amazon Web Services Resource Types Reference] in the CloudFormation User Guide. + // Type of resource. For more information, see [Amazon Web Services resource and property types reference] in the CloudFormation User Guide. // - // [Amazon Web Services Resource Types Reference]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html + // [Amazon Web Services resource and property types reference]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html // // This member is required. ResourceType *string @@ -1658,9 +1671,9 @@ type StackResource struct { // This member is required. ResourceStatus ResourceStatus - // Type of resource. For more information, go to [Amazon Web Services Resource Types Reference] in the CloudFormation User Guide. + // Type of resource. For more information, see [Amazon Web Services resource and property types reference] in the CloudFormation User Guide. // - // [Amazon Web Services Resource Types Reference]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html + // [Amazon Web Services resource and property types reference]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html // // This member is required. ResourceType *string @@ -1675,9 +1688,9 @@ type StackResource struct { // Information about whether the resource's actual configuration differs, or has // drifted, from its expected configuration, as defined in the stack template and - // any values specified as template parameters. For more information, see [Detecting Unregulated Configuration Changes to Stacks and Resources]. + // any values specified as template parameters. For more information, see [Detect unmanaged configuration changes to stacks and resources with drift detection]. // - // [Detecting Unregulated Configuration Changes to Stacks and Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html + // [Detect unmanaged configuration changes to stacks and resources with drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html DriftInformation *StackResourceDriftInformation // Contains information about the module from which the resource was created, if @@ -1718,9 +1731,9 @@ type StackResourceDetail struct { // This member is required. ResourceStatus ResourceStatus - // Type of resource. For more information, go to [Amazon Web Services Resource Types Reference] in the CloudFormation User Guide. + // Type of resource. For more information, see [Amazon Web Services resource and property types reference] in the CloudFormation User Guide. // - // [Amazon Web Services Resource Types Reference]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html + // [Amazon Web Services resource and property types reference]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html // // This member is required. ResourceType *string @@ -1730,15 +1743,15 @@ type StackResourceDetail struct { // Information about whether the resource's actual configuration differs, or has // drifted, from its expected configuration, as defined in the stack template and - // any values specified as template parameters. For more information, see [Detecting Unregulated Configuration Changes to Stacks and Resources]. + // any values specified as template parameters. For more information, see [Detect unmanaged configuration changes to stacks and resources with drift detection]. // - // [Detecting Unregulated Configuration Changes to Stacks and Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html + // [Detect unmanaged configuration changes to stacks and resources with drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html DriftInformation *StackResourceDriftInformation // The content of the Metadata attribute declared for the resource. For more - // information, see [Metadata Attribute]in the CloudFormation User Guide. + // information, see [Metadata attribute]in the CloudFormation User Guide. // - // [Metadata Attribute]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html + // [Metadata attribute]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-metadata.html Metadata *string // Contains information about the module from which the resource was created, if @@ -1764,16 +1777,16 @@ type StackResourceDetail struct { // Contains the drift information for a resource that has been checked for drift. // This includes actual and expected property values for resources in which // CloudFormation has detected drift. Only resource properties explicitly defined -// in the stack template are checked for drift. For more information, see [Detecting Unregulated Configuration Changes to Stacks and Resources]. +// in the stack template are checked for drift. For more information, see [Detect unmanaged configuration changes to stacks and resources with drift detection]. // // Resources that don't currently support drift detection can't be checked. For a -// list of resources that support drift detection, see [Resources that Support Drift Detection]. +// list of resources that support drift detection, see [Resource type support for imports and drift detection]. // // Use DetectStackResourceDrift to detect drift on individual resources, or DetectStackDrift to detect drift on all // resources in a given stack that support drift detection. // -// [Resources that Support Drift Detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift-resource-list.html -// [Detecting Unregulated Configuration Changes to Stacks and Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html +// [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html +// [Detect unmanaged configuration changes to stacks and resources with drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html type StackResourceDrift struct { // The logical name of the resource specified in the template. @@ -1867,12 +1880,12 @@ type StackResourceDriftInformation struct { // its expected configuration. // // Any resources that do not currently support drift detection have a status of - // NOT_CHECKED . For more information, see [Resources that Support Drift Detection]. + // NOT_CHECKED . For more information, see [Resource type support for imports and drift detection]. // // - IN_SYNC : The resource's actual configuration matches its expected // configuration. // - // [Resources that Support Drift Detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift-resource-list.html + // [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html // // This member is required. StackResourceDriftStatus StackResourceDriftStatus @@ -1900,16 +1913,16 @@ type StackResourceDriftInformationSummary struct { // expected configuration. // // Any resources that don't currently support drift detection have a status of - // NOT_CHECKED . For more information, see [Resources that Support Drift Detection]. If you performed an ContinueUpdateRollbackoperation on a + // NOT_CHECKED . For more information, see [Resource type support for imports and drift detection]. If you performed an ContinueUpdateRollbackoperation on a // stack, any resources included in ResourcesToSkip will also have a status of // NOT_CHECKED . For more information about skipping resources during rollback - // operations, see [Continue Rolling Back an Update]in the CloudFormation User Guide. + // operations, see [Continue rolling back an update]in the CloudFormation User Guide. // // - IN_SYNC : The resource's actual configuration matches its expected // configuration. // - // [Continue Rolling Back an Update]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-continueupdaterollback.html - // [Resources that Support Drift Detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift-resource-list.html + // [Resource type support for imports and drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import-supported-resources.html + // [Continue rolling back an update]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-continueupdaterollback.html // // This member is required. StackResourceDriftStatus StackResourceDriftStatus @@ -1939,19 +1952,18 @@ type StackResourceSummary struct { // This member is required. ResourceStatus ResourceStatus - // Type of resource. (For more information, go to [Amazon Web Services Resource Types Reference] in the CloudFormation User - // Guide.) + // Type of resource. (For more information, see [Amazon Web Services resource and property types reference] in the CloudFormation User Guide.) // - // [Amazon Web Services Resource Types Reference]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html + // [Amazon Web Services resource and property types reference]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html // // This member is required. ResourceType *string // Information about whether the resource's actual configuration differs, or has // drifted, from its expected configuration, as defined in the stack template and - // any values specified as template parameters. For more information, see [Detecting Unregulated Configuration Changes to Stacks and Resources]. + // any values specified as template parameters. For more information, see [Detect unmanaged configuration changes to stacks and resources with drift detection]. // - // [Detecting Unregulated Configuration Changes to Stacks and Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html + // [Detect unmanaged configuration changes to stacks and resources with drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html DriftInformation *StackResourceDriftInformationSummary // Contains information about the module from which the resource was created, if @@ -1993,9 +2005,9 @@ type StackSet struct { // The capabilities that are allowed in the stack set. Some stack set templates // might include resources that can affect permissions in your Amazon Web Services // account—for example, by creating new Identity and Access Management (IAM) users. - // For more information, see [Acknowledging IAM Resources in CloudFormation Templates.] + // For more information, see [Acknowledging IAM resources in CloudFormation templates]. // - // [Acknowledging IAM Resources in CloudFormation Templates.]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#capabilities + // [Acknowledging IAM resources in CloudFormation templates]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities Capabilities []Capability // A description of the stack set that you specify when the stack set is created @@ -2227,9 +2239,9 @@ type StackSetOperation struct { // This information will only be present for stack set operations whose Action // type is DETECT_DRIFT . // - // For more information, see [Detecting Unmanaged Changes in Stack Sets] in the CloudFormation User Guide. + // For more information, see [Detect stack set drift] in the CloudFormation User Guide. // - // [Detecting Unmanaged Changes in Stack Sets]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-drift.html + // [Detect stack set drift]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-drift.html StackSetDriftDetectionDetails *StackSetDriftDetectionDetails // The ID of the stack set. @@ -2258,7 +2270,7 @@ type StackSetOperation struct { // - SUCCEEDED : The operation completed creating or updating all the specified // stacks without exceeding the failure tolerance for the operation. // - // [stack set operation status codes]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-status-codes + // [stack set operation status codes]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html#stackset-status-codes Status StackSetOperationStatus // Detailed information about the StackSet operation. @@ -2276,7 +2288,7 @@ type StackSetOperation struct { // For more information about maximum concurrent accounts and failure tolerance, // see [Stack set operation options]. // -// [Stack set operation options]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options +// [Stack set operation options]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html#stackset-ops-options type StackSetOperationPreferences struct { // Specifies how the concurrency level behaves during the operation execution. @@ -2454,7 +2466,7 @@ type StackSetOperationSummary struct { // For more information about maximum concurrent accounts and failure tolerance, // see [Stack set operation options]. // - // [Stack set operation options]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options + // [Stack set operation options]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html#stackset-ops-options OperationPreferences *StackSetOperationPreferences // The overall status of the operation. @@ -2480,7 +2492,7 @@ type StackSetOperationSummary struct { // - SUCCEEDED : The operation completed creating or updating all the specified // stacks without exceeding the failure tolerance for the operation. // - // [stack set operation status codes]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-status-codes + // [stack set operation status codes]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html#stackset-status-codes Status StackSetOperationStatus // Detailed information about the stack set operation. @@ -2579,9 +2591,9 @@ type StackSummary struct { // Summarizes information about whether a stack's actual configuration differs, or // has drifted, from its expected configuration, as defined in the stack template - // and any values specified as template parameters. For more information, see [Detecting Unregulated Configuration Changes to Stacks and Resources]. + // and any values specified as template parameters. For more information, see [Detect unmanaged configuration changes to stacks and resources with drift detection]. // - // [Detecting Unregulated Configuration Changes to Stacks and Resources]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html + // [Detect unmanaged configuration changes to stacks and resources with drift detection]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html DriftInformation *StackDriftInformationSummary // The time the stack was last updated. This field will only be returned if the @@ -2592,17 +2604,17 @@ type StackSummary struct { // of the direct parent of this stack. For the first level of nested stacks, the // root stack is also the parent stack. // - // For more information, see [Working with Nested Stacks] in the CloudFormation User Guide. + // For more information, see [Embed stacks within other stacks using nested stacks] in the CloudFormation User Guide. // - // [Working with Nested Stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html + // [Embed stacks within other stacks using nested stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html ParentId *string // For nested stacks--stacks created as resources for another stack--the stack ID // of the top-level stack to which the nested stack ultimately belongs. // - // For more information, see [Working with Nested Stacks] in the CloudFormation User Guide. + // For more information, see [Embed stacks within other stacks using nested stacks] in the CloudFormation User Guide. // - // [Working with Nested Stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html + // [Embed stacks within other stacks using nested stacks]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html RootId *string // Unique stack identifier. @@ -2622,8 +2634,8 @@ type StackSummary struct { type Tag struct { // Required. A string used to identify this tag. You can specify a maximum of 128 - // characters for a tag key. Tags owned by Amazon Web Services (Amazon Web - // Services) have the reserved prefix: aws: . + // characters for a tag key. Tags owned by Amazon Web Services have the reserved + // prefix: aws: . // // This member is required. Key *string @@ -2769,9 +2781,9 @@ type TemplateSummaryConfig struct { // Detailed information concerning the specification of a CloudFormation extension // in a given account and Region. // -// For more information, see [Configuring extensions at the account level] in the CloudFormation User Guide. +// For more information, see [Edit configuration data for extensions in your account] in the CloudFormation User Guide. // -// [Configuring extensions at the account level]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-private.html#registry-set-configuration +// [Edit configuration data for extensions in your account]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-set-configuration.html type TypeConfigurationDetails struct { // The alias specified for this configuration, if one was specified when the @@ -2918,14 +2930,14 @@ type TypeSummary struct { // For public extensions that have been activated for this account and Region, the // latest version of the public extension that is available. For any extensions - // other than activated third-arty extensions, CloudFormation returns null . + // other than activated third-party extensions, CloudFormation returns null . // // How you specified AutoUpdate when enabling the extension affects whether // CloudFormation automatically updates the extension in this account and Region - // when a new version is released. For more information, see [Setting CloudFormation to automatically use new versions of extensions]in the CloudFormation + // when a new version is released. For more information, see [Automatically use new versions of extensions]in the CloudFormation // User Guide. // - // [Setting CloudFormation to automatically use new versions of extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-auto + // [Automatically use new versions of extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-auto LatestPublicVersion *string // For public extensions that have been activated for this account and Region, the @@ -2934,9 +2946,9 @@ type TypeSummary struct { // If you specified a TypeNameAlias when enabling the extension in this account // and Region, CloudFormation treats that alias as the extension's type name within // the account and Region, not the type name of the public extension. For more - // information, see [Specifying aliases to refer to extensions]in the CloudFormation User Guide. + // information, see [Use aliases to refer to extensions]in the CloudFormation User Guide. // - // [Specifying aliases to refer to extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-alias + // [Use aliases to refer to extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-alias OriginalTypeName *string // For public extensions that have been activated for this account and Region, the @@ -2945,10 +2957,10 @@ type TypeSummary struct { // // How you specified AutoUpdate when enabling the extension affects whether // CloudFormation automatically updates the extension in this account and Region - // when a new version is released. For more information, see [Setting CloudFormation to automatically use new versions of extensions]in the CloudFormation + // when a new version is released. For more information, see [Automatically use new versions of extensions]in the CloudFormation // User Guide. // - // [Setting CloudFormation to automatically use new versions of extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-auto + // [Automatically use new versions of extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-auto PublicVersionNumber *string // The ID of the extension publisher, if the extension is published by a third @@ -2957,9 +2969,10 @@ type TypeSummary struct { // The service used to verify the publisher identity. // - // For more information, see [Registering your account to publish CloudFormation extensions] in the CFN-CLI User Guide for Extension Development. + // For more information, see [Publishing extensions to make them available for public use] in the CloudFormation Command Line Interface (CLI) + // User Guide. // - // [Registering your account to publish CloudFormation extensions]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html + // [Publishing extensions to make them available for public use]: https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/publish-extension.html PublisherIdentity IdentityProvider // The publisher name, as defined in the public profile for that publisher in the @@ -3002,15 +3015,15 @@ type TypeVersionSummary struct { // For public extensions that have been activated for this account and Region, the // version of the public extension to be used for CloudFormation operations in this - // account and Region. For any extensions other than activated third-arty + // account and Region. For any extensions other than activated third-party // extensions, CloudFormation returns null . // // How you specified AutoUpdate when enabling the extension affects whether // CloudFormation automatically updates the extension in this account and Region - // when a new version is released. For more information, see [Setting CloudFormation to automatically use new versions of extensions]in the CloudFormation + // when a new version is released. For more information, see [Automatically use new versions of extensions]in the CloudFormation // User Guide. // - // [Setting CloudFormation to automatically use new versions of extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-auto + // [Automatically use new versions of extensions]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry-public.html#registry-public-enable-auto PublicVersionNumber *string // When the version was registered. @@ -3036,7 +3049,7 @@ type WarningDetail struct { // The properties of the resource that are impacted by this warning. Properties []WarningProperty - // The type of this warning. For more information, see [IaC generator and write-only properties] in the CloudFormation User + // The type of this warning. For more information, see [Resolve write-only properties] in the CloudFormation User // Guide. // // - MUTUALLY_EXCLUSIVE_PROPERTIES - The resource requires mutually-exclusive @@ -3058,7 +3071,7 @@ type WarningDetail struct { // if a property uses a type of oneOf or anyOf . You need to look at the resource // provider schema. // - // [IaC generator and write-only properties]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/generate-IaC-write-only-properties.html + // [Resolve write-only properties]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/generate-IaC-write-only-properties.html Type WarningType noSmithyDocumentSerde diff --git a/service/codebuild/api_op_CreateFleet.go b/service/codebuild/api_op_CreateFleet.go index 7a91b6b6d5c..20172eeef3c 100644 --- a/service/codebuild/api_op_CreateFleet.go +++ b/service/codebuild/api_op_CreateFleet.go @@ -150,6 +150,9 @@ type CreateFleetInput struct { // [Example policy statement to allow CodeBuild access to Amazon Web Services services required to create a VPC network interface]: https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface OverflowBehavior types.FleetOverflowBehavior + // The proxy configuration of the compute fleet. + ProxyConfiguration *types.ProxyConfiguration + // The scaling configuration of the compute fleet. ScalingConfiguration *types.ScalingConfigurationInput diff --git a/service/codebuild/api_op_UpdateFleet.go b/service/codebuild/api_op_UpdateFleet.go index ef123b7968a..4c7b9751989 100644 --- a/service/codebuild/api_op_UpdateFleet.go +++ b/service/codebuild/api_op_UpdateFleet.go @@ -144,6 +144,9 @@ type UpdateFleetInput struct { // [Example policy statement to allow CodeBuild access to Amazon Web Services services required to create a VPC network interface]: https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface OverflowBehavior types.FleetOverflowBehavior + // The proxy configuration of the compute fleet. + ProxyConfiguration *types.ProxyConfiguration + // The scaling configuration of the compute fleet. ScalingConfiguration *types.ScalingConfigurationInput diff --git a/service/codebuild/deserializers.go b/service/codebuild/deserializers.go index 8899617432f..5d70745cde2 100644 --- a/service/codebuild/deserializers.go +++ b/service/codebuild/deserializers.go @@ -8569,6 +8569,11 @@ func awsAwsjson11_deserializeDocumentFleet(v **types.Fleet, value interface{}) e sv.OverflowBehavior = types.FleetOverflowBehavior(jtv) } + case "proxyConfiguration": + if err := awsAwsjson11_deserializeDocumentProxyConfiguration(&sv.ProxyConfiguration, value); err != nil { + return err + } + case "scalingConfiguration": if err := awsAwsjson11_deserializeDocumentScalingConfigurationOutput(&sv.ScalingConfiguration, value); err != nil { return err @@ -8670,6 +8675,130 @@ func awsAwsjson11_deserializeDocumentFleetNames(v *[]string, value interface{}) return nil } +func awsAwsjson11_deserializeDocumentFleetProxyRule(v **types.FleetProxyRule, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.FleetProxyRule + if *v == nil { + sv = &types.FleetProxyRule{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "effect": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected FleetProxyRuleEffectType to be of type string, got %T instead", value) + } + sv.Effect = types.FleetProxyRuleEffectType(jtv) + } + + case "entities": + if err := awsAwsjson11_deserializeDocumentFleetProxyRuleEntities(&sv.Entities, value); err != nil { + return err + } + + case "type": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected FleetProxyRuleType to be of type string, got %T instead", value) + } + sv.Type = types.FleetProxyRuleType(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsAwsjson11_deserializeDocumentFleetProxyRuleEntities(v *[]string, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []string + if *v == nil { + cv = []string{} + } else { + cv = *v + } + + for _, value := range shape { + var col string + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + col = jtv + } + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsAwsjson11_deserializeDocumentFleetProxyRules(v *[]types.FleetProxyRule, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.FleetProxyRule + if *v == nil { + cv = []types.FleetProxyRule{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.FleetProxyRule + destAddr := &col + if err := awsAwsjson11_deserializeDocumentFleetProxyRule(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsAwsjson11_deserializeDocumentFleets(v *[]types.Fleet, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -10431,6 +10560,51 @@ func awsAwsjson11_deserializeDocumentProjectSourceVersion(v **types.ProjectSourc return nil } +func awsAwsjson11_deserializeDocumentProxyConfiguration(v **types.ProxyConfiguration, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.ProxyConfiguration + if *v == nil { + sv = &types.ProxyConfiguration{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "defaultBehavior": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected FleetProxyRuleBehavior to be of type string, got %T instead", value) + } + sv.DefaultBehavior = types.FleetProxyRuleBehavior(jtv) + } + + case "orderedProxyRules": + if err := awsAwsjson11_deserializeDocumentFleetProxyRules(&sv.OrderedProxyRules, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsAwsjson11_deserializeDocumentRegistryCredential(v **types.RegistryCredential, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/codebuild/serializers.go b/service/codebuild/serializers.go index 6079ecf830c..a0dfd9e852a 100644 --- a/service/codebuild/serializers.go +++ b/service/codebuild/serializers.go @@ -3244,6 +3244,54 @@ func awsAwsjson11_serializeDocumentFleetNames(v []string, value smithyjson.Value return nil } +func awsAwsjson11_serializeDocumentFleetProxyRule(v *types.FleetProxyRule, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if len(v.Effect) > 0 { + ok := object.Key("effect") + ok.String(string(v.Effect)) + } + + if v.Entities != nil { + ok := object.Key("entities") + if err := awsAwsjson11_serializeDocumentFleetProxyRuleEntities(v.Entities, ok); err != nil { + return err + } + } + + if len(v.Type) > 0 { + ok := object.Key("type") + ok.String(string(v.Type)) + } + + return nil +} + +func awsAwsjson11_serializeDocumentFleetProxyRuleEntities(v []string, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + av.String(v[i]) + } + return nil +} + +func awsAwsjson11_serializeDocumentFleetProxyRules(v []types.FleetProxyRule, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + if err := awsAwsjson11_serializeDocumentFleetProxyRule(&v[i], av); err != nil { + return err + } + } + return nil +} + func awsAwsjson11_serializeDocumentGitSubmodulesConfig(v *types.GitSubmodulesConfig, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -3648,6 +3696,25 @@ func awsAwsjson11_serializeDocumentProjectSourceVersion(v *types.ProjectSourceVe return nil } +func awsAwsjson11_serializeDocumentProxyConfiguration(v *types.ProxyConfiguration, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if len(v.DefaultBehavior) > 0 { + ok := object.Key("defaultBehavior") + ok.String(string(v.DefaultBehavior)) + } + + if v.OrderedProxyRules != nil { + ok := object.Key("orderedProxyRules") + if err := awsAwsjson11_serializeDocumentFleetProxyRules(v.OrderedProxyRules, ok); err != nil { + return err + } + } + + return nil +} + func awsAwsjson11_serializeDocumentRegistryCredential(v *types.RegistryCredential, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -4142,6 +4209,13 @@ func awsAwsjson11_serializeOpDocumentCreateFleetInput(v *CreateFleetInput, value ok.String(string(v.OverflowBehavior)) } + if v.ProxyConfiguration != nil { + ok := object.Key("proxyConfiguration") + if err := awsAwsjson11_serializeDocumentProxyConfiguration(v.ProxyConfiguration, ok); err != nil { + return err + } + } + if v.ScalingConfiguration != nil { ok := object.Key("scalingConfiguration") if err := awsAwsjson11_serializeDocumentScalingConfigurationInput(v.ScalingConfiguration, ok); err != nil { @@ -5453,6 +5527,13 @@ func awsAwsjson11_serializeOpDocumentUpdateFleetInput(v *UpdateFleetInput, value ok.String(string(v.OverflowBehavior)) } + if v.ProxyConfiguration != nil { + ok := object.Key("proxyConfiguration") + if err := awsAwsjson11_serializeDocumentProxyConfiguration(v.ProxyConfiguration, ok); err != nil { + return err + } + } + if v.ScalingConfiguration != nil { ok := object.Key("scalingConfiguration") if err := awsAwsjson11_serializeDocumentScalingConfigurationInput(v.ScalingConfiguration, ok); err != nil { diff --git a/service/codebuild/types/enums.go b/service/codebuild/types/enums.go index 4f4e0184fd9..c112f21bfb3 100644 --- a/service/codebuild/types/enums.go +++ b/service/codebuild/types/enums.go @@ -399,6 +399,63 @@ func (FleetOverflowBehavior) Values() []FleetOverflowBehavior { } } +type FleetProxyRuleBehavior string + +// Enum values for FleetProxyRuleBehavior +const ( + FleetProxyRuleBehaviorAllowAll FleetProxyRuleBehavior = "ALLOW_ALL" + FleetProxyRuleBehaviorDenyAll FleetProxyRuleBehavior = "DENY_ALL" +) + +// Values returns all known values for FleetProxyRuleBehavior. Note that this can +// be expanded in the future, and so it is only as up to date as the client. +// +// The ordering of this slice is not guaranteed to be stable across updates. +func (FleetProxyRuleBehavior) Values() []FleetProxyRuleBehavior { + return []FleetProxyRuleBehavior{ + "ALLOW_ALL", + "DENY_ALL", + } +} + +type FleetProxyRuleEffectType string + +// Enum values for FleetProxyRuleEffectType +const ( + FleetProxyRuleEffectTypeAllow FleetProxyRuleEffectType = "ALLOW" + FleetProxyRuleEffectTypeDeny FleetProxyRuleEffectType = "DENY" +) + +// Values returns all known values for FleetProxyRuleEffectType. Note that this +// can be expanded in the future, and so it is only as up to date as the client. +// +// The ordering of this slice is not guaranteed to be stable across updates. +func (FleetProxyRuleEffectType) Values() []FleetProxyRuleEffectType { + return []FleetProxyRuleEffectType{ + "ALLOW", + "DENY", + } +} + +type FleetProxyRuleType string + +// Enum values for FleetProxyRuleType +const ( + FleetProxyRuleTypeDomain FleetProxyRuleType = "DOMAIN" + FleetProxyRuleTypeIp FleetProxyRuleType = "IP" +) + +// Values returns all known values for FleetProxyRuleType. Note that this can be +// expanded in the future, and so it is only as up to date as the client. +// +// The ordering of this slice is not guaranteed to be stable across updates. +func (FleetProxyRuleType) Values() []FleetProxyRuleType { + return []FleetProxyRuleType{ + "DOMAIN", + "IP", + } +} + type FleetScalingMetricType string // Enum values for FleetScalingMetricType @@ -991,6 +1048,7 @@ const ( WebhookFilterTypeWorkflowName WebhookFilterType = "WORKFLOW_NAME" WebhookFilterTypeTagName WebhookFilterType = "TAG_NAME" WebhookFilterTypeReleaseName WebhookFilterType = "RELEASE_NAME" + WebhookFilterTypeRepositoryName WebhookFilterType = "REPOSITORY_NAME" ) // Values returns all known values for WebhookFilterType. Note that this can be @@ -1008,6 +1066,7 @@ func (WebhookFilterType) Values() []WebhookFilterType { "WORKFLOW_NAME", "TAG_NAME", "RELEASE_NAME", + "REPOSITORY_NAME", } } diff --git a/service/codebuild/types/types.go b/service/codebuild/types/types.go index f4dca30cdbe..89ce645e494 100644 --- a/service/codebuild/types/types.go +++ b/service/codebuild/types/types.go @@ -998,6 +998,9 @@ type Fleet struct { // [Example policy statement to allow CodeBuild access to Amazon Web Services services required to create a VPC network interface]: https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface OverflowBehavior FleetOverflowBehavior + // The proxy configuration of the compute fleet. + ProxyConfiguration *ProxyConfiguration + // The scaling configuration of the compute fleet. ScalingConfiguration *ScalingConfigurationOutput @@ -1016,6 +1019,27 @@ type Fleet struct { noSmithyDocumentSerde } +// Information about the proxy rule for your reserved capacity instances. +type FleetProxyRule struct { + + // The behavior of the proxy rule. + // + // This member is required. + Effect FleetProxyRuleEffectType + + // The destination of the proxy rule. + // + // This member is required. + Entities []string + + // The type of proxy rule. + // + // This member is required. + Type FleetProxyRuleType + + noSmithyDocumentSerde +} + // The status of the compute fleet. type FleetStatus struct { @@ -1989,6 +2013,20 @@ type ProjectSourceVersion struct { noSmithyDocumentSerde } +// Information about the proxy configurations that apply network access control to +// your reserved capacity instances. +type ProxyConfiguration struct { + + // The default behavior of outgoing traffic. + DefaultBehavior FleetProxyRuleBehavior + + // An array of FleetProxyRule objects that represent the specified destination + // domains or IPs to allow or deny network access control to. + OrderedProxyRules []FleetProxyRule + + noSmithyDocumentSerde +} + // Information about credentials that provide access to a private Docker // // registry. When this is set: diff --git a/service/codebuild/validators.go b/service/codebuild/validators.go index 38dcddfe6e6..ed0a66a344e 100644 --- a/service/codebuild/validators.go +++ b/service/codebuild/validators.go @@ -982,6 +982,44 @@ func validateFilterGroups(v [][]types.WebhookFilter) error { } } +func validateFleetProxyRule(v *types.FleetProxyRule) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "FleetProxyRule"} + if len(v.Type) == 0 { + invalidParams.Add(smithy.NewErrParamRequired("Type")) + } + if len(v.Effect) == 0 { + invalidParams.Add(smithy.NewErrParamRequired("Effect")) + } + if v.Entities == nil { + invalidParams.Add(smithy.NewErrParamRequired("Entities")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateFleetProxyRules(v []types.FleetProxyRule) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "FleetProxyRules"} + for i := range v { + if err := validateFleetProxyRule(&v[i]); err != nil { + invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateGitSubmodulesConfig(v *types.GitSubmodulesConfig) error { if v == nil { return nil @@ -1174,6 +1212,23 @@ func validateProjectSourceVersion(v *types.ProjectSourceVersion) error { } } +func validateProxyConfiguration(v *types.ProxyConfiguration) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "ProxyConfiguration"} + if v.OrderedProxyRules != nil { + if err := validateFleetProxyRules(v.OrderedProxyRules); err != nil { + invalidParams.AddNested("OrderedProxyRules", err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateRegistryCredential(v *types.RegistryCredential) error { if v == nil { return nil @@ -1380,6 +1435,11 @@ func validateOpCreateFleetInput(v *CreateFleetInput) error { if len(v.ComputeType) == 0 { invalidParams.Add(smithy.NewErrParamRequired("ComputeType")) } + if v.ProxyConfiguration != nil { + if err := validateProxyConfiguration(v.ProxyConfiguration); err != nil { + invalidParams.AddNested("ProxyConfiguration", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { @@ -1932,6 +1992,11 @@ func validateOpUpdateFleetInput(v *UpdateFleetInput) error { if v.Arn == nil { invalidParams.Add(smithy.NewErrParamRequired("Arn")) } + if v.ProxyConfiguration != nil { + if err := validateProxyConfiguration(v.ProxyConfiguration); err != nil { + invalidParams.AddNested("ProxyConfiguration", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { diff --git a/service/ivs/deserializers.go b/service/ivs/deserializers.go index d2da4581c08..e993381288f 100644 --- a/service/ivs/deserializers.go +++ b/service/ivs/deserializers.go @@ -7313,6 +7313,15 @@ func awsRestjson1_deserializeDocumentStreamEvent(v **types.StreamEvent, value in for key, value := range shape { switch key { + case "code": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Code = ptr.String(jtv) + } + case "eventTime": if value != nil { jtv, ok := value.(string) diff --git a/service/ivs/types/types.go b/service/ivs/types/types.go index 4356c5b2f6e..37956f1646f 100644 --- a/service/ivs/types/types.go +++ b/service/ivs/types/types.go @@ -529,6 +529,22 @@ type Stream struct { // [Using Amazon EventBridge with Amazon IVS]: https://docs.aws.amazon.com/ivs/latest/userguide/eventbridge.html type StreamEvent struct { + // Provides additional details about the stream event. There are several values; + // note that the long descriptions are provided in the IVS console but not + // delivered through the IVS API or EventBridge: + // + // - StreamTakeoverMediaMismatch — The broadcast client attempted to take over + // with different media properties (e.g., codec, resolution, or video track type) + // from the original stream. + // + // - StreamTakeoverInvalidPriority — The broadcast client attempted a takeover + // with either a priority integer value equal to or lower than the original + // stream's value or a value outside the allowed range of 1 to 2,147,483,647. + // + // - StreamTakeoverLimitBreached — The broadcast client reached the maximum + // allowed takeover attempts for this stream. + Code *string + // Time when the event occurred. This is an ISO 8601 timestamp; note that this is // returned as a string. EventTime *time.Time diff --git a/service/qbusiness/api_op_Chat.go b/service/qbusiness/api_op_Chat.go index 2d34b84c2e6..d2740724fd0 100644 --- a/service/qbusiness/api_op_Chat.go +++ b/service/qbusiness/api_op_Chat.go @@ -48,7 +48,7 @@ type ChatInput struct { // The identifier used to associate a user message with a AI generated response. ParentMessageId *string - // The groups that a user associated with the chat input belongs to. + // The group names that a user associated with the chat input belongs to. UserGroups []string // The identifier of the user attached to the chat input. diff --git a/service/qbusiness/api_op_ChatSync.go b/service/qbusiness/api_op_ChatSync.go index ee3233284f6..ea3b1eb228d 100644 --- a/service/qbusiness/api_op_ChatSync.go +++ b/service/qbusiness/api_op_ChatSync.go @@ -82,7 +82,7 @@ type ChatSyncInput struct { // The identifier of the previous system message in a conversation. ParentMessageId *string - // The groups that a user associated with the chat input belongs to. + // The group names that a user associated with the chat input belongs to. UserGroups []string // The identifier of the user attached to the chat input. diff --git a/service/qbusiness/api_op_CreateApplication.go b/service/qbusiness/api_op_CreateApplication.go index 4d53289cb05..ee9e535a25f 100644 --- a/service/qbusiness/api_op_CreateApplication.go +++ b/service/qbusiness/api_op_CreateApplication.go @@ -81,7 +81,10 @@ type CreateApplicationInput struct { QAppsConfiguration *types.QAppsConfiguration // The Amazon Resource Name (ARN) of an IAM role with permissions to access your - // Amazon CloudWatch logs and metrics. + // Amazon CloudWatch logs and metrics. If this property is not specified, Amazon Q + // Business will create a [service linked role (SLR)]and use it as the application's role. + // + // [service linked role (SLR)]: https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/using-service-linked-roles.html#slr-permissions RoleArn *string // A list of key-value pairs that identify or categorize your Amazon Q Business diff --git a/service/qbusiness/api_op_CreateWebExperience.go b/service/qbusiness/api_op_CreateWebExperience.go index dd1b950d9d9..bcb58acb274 100644 --- a/service/qbusiness/api_op_CreateWebExperience.go +++ b/service/qbusiness/api_op_CreateWebExperience.go @@ -42,6 +42,16 @@ type CreateWebExperienceInput struct { // an Amazon Q Business web experience. IdentityProviderConfiguration types.IdentityProviderConfiguration + // Sets the website domain origins that are allowed to embed the Amazon Q Business + // web experience. + // + // The domain origin refers to the base URL for accessing a website including the + // protocol ( http/https ), the domain name, and the port number (if specified). + // + // You must only submit a base URL and not a full path. For example, + // https://docs.aws.amazon.com . + Origins []string + // The Amazon Resource Name (ARN) of the service role attached to your web // experience. // diff --git a/service/qbusiness/api_op_GetWebExperience.go b/service/qbusiness/api_op_GetWebExperience.go index f11cfad5987..73fb0f2064d 100644 --- a/service/qbusiness/api_op_GetWebExperience.go +++ b/service/qbusiness/api_op_GetWebExperience.go @@ -71,6 +71,13 @@ type GetWebExperienceOutput struct { // an Amazon Q Business web experience. IdentityProviderConfiguration types.IdentityProviderConfiguration + // Gets the website domain origins that are allowed to embed the Amazon Q Business + // web experience. + // + // The domain origin refers to the base URL for accessing a website including the + // protocol ( http/https ), the domain name, and the port number (if specified). + Origins []string + // The Amazon Resource Name (ARN) of the service role attached to your web // experience. RoleArn *string diff --git a/service/qbusiness/api_op_UpdateWebExperience.go b/service/qbusiness/api_op_UpdateWebExperience.go index b79ac025050..656f6bbbc0b 100644 --- a/service/qbusiness/api_op_UpdateWebExperience.go +++ b/service/qbusiness/api_op_UpdateWebExperience.go @@ -50,6 +50,19 @@ type UpdateWebExperienceInput struct { // an Amazon Q Business web experience. IdentityProviderConfiguration types.IdentityProviderConfiguration + // Updates the website domain origins that are allowed to embed the Amazon Q + // Business web experience. + // + // The domain origin refers to the base URL for accessing a website including the + // protocol ( http/https ), the domain name, and the port number (if specified). + // + // - Any values except null submitted as part of this update will replace all + // previous values. + // + // - You must only submit a base URL and not a full path. For example, + // https://docs.aws.amazon.com . + Origins []string + // The Amazon Resource Name (ARN) of the role with permission to access the Amazon // Q Business web experience and required resources. RoleArn *string diff --git a/service/qbusiness/deserializers.go b/service/qbusiness/deserializers.go index b7bfa853790..326dbe928b5 100644 --- a/service/qbusiness/deserializers.go +++ b/service/qbusiness/deserializers.go @@ -5082,6 +5082,11 @@ func awsRestjson1_deserializeOpDocumentGetWebExperienceOutput(v **GetWebExperien return err } + case "origins": + if err := awsRestjson1_deserializeDocumentWebExperienceOrigins(&sv.Origins, value); err != nil { + return err + } + case "roleArn": if value != nil { jtv, ok := value.(string) @@ -15534,6 +15539,42 @@ loop: return nil } +func awsRestjson1_deserializeDocumentWebExperienceOrigins(v *[]string, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []string + if *v == nil { + cv = []string{} + } else { + cv = *v + } + + for _, value := range shape { + var col string + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Origin to be of type string, got %T instead", value) + } + col = jtv + } + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocumentWebExperiences(v *[]types.WebExperience, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/qbusiness/serializers.go b/service/qbusiness/serializers.go index 553b5547acc..31a9222c319 100644 --- a/service/qbusiness/serializers.go +++ b/service/qbusiness/serializers.go @@ -1383,6 +1383,13 @@ func awsRestjson1_serializeOpDocumentCreateWebExperienceInput(v *CreateWebExperi } } + if v.Origins != nil { + ok := object.Key("origins") + if err := awsRestjson1_serializeDocumentWebExperienceOrigins(v.Origins, ok); err != nil { + return err + } + } + if v.RoleArn != nil { ok := object.Key("roleArn") ok.String(*v.RoleArn) @@ -5568,6 +5575,13 @@ func awsRestjson1_serializeOpDocumentUpdateWebExperienceInput(v *UpdateWebExperi } } + if v.Origins != nil { + ok := object.Key("origins") + if err := awsRestjson1_serializeDocumentWebExperienceOrigins(v.Origins, ok); err != nil { + return err + } + } + if v.RoleArn != nil { ok := object.Key("roleArn") ok.String(*v.RoleArn) @@ -7563,3 +7577,14 @@ func awsRestjson1_serializeDocumentWebExperienceAuthConfiguration(v types.WebExp } return nil } + +func awsRestjson1_serializeDocumentWebExperienceOrigins(v []string, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + av.String(v[i]) + } + return nil +} diff --git a/service/qbusiness/types/types.go b/service/qbusiness/types/types.go index 17064b7f04b..20396122a81 100644 --- a/service/qbusiness/types/types.go +++ b/service/qbusiness/types/types.go @@ -1976,7 +1976,7 @@ type PrincipalUser struct { noSmithyDocumentSerde } -// Configuration information about Amazon Q Apps. (preview feature) +// Configuration information about Amazon Q Apps. type QAppsConfiguration struct { // Status information about whether end users can create and use Amazon Q Apps in @@ -2359,11 +2359,11 @@ type UserAlias struct { noSmithyDocumentSerde } -// Provides information about users and groups associated with a topic control -// rule. +// Provides information about users and group names associated with a topic +// control rule. type UsersAndGroups struct { - // The user groups associated with a topic control rule. + // The user group names associated with a topic control rule. UserGroups []string // The user ids associated with a topic control rule. diff --git a/service/redshift/api_op_CreateCluster.go b/service/redshift/api_op_CreateCluster.go index 742604bfb81..6ab28fba9ee 100644 --- a/service/redshift/api_op_CreateCluster.go +++ b/service/redshift/api_op_CreateCluster.go @@ -83,7 +83,8 @@ type CreateClusterInput struct { // The node type to be provisioned for the cluster. For information about node // types, go to [Working with Clusters]in the Amazon Redshift Cluster Management Guide. // - // Valid Values: dc2.large | dc2.8xlarge | ra3.xlplus | ra3.4xlarge | ra3.16xlarge + // Valid Values: dc2.large | dc2.8xlarge | ra3.large | ra3.xlplus | ra3.4xlarge | + // ra3.16xlarge // // [Working with Clusters]: https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#how-many-nodes // diff --git a/service/redshift/api_op_CreateIntegration.go b/service/redshift/api_op_CreateIntegration.go new file mode 100644 index 00000000000..b858ac252cc --- /dev/null +++ b/service/redshift/api_op_CreateIntegration.go @@ -0,0 +1,226 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package redshift + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/redshift/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" + "time" +) + +// Creates a zero-ETL integration with Amazon Redshift. +func (c *Client) CreateIntegration(ctx context.Context, params *CreateIntegrationInput, optFns ...func(*Options)) (*CreateIntegrationOutput, error) { + if params == nil { + params = &CreateIntegrationInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "CreateIntegration", params, optFns, c.addOperationCreateIntegrationMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*CreateIntegrationOutput) + out.ResultMetadata = metadata + return out, nil +} + +type CreateIntegrationInput struct { + + // The name of the integration. + // + // This member is required. + IntegrationName *string + + // The Amazon Resource Name (ARN) of the database to use as the source for + // replication. + // + // This member is required. + SourceArn *string + + // The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as + // the target for replication. + // + // This member is required. + TargetArn *string + + // An optional set of non-secret key–value pairs that contains additional + // contextual information about the data. For more information, see [Encryption context]in the Amazon + // Web Services Key Management Service Developer Guide. + // + // You can only include this parameter if you specify the KMSKeyId parameter. + // + // [Encryption context]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context + AdditionalEncryptionContext map[string]string + + // A description of the integration. + Description *string + + // An Key Management Service (KMS) key identifier for the key to use to encrypt + // the integration. If you don't specify an encryption key, the default Amazon Web + // Services owned key is used. + KMSKeyId *string + + // A list of tags. + TagList []types.Tag + + noSmithyDocumentSerde +} + +type CreateIntegrationOutput struct { + + // The encryption context for the integration. For more information, see [Encryption context] in the + // Amazon Web Services Key Management Service Developer Guide. + // + // [Encryption context]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context + AdditionalEncryptionContext map[string]string + + // The time (UTC) when the integration was created. + CreateTime *time.Time + + // The description of the integration. + Description *string + + // Any errors associated with the integration. + Errors []types.IntegrationError + + // The Amazon Resource Name (ARN) of the integration. + IntegrationArn *string + + // The name of the integration. + IntegrationName *string + + // The Key Management Service (KMS) key identifier for the key used to encrypt the + // integration. + KMSKeyId *string + + // The Amazon Resource Name (ARN) of the database used as the source for + // replication. + SourceArn *string + + // The current status of the integration. + Status types.ZeroETLIntegrationStatus + + // The list of tags associated with the integration. + Tags []types.Tag + + // The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as + // the target for replication. + TargetArn *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationCreateIntegrationMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsAwsquery_serializeOpCreateIntegration{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsAwsquery_deserializeOpCreateIntegration{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "CreateIntegration"); err != nil { + return fmt.Errorf("add protocol finalizers: %v", err) + } + + if err = addlegacyEndpointContextSetter(stack, options); err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = addClientRequestID(stack); err != nil { + return err + } + if err = addComputeContentLength(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = addComputePayloadSHA256(stack); err != nil { + return err + } + if err = addRetry(stack, options); err != nil { + return err + } + if err = addRawResponseToMetadata(stack); err != nil { + return err + } + if err = addRecordResponseTiming(stack); err != nil { + return err + } + if err = addSpanRetryLoop(stack, options); err != nil { + return err + } + if err = addClientUserAgent(stack, options); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil { + return err + } + if err = addTimeOffsetBuild(stack, c); err != nil { + return err + } + if err = addUserAgentRetryMode(stack, options); err != nil { + return err + } + if err = addOpCreateIntegrationValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateIntegration(options.Region), middleware.Before); err != nil { + return err + } + if err = addRecursionDetection(stack); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + if err = addDisableHTTPSMiddleware(stack, options); err != nil { + return err + } + if err = addSpanInitializeStart(stack); err != nil { + return err + } + if err = addSpanInitializeEnd(stack); err != nil { + return err + } + if err = addSpanBuildRequestStart(stack); err != nil { + return err + } + if err = addSpanBuildRequestEnd(stack); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opCreateIntegration(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "CreateIntegration", + } +} diff --git a/service/redshift/api_op_DeleteIntegration.go b/service/redshift/api_op_DeleteIntegration.go new file mode 100644 index 00000000000..a0833ae00a8 --- /dev/null +++ b/service/redshift/api_op_DeleteIntegration.go @@ -0,0 +1,194 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package redshift + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/redshift/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" + "time" +) + +// Deletes a zero-ETL integration with Amazon Redshift. +func (c *Client) DeleteIntegration(ctx context.Context, params *DeleteIntegrationInput, optFns ...func(*Options)) (*DeleteIntegrationOutput, error) { + if params == nil { + params = &DeleteIntegrationInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "DeleteIntegration", params, optFns, c.addOperationDeleteIntegrationMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*DeleteIntegrationOutput) + out.ResultMetadata = metadata + return out, nil +} + +type DeleteIntegrationInput struct { + + // The unique identifier of the integration to delete. + // + // This member is required. + IntegrationArn *string + + noSmithyDocumentSerde +} + +type DeleteIntegrationOutput struct { + + // The encryption context for the integration. For more information, see [Encryption context] in the + // Amazon Web Services Key Management Service Developer Guide. + // + // [Encryption context]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context + AdditionalEncryptionContext map[string]string + + // The time (UTC) when the integration was created. + CreateTime *time.Time + + // The description of the integration. + Description *string + + // Any errors associated with the integration. + Errors []types.IntegrationError + + // The Amazon Resource Name (ARN) of the integration. + IntegrationArn *string + + // The name of the integration. + IntegrationName *string + + // The Key Management Service (KMS) key identifier for the key used to encrypt the + // integration. + KMSKeyId *string + + // The Amazon Resource Name (ARN) of the database used as the source for + // replication. + SourceArn *string + + // The current status of the integration. + Status types.ZeroETLIntegrationStatus + + // The list of tags associated with the integration. + Tags []types.Tag + + // The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as + // the target for replication. + TargetArn *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationDeleteIntegrationMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsAwsquery_serializeOpDeleteIntegration{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsAwsquery_deserializeOpDeleteIntegration{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "DeleteIntegration"); err != nil { + return fmt.Errorf("add protocol finalizers: %v", err) + } + + if err = addlegacyEndpointContextSetter(stack, options); err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = addClientRequestID(stack); err != nil { + return err + } + if err = addComputeContentLength(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = addComputePayloadSHA256(stack); err != nil { + return err + } + if err = addRetry(stack, options); err != nil { + return err + } + if err = addRawResponseToMetadata(stack); err != nil { + return err + } + if err = addRecordResponseTiming(stack); err != nil { + return err + } + if err = addSpanRetryLoop(stack, options); err != nil { + return err + } + if err = addClientUserAgent(stack, options); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil { + return err + } + if err = addTimeOffsetBuild(stack, c); err != nil { + return err + } + if err = addUserAgentRetryMode(stack, options); err != nil { + return err + } + if err = addOpDeleteIntegrationValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteIntegration(options.Region), middleware.Before); err != nil { + return err + } + if err = addRecursionDetection(stack); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + if err = addDisableHTTPSMiddleware(stack, options); err != nil { + return err + } + if err = addSpanInitializeStart(stack); err != nil { + return err + } + if err = addSpanInitializeEnd(stack); err != nil { + return err + } + if err = addSpanBuildRequestStart(stack); err != nil { + return err + } + if err = addSpanBuildRequestEnd(stack); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opDeleteIntegration(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "DeleteIntegration", + } +} diff --git a/service/redshift/api_op_DescribeIntegrations.go b/service/redshift/api_op_DescribeIntegrations.go new file mode 100644 index 00000000000..5939f67d134 --- /dev/null +++ b/service/redshift/api_op_DescribeIntegrations.go @@ -0,0 +1,281 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package redshift + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/redshift/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Describes one or more zero-ETL integrations with Amazon Redshift. +func (c *Client) DescribeIntegrations(ctx context.Context, params *DescribeIntegrationsInput, optFns ...func(*Options)) (*DescribeIntegrationsOutput, error) { + if params == nil { + params = &DescribeIntegrationsInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "DescribeIntegrations", params, optFns, c.addOperationDescribeIntegrationsMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*DescribeIntegrationsOutput) + out.ResultMetadata = metadata + return out, nil +} + +type DescribeIntegrationsInput struct { + + // A filter that specifies one or more resources to return. + Filters []types.DescribeIntegrationsFilter + + // The unique identifier of the integration. + IntegrationArn *string + + // An optional pagination token provided by a previous DescribeIntegrations + // request. If this parameter is specified, the response includes only records + // beyond the marker, up to the value specified by MaxRecords . + Marker *string + + // The maximum number of response records to return in each call. If the number of + // remaining response records exceeds the specified MaxRecords value, a value is + // returned in a marker field of the response. You can retrieve the next set of + // records by retrying the command with the returned marker value. + // + // Default: 100 + // + // Constraints: minimum 20, maximum 100. + MaxRecords *int32 + + noSmithyDocumentSerde +} + +type DescribeIntegrationsOutput struct { + + // List of integrations that are described. + Integrations []types.Integration + + // A value that indicates the starting point for the next set of response records + // in a subsequent request. If a value is returned in a response, you can retrieve + // the next set of records by providing this returned marker value in the Marker + // parameter and retrying the command. If the Marker field is empty, all response + // records have been retrieved for the request. + Marker *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationDescribeIntegrationsMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsAwsquery_serializeOpDescribeIntegrations{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsAwsquery_deserializeOpDescribeIntegrations{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "DescribeIntegrations"); err != nil { + return fmt.Errorf("add protocol finalizers: %v", err) + } + + if err = addlegacyEndpointContextSetter(stack, options); err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = addClientRequestID(stack); err != nil { + return err + } + if err = addComputeContentLength(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = addComputePayloadSHA256(stack); err != nil { + return err + } + if err = addRetry(stack, options); err != nil { + return err + } + if err = addRawResponseToMetadata(stack); err != nil { + return err + } + if err = addRecordResponseTiming(stack); err != nil { + return err + } + if err = addSpanRetryLoop(stack, options); err != nil { + return err + } + if err = addClientUserAgent(stack, options); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil { + return err + } + if err = addTimeOffsetBuild(stack, c); err != nil { + return err + } + if err = addUserAgentRetryMode(stack, options); err != nil { + return err + } + if err = addOpDescribeIntegrationsValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeIntegrations(options.Region), middleware.Before); err != nil { + return err + } + if err = addRecursionDetection(stack); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + if err = addDisableHTTPSMiddleware(stack, options); err != nil { + return err + } + if err = addSpanInitializeStart(stack); err != nil { + return err + } + if err = addSpanInitializeEnd(stack); err != nil { + return err + } + if err = addSpanBuildRequestStart(stack); err != nil { + return err + } + if err = addSpanBuildRequestEnd(stack); err != nil { + return err + } + return nil +} + +// DescribeIntegrationsPaginatorOptions is the paginator options for +// DescribeIntegrations +type DescribeIntegrationsPaginatorOptions struct { + // The maximum number of response records to return in each call. If the number of + // remaining response records exceeds the specified MaxRecords value, a value is + // returned in a marker field of the response. You can retrieve the next set of + // records by retrying the command with the returned marker value. + // + // Default: 100 + // + // Constraints: minimum 20, maximum 100. + Limit int32 + + // Set to true if pagination should stop if the service returns a pagination token + // that matches the most recent token provided to the service. + StopOnDuplicateToken bool +} + +// DescribeIntegrationsPaginator is a paginator for DescribeIntegrations +type DescribeIntegrationsPaginator struct { + options DescribeIntegrationsPaginatorOptions + client DescribeIntegrationsAPIClient + params *DescribeIntegrationsInput + nextToken *string + firstPage bool +} + +// NewDescribeIntegrationsPaginator returns a new DescribeIntegrationsPaginator +func NewDescribeIntegrationsPaginator(client DescribeIntegrationsAPIClient, params *DescribeIntegrationsInput, optFns ...func(*DescribeIntegrationsPaginatorOptions)) *DescribeIntegrationsPaginator { + if params == nil { + params = &DescribeIntegrationsInput{} + } + + options := DescribeIntegrationsPaginatorOptions{} + if params.MaxRecords != nil { + options.Limit = *params.MaxRecords + } + + for _, fn := range optFns { + fn(&options) + } + + return &DescribeIntegrationsPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.Marker, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *DescribeIntegrationsPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next DescribeIntegrations page. +func (p *DescribeIntegrationsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*DescribeIntegrationsOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.Marker = p.nextToken + + var limit *int32 + if p.options.Limit > 0 { + limit = &p.options.Limit + } + params.MaxRecords = limit + + optFns = append([]func(*Options){ + addIsPaginatorUserAgent, + }, optFns...) + result, err := p.client.DescribeIntegrations(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.Marker + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + +// DescribeIntegrationsAPIClient is a client that implements the +// DescribeIntegrations operation. +type DescribeIntegrationsAPIClient interface { + DescribeIntegrations(context.Context, *DescribeIntegrationsInput, ...func(*Options)) (*DescribeIntegrationsOutput, error) +} + +var _ DescribeIntegrationsAPIClient = (*Client)(nil) + +func newServiceMetadataMiddleware_opDescribeIntegrations(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "DescribeIntegrations", + } +} diff --git a/service/redshift/api_op_DescribeTags.go b/service/redshift/api_op_DescribeTags.go index f6d13b76966..d0f9c5cef07 100644 --- a/service/redshift/api_op_DescribeTags.go +++ b/service/redshift/api_op_DescribeTags.go @@ -92,6 +92,11 @@ type DescribeTagsInput struct { // // - Snapshot copy grant // + // - Integration (zero-ETL integration) + // + // To describe the tags associated with an integration , don't specify ResourceType + // , instead specify the ResourceName of the integration. + // // For more information about Amazon Redshift resource types and constructing // ARNs, go to [Specifying Policy Elements: Actions, Effects, Resources, and Principals]in the Amazon Redshift Cluster Management Guide. // diff --git a/service/redshift/api_op_ModifyCluster.go b/service/redshift/api_op_ModifyCluster.go index b9884ebaaea..b42e72ff3a6 100644 --- a/service/redshift/api_op_ModifyCluster.go +++ b/service/redshift/api_op_ModifyCluster.go @@ -254,7 +254,8 @@ type ModifyClusterInput struct { // For more information about resizing clusters, go to [Resizing Clusters in Amazon Redshift] in the Amazon Redshift // Cluster Management Guide. // - // Valid Values: dc2.large | dc2.8xlarge | ra3.xlplus | ra3.4xlarge | ra3.16xlarge + // Valid Values: dc2.large | dc2.8xlarge | ra3.large | ra3.xlplus | ra3.4xlarge | + // ra3.16xlarge // // [Resizing Clusters in Amazon Redshift]: https://docs.aws.amazon.com/redshift/latest/mgmt/rs-resize-tutorial.html NodeType *string diff --git a/service/redshift/api_op_ModifyIntegration.go b/service/redshift/api_op_ModifyIntegration.go new file mode 100644 index 00000000000..2f148c62b49 --- /dev/null +++ b/service/redshift/api_op_ModifyIntegration.go @@ -0,0 +1,200 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package redshift + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/redshift/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" + "time" +) + +// Modifies a zero-ETL integration with Amazon Redshift. +func (c *Client) ModifyIntegration(ctx context.Context, params *ModifyIntegrationInput, optFns ...func(*Options)) (*ModifyIntegrationOutput, error) { + if params == nil { + params = &ModifyIntegrationInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "ModifyIntegration", params, optFns, c.addOperationModifyIntegrationMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*ModifyIntegrationOutput) + out.ResultMetadata = metadata + return out, nil +} + +type ModifyIntegrationInput struct { + + // The unique identifier of the integration to modify. + // + // This member is required. + IntegrationArn *string + + // A new description for the integration. + Description *string + + // A new name for the integration. + IntegrationName *string + + noSmithyDocumentSerde +} + +type ModifyIntegrationOutput struct { + + // The encryption context for the integration. For more information, see [Encryption context] in the + // Amazon Web Services Key Management Service Developer Guide. + // + // [Encryption context]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context + AdditionalEncryptionContext map[string]string + + // The time (UTC) when the integration was created. + CreateTime *time.Time + + // The description of the integration. + Description *string + + // Any errors associated with the integration. + Errors []types.IntegrationError + + // The Amazon Resource Name (ARN) of the integration. + IntegrationArn *string + + // The name of the integration. + IntegrationName *string + + // The Key Management Service (KMS) key identifier for the key used to encrypt the + // integration. + KMSKeyId *string + + // The Amazon Resource Name (ARN) of the database used as the source for + // replication. + SourceArn *string + + // The current status of the integration. + Status types.ZeroETLIntegrationStatus + + // The list of tags associated with the integration. + Tags []types.Tag + + // The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as + // the target for replication. + TargetArn *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationModifyIntegrationMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsAwsquery_serializeOpModifyIntegration{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsAwsquery_deserializeOpModifyIntegration{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "ModifyIntegration"); err != nil { + return fmt.Errorf("add protocol finalizers: %v", err) + } + + if err = addlegacyEndpointContextSetter(stack, options); err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = addClientRequestID(stack); err != nil { + return err + } + if err = addComputeContentLength(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = addComputePayloadSHA256(stack); err != nil { + return err + } + if err = addRetry(stack, options); err != nil { + return err + } + if err = addRawResponseToMetadata(stack); err != nil { + return err + } + if err = addRecordResponseTiming(stack); err != nil { + return err + } + if err = addSpanRetryLoop(stack, options); err != nil { + return err + } + if err = addClientUserAgent(stack, options); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil { + return err + } + if err = addTimeOffsetBuild(stack, c); err != nil { + return err + } + if err = addUserAgentRetryMode(stack, options); err != nil { + return err + } + if err = addOpModifyIntegrationValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opModifyIntegration(options.Region), middleware.Before); err != nil { + return err + } + if err = addRecursionDetection(stack); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + if err = addDisableHTTPSMiddleware(stack, options); err != nil { + return err + } + if err = addSpanInitializeStart(stack); err != nil { + return err + } + if err = addSpanInitializeEnd(stack); err != nil { + return err + } + if err = addSpanBuildRequestStart(stack); err != nil { + return err + } + if err = addSpanBuildRequestEnd(stack); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opModifyIntegration(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "ModifyIntegration", + } +} diff --git a/service/redshift/api_op_ResizeCluster.go b/service/redshift/api_op_ResizeCluster.go index 47e129cb19b..13915b2ead9 100644 --- a/service/redshift/api_op_ResizeCluster.go +++ b/service/redshift/api_op_ResizeCluster.go @@ -24,6 +24,8 @@ import ( // // - dc2.8xlarge // +// - ra3.large +// // - ra3.xlplus // // - ra3.4xlarge diff --git a/service/redshift/deserializers.go b/service/redshift/deserializers.go index 5507c71f78a..5af6e293b18 100644 --- a/service/redshift/deserializers.go +++ b/service/redshift/deserializers.go @@ -2812,6 +2812,142 @@ func awsAwsquery_deserializeOpErrorCreateHsmConfiguration(response *smithyhttp.R } } +type awsAwsquery_deserializeOpCreateIntegration struct { +} + +func (*awsAwsquery_deserializeOpCreateIntegration) ID() string { + return "OperationDeserializer" +} + +func (m *awsAwsquery_deserializeOpCreateIntegration) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + _, span := tracing.StartSpan(ctx, "OperationDeserializer") + endTimer := startMetricTimer(ctx, "client.call.deserialization_duration") + defer endTimer() + defer span.End() + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsAwsquery_deserializeOpErrorCreateIntegration(response, &metadata) + } + output := &CreateIntegrationOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(response.Body, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return out, metadata, nil + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("CreateIntegrationResult") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeOpDocumentCreateIntegrationOutput(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsAwsquery_deserializeOpErrorCreateIntegration(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) + if err != nil { + return err + } + if reqID := errorComponents.RequestID; len(reqID) != 0 { + awsmiddleware.SetRequestIDMetadata(metadata, reqID) + } + if len(errorComponents.Code) != 0 { + errorCode = errorComponents.Code + } + if len(errorComponents.Message) != 0 { + errorMessage = errorComponents.Message + } + errorBody.Seek(0, io.SeekStart) + switch { + case strings.EqualFold("IntegrationAlreadyExistsFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationAlreadyExistsFault(response, errorBody) + + case strings.EqualFold("IntegrationConflictOperationFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationConflictOperationFault(response, errorBody) + + case strings.EqualFold("IntegrationQuotaExceededFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationQuotaExceededFault(response, errorBody) + + case strings.EqualFold("IntegrationSourceNotFoundFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationSourceNotFoundFault(response, errorBody) + + case strings.EqualFold("IntegrationTargetNotFoundFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationTargetNotFoundFault(response, errorBody) + + case strings.EqualFold("InvalidClusterState", errorCode): + return awsAwsquery_deserializeErrorInvalidClusterStateFault(response, errorBody) + + case strings.EqualFold("InvalidTagFault", errorCode): + return awsAwsquery_deserializeErrorInvalidTagFault(response, errorBody) + + case strings.EqualFold("TagLimitExceededFault", errorCode): + return awsAwsquery_deserializeErrorTagLimitExceededFault(response, errorBody) + + case strings.EqualFold("UnsupportedOperation", errorCode): + return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsAwsquery_deserializeOpCreateRedshiftIdcApplication struct { } @@ -4698,14 +4834,14 @@ func awsAwsquery_deserializeOpErrorDeleteHsmConfiguration(response *smithyhttp.R } } -type awsAwsquery_deserializeOpDeletePartner struct { +type awsAwsquery_deserializeOpDeleteIntegration struct { } -func (*awsAwsquery_deserializeOpDeletePartner) ID() string { +func (*awsAwsquery_deserializeOpDeleteIntegration) ID() string { return "OperationDeserializer" } -func (m *awsAwsquery_deserializeOpDeletePartner) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsquery_deserializeOpDeleteIntegration) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -4723,9 +4859,9 @@ func (m *awsAwsquery_deserializeOpDeletePartner) HandleDeserialize(ctx context.C } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsquery_deserializeOpErrorDeletePartner(response, &metadata) + return out, metadata, awsAwsquery_deserializeOpErrorDeleteIntegration(response, &metadata) } - output := &DeletePartnerOutput{} + output := &DeleteIntegrationOutput{} out.Result = output var buff [1024]byte @@ -4746,7 +4882,7 @@ func (m *awsAwsquery_deserializeOpDeletePartner) HandleDeserialize(ctx context.C } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) - t, err = decoder.GetElement("DeletePartnerResult") + t, err = decoder.GetElement("DeleteIntegrationResult") if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -4758,7 +4894,7 @@ func (m *awsAwsquery_deserializeOpDeletePartner) HandleDeserialize(ctx context.C } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeOpDocumentDeletePartnerOutput(&output, decoder) + err = awsAwsquery_deserializeOpDocumentDeleteIntegrationOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -4772,7 +4908,7 @@ func (m *awsAwsquery_deserializeOpDeletePartner) HandleDeserialize(ctx context.C return out, metadata, err } -func awsAwsquery_deserializeOpErrorDeletePartner(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsquery_deserializeOpErrorDeleteIntegration(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -4797,14 +4933,14 @@ func awsAwsquery_deserializeOpErrorDeletePartner(response *smithyhttp.Response, } errorBody.Seek(0, io.SeekStart) switch { - case strings.EqualFold("ClusterNotFound", errorCode): - return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody) + case strings.EqualFold("IntegrationConflictOperationFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationConflictOperationFault(response, errorBody) - case strings.EqualFold("PartnerNotFound", errorCode): - return awsAwsquery_deserializeErrorPartnerNotFoundFault(response, errorBody) + case strings.EqualFold("IntegrationConflictStateFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationConflictStateFault(response, errorBody) - case strings.EqualFold("UnauthorizedPartnerIntegration", errorCode): - return awsAwsquery_deserializeErrorUnauthorizedPartnerIntegrationFault(response, errorBody) + case strings.EqualFold("IntegrationNotFoundFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationNotFoundFault(response, errorBody) case strings.EqualFold("UnsupportedOperation", errorCode): return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody) @@ -4819,14 +4955,14 @@ func awsAwsquery_deserializeOpErrorDeletePartner(response *smithyhttp.Response, } } -type awsAwsquery_deserializeOpDeleteRedshiftIdcApplication struct { +type awsAwsquery_deserializeOpDeletePartner struct { } -func (*awsAwsquery_deserializeOpDeleteRedshiftIdcApplication) ID() string { +func (*awsAwsquery_deserializeOpDeletePartner) ID() string { return "OperationDeserializer" } -func (m *awsAwsquery_deserializeOpDeleteRedshiftIdcApplication) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsquery_deserializeOpDeletePartner) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -4844,21 +4980,56 @@ func (m *awsAwsquery_deserializeOpDeleteRedshiftIdcApplication) HandleDeserializ } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsquery_deserializeOpErrorDeleteRedshiftIdcApplication(response, &metadata) + return out, metadata, awsAwsquery_deserializeOpErrorDeletePartner(response, &metadata) } - output := &DeleteRedshiftIdcApplicationOutput{} + output := &DeletePartnerOutput{} out.Result = output - if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(response.Body, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return out, metadata, nil + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) return out, metadata, &smithy.DeserializationError{ - Err: fmt.Errorf("failed to discard response body, %w", err), + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("DeletePartnerResult") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), } + return out, metadata, err + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeOpDocumentDeletePartnerOutput(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err } return out, metadata, err } -func awsAwsquery_deserializeOpErrorDeleteRedshiftIdcApplication(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsquery_deserializeOpErrorDeletePartner(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -4883,14 +5054,14 @@ func awsAwsquery_deserializeOpErrorDeleteRedshiftIdcApplication(response *smithy } errorBody.Seek(0, io.SeekStart) switch { - case strings.EqualFold("DependentServiceAccessDenied", errorCode): - return awsAwsquery_deserializeErrorDependentServiceAccessDeniedFault(response, errorBody) + case strings.EqualFold("ClusterNotFound", errorCode): + return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody) - case strings.EqualFold("DependentServiceUnavailableFault", errorCode): - return awsAwsquery_deserializeErrorDependentServiceUnavailableFault(response, errorBody) + case strings.EqualFold("PartnerNotFound", errorCode): + return awsAwsquery_deserializeErrorPartnerNotFoundFault(response, errorBody) - case strings.EqualFold("RedshiftIdcApplicationNotExists", errorCode): - return awsAwsquery_deserializeErrorRedshiftIdcApplicationNotExistsFault(response, errorBody) + case strings.EqualFold("UnauthorizedPartnerIntegration", errorCode): + return awsAwsquery_deserializeErrorUnauthorizedPartnerIntegrationFault(response, errorBody) case strings.EqualFold("UnsupportedOperation", errorCode): return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody) @@ -4905,14 +5076,14 @@ func awsAwsquery_deserializeOpErrorDeleteRedshiftIdcApplication(response *smithy } } -type awsAwsquery_deserializeOpDeleteResourcePolicy struct { +type awsAwsquery_deserializeOpDeleteRedshiftIdcApplication struct { } -func (*awsAwsquery_deserializeOpDeleteResourcePolicy) ID() string { +func (*awsAwsquery_deserializeOpDeleteRedshiftIdcApplication) ID() string { return "OperationDeserializer" } -func (m *awsAwsquery_deserializeOpDeleteResourcePolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsquery_deserializeOpDeleteRedshiftIdcApplication) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -4930,9 +5101,9 @@ func (m *awsAwsquery_deserializeOpDeleteResourcePolicy) HandleDeserialize(ctx co } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsquery_deserializeOpErrorDeleteResourcePolicy(response, &metadata) + return out, metadata, awsAwsquery_deserializeOpErrorDeleteRedshiftIdcApplication(response, &metadata) } - output := &DeleteResourcePolicyOutput{} + output := &DeleteRedshiftIdcApplicationOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { @@ -4944,7 +5115,7 @@ func (m *awsAwsquery_deserializeOpDeleteResourcePolicy) HandleDeserialize(ctx co return out, metadata, err } -func awsAwsquery_deserializeOpErrorDeleteResourcePolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsquery_deserializeOpErrorDeleteRedshiftIdcApplication(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -4969,8 +5140,14 @@ func awsAwsquery_deserializeOpErrorDeleteResourcePolicy(response *smithyhttp.Res } errorBody.Seek(0, io.SeekStart) switch { - case strings.EqualFold("ResourceNotFoundFault", errorCode): - return awsAwsquery_deserializeErrorResourceNotFoundFault(response, errorBody) + case strings.EqualFold("DependentServiceAccessDenied", errorCode): + return awsAwsquery_deserializeErrorDependentServiceAccessDeniedFault(response, errorBody) + + case strings.EqualFold("DependentServiceUnavailableFault", errorCode): + return awsAwsquery_deserializeErrorDependentServiceUnavailableFault(response, errorBody) + + case strings.EqualFold("RedshiftIdcApplicationNotExists", errorCode): + return awsAwsquery_deserializeErrorRedshiftIdcApplicationNotExistsFault(response, errorBody) case strings.EqualFold("UnsupportedOperation", errorCode): return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody) @@ -4985,14 +5162,14 @@ func awsAwsquery_deserializeOpErrorDeleteResourcePolicy(response *smithyhttp.Res } } -type awsAwsquery_deserializeOpDeleteScheduledAction struct { +type awsAwsquery_deserializeOpDeleteResourcePolicy struct { } -func (*awsAwsquery_deserializeOpDeleteScheduledAction) ID() string { +func (*awsAwsquery_deserializeOpDeleteResourcePolicy) ID() string { return "OperationDeserializer" } -func (m *awsAwsquery_deserializeOpDeleteScheduledAction) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsquery_deserializeOpDeleteResourcePolicy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -5010,9 +5187,9 @@ func (m *awsAwsquery_deserializeOpDeleteScheduledAction) HandleDeserialize(ctx c } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsquery_deserializeOpErrorDeleteScheduledAction(response, &metadata) + return out, metadata, awsAwsquery_deserializeOpErrorDeleteResourcePolicy(response, &metadata) } - output := &DeleteScheduledActionOutput{} + output := &DeleteResourcePolicyOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { @@ -5024,7 +5201,7 @@ func (m *awsAwsquery_deserializeOpDeleteScheduledAction) HandleDeserialize(ctx c return out, metadata, err } -func awsAwsquery_deserializeOpErrorDeleteScheduledAction(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsquery_deserializeOpErrorDeleteResourcePolicy(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -5049,11 +5226,11 @@ func awsAwsquery_deserializeOpErrorDeleteScheduledAction(response *smithyhttp.Re } errorBody.Seek(0, io.SeekStart) switch { - case strings.EqualFold("ScheduledActionNotFound", errorCode): - return awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response, errorBody) + case strings.EqualFold("ResourceNotFoundFault", errorCode): + return awsAwsquery_deserializeErrorResourceNotFoundFault(response, errorBody) - case strings.EqualFold("UnauthorizedOperation", errorCode): - return awsAwsquery_deserializeErrorUnauthorizedOperation(response, errorBody) + case strings.EqualFold("UnsupportedOperation", errorCode): + return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody) default: genericError := &smithy.GenericAPIError{ @@ -5065,14 +5242,14 @@ func awsAwsquery_deserializeOpErrorDeleteScheduledAction(response *smithyhttp.Re } } -type awsAwsquery_deserializeOpDeleteSnapshotCopyGrant struct { +type awsAwsquery_deserializeOpDeleteScheduledAction struct { } -func (*awsAwsquery_deserializeOpDeleteSnapshotCopyGrant) ID() string { +func (*awsAwsquery_deserializeOpDeleteScheduledAction) ID() string { return "OperationDeserializer" } -func (m *awsAwsquery_deserializeOpDeleteSnapshotCopyGrant) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsquery_deserializeOpDeleteScheduledAction) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -5090,9 +5267,9 @@ func (m *awsAwsquery_deserializeOpDeleteSnapshotCopyGrant) HandleDeserialize(ctx } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsquery_deserializeOpErrorDeleteSnapshotCopyGrant(response, &metadata) + return out, metadata, awsAwsquery_deserializeOpErrorDeleteScheduledAction(response, &metadata) } - output := &DeleteSnapshotCopyGrantOutput{} + output := &DeleteScheduledActionOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { @@ -5104,7 +5281,7 @@ func (m *awsAwsquery_deserializeOpDeleteSnapshotCopyGrant) HandleDeserialize(ctx return out, metadata, err } -func awsAwsquery_deserializeOpErrorDeleteSnapshotCopyGrant(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsquery_deserializeOpErrorDeleteScheduledAction(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -5129,11 +5306,11 @@ func awsAwsquery_deserializeOpErrorDeleteSnapshotCopyGrant(response *smithyhttp. } errorBody.Seek(0, io.SeekStart) switch { - case strings.EqualFold("InvalidSnapshotCopyGrantStateFault", errorCode): - return awsAwsquery_deserializeErrorInvalidSnapshotCopyGrantStateFault(response, errorBody) + case strings.EqualFold("ScheduledActionNotFound", errorCode): + return awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response, errorBody) - case strings.EqualFold("SnapshotCopyGrantNotFoundFault", errorCode): - return awsAwsquery_deserializeErrorSnapshotCopyGrantNotFoundFault(response, errorBody) + case strings.EqualFold("UnauthorizedOperation", errorCode): + return awsAwsquery_deserializeErrorUnauthorizedOperation(response, errorBody) default: genericError := &smithy.GenericAPIError{ @@ -5145,14 +5322,14 @@ func awsAwsquery_deserializeOpErrorDeleteSnapshotCopyGrant(response *smithyhttp. } } -type awsAwsquery_deserializeOpDeleteSnapshotSchedule struct { +type awsAwsquery_deserializeOpDeleteSnapshotCopyGrant struct { } -func (*awsAwsquery_deserializeOpDeleteSnapshotSchedule) ID() string { +func (*awsAwsquery_deserializeOpDeleteSnapshotCopyGrant) ID() string { return "OperationDeserializer" } -func (m *awsAwsquery_deserializeOpDeleteSnapshotSchedule) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsquery_deserializeOpDeleteSnapshotCopyGrant) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -5170,9 +5347,9 @@ func (m *awsAwsquery_deserializeOpDeleteSnapshotSchedule) HandleDeserialize(ctx } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsquery_deserializeOpErrorDeleteSnapshotSchedule(response, &metadata) + return out, metadata, awsAwsquery_deserializeOpErrorDeleteSnapshotCopyGrant(response, &metadata) } - output := &DeleteSnapshotScheduleOutput{} + output := &DeleteSnapshotCopyGrantOutput{} out.Result = output if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { @@ -5184,7 +5361,87 @@ func (m *awsAwsquery_deserializeOpDeleteSnapshotSchedule) HandleDeserialize(ctx return out, metadata, err } -func awsAwsquery_deserializeOpErrorDeleteSnapshotSchedule(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsquery_deserializeOpErrorDeleteSnapshotCopyGrant(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) + if err != nil { + return err + } + if reqID := errorComponents.RequestID; len(reqID) != 0 { + awsmiddleware.SetRequestIDMetadata(metadata, reqID) + } + if len(errorComponents.Code) != 0 { + errorCode = errorComponents.Code + } + if len(errorComponents.Message) != 0 { + errorMessage = errorComponents.Message + } + errorBody.Seek(0, io.SeekStart) + switch { + case strings.EqualFold("InvalidSnapshotCopyGrantStateFault", errorCode): + return awsAwsquery_deserializeErrorInvalidSnapshotCopyGrantStateFault(response, errorBody) + + case strings.EqualFold("SnapshotCopyGrantNotFoundFault", errorCode): + return awsAwsquery_deserializeErrorSnapshotCopyGrantNotFoundFault(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +type awsAwsquery_deserializeOpDeleteSnapshotSchedule struct { +} + +func (*awsAwsquery_deserializeOpDeleteSnapshotSchedule) ID() string { + return "OperationDeserializer" +} + +func (m *awsAwsquery_deserializeOpDeleteSnapshotSchedule) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + _, span := tracing.StartSpan(ctx, "OperationDeserializer") + endTimer := startMetricTimer(ctx, "client.call.deserialization_duration") + defer endTimer() + defer span.End() + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsAwsquery_deserializeOpErrorDeleteSnapshotSchedule(response, &metadata) + } + output := &DeleteSnapshotScheduleOutput{} + out.Result = output + + if _, err = io.Copy(ioutil.Discard, response.Body); err != nil { + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to discard response body, %w", err), + } + } + + return out, metadata, err +} + +func awsAwsquery_deserializeOpErrorDeleteSnapshotSchedule(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -8115,6 +8372,121 @@ func awsAwsquery_deserializeOpErrorDescribeInboundIntegrations(response *smithyh } } +type awsAwsquery_deserializeOpDescribeIntegrations struct { +} + +func (*awsAwsquery_deserializeOpDescribeIntegrations) ID() string { + return "OperationDeserializer" +} + +func (m *awsAwsquery_deserializeOpDescribeIntegrations) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + _, span := tracing.StartSpan(ctx, "OperationDeserializer") + endTimer := startMetricTimer(ctx, "client.call.deserialization_duration") + defer endTimer() + defer span.End() + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsAwsquery_deserializeOpErrorDescribeIntegrations(response, &metadata) + } + output := &DescribeIntegrationsOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(response.Body, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return out, metadata, nil + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("DescribeIntegrationsResult") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeOpDocumentDescribeIntegrationsOutput(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsAwsquery_deserializeOpErrorDescribeIntegrations(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) + if err != nil { + return err + } + if reqID := errorComponents.RequestID; len(reqID) != 0 { + awsmiddleware.SetRequestIDMetadata(metadata, reqID) + } + if len(errorComponents.Code) != 0 { + errorCode = errorComponents.Code + } + if len(errorComponents.Message) != 0 { + errorMessage = errorComponents.Message + } + errorBody.Seek(0, io.SeekStart) + switch { + case strings.EqualFold("IntegrationNotFoundFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationNotFoundFault(response, errorBody) + + case strings.EqualFold("UnsupportedOperation", errorCode): + return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsAwsquery_deserializeOpDescribeLoggingStatus struct { } @@ -13026,14 +13398,14 @@ func awsAwsquery_deserializeOpErrorModifyEventSubscription(response *smithyhttp. } } -type awsAwsquery_deserializeOpModifyRedshiftIdcApplication struct { +type awsAwsquery_deserializeOpModifyIntegration struct { } -func (*awsAwsquery_deserializeOpModifyRedshiftIdcApplication) ID() string { +func (*awsAwsquery_deserializeOpModifyIntegration) ID() string { return "OperationDeserializer" } -func (m *awsAwsquery_deserializeOpModifyRedshiftIdcApplication) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsquery_deserializeOpModifyIntegration) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -13051,9 +13423,9 @@ func (m *awsAwsquery_deserializeOpModifyRedshiftIdcApplication) HandleDeserializ } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsquery_deserializeOpErrorModifyRedshiftIdcApplication(response, &metadata) + return out, metadata, awsAwsquery_deserializeOpErrorModifyIntegration(response, &metadata) } - output := &ModifyRedshiftIdcApplicationOutput{} + output := &ModifyIntegrationOutput{} out.Result = output var buff [1024]byte @@ -13074,7 +13446,7 @@ func (m *awsAwsquery_deserializeOpModifyRedshiftIdcApplication) HandleDeserializ } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) - t, err = decoder.GetElement("ModifyRedshiftIdcApplicationResult") + t, err = decoder.GetElement("ModifyIntegrationResult") if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -13086,7 +13458,7 @@ func (m *awsAwsquery_deserializeOpModifyRedshiftIdcApplication) HandleDeserializ } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeOpDocumentModifyRedshiftIdcApplicationOutput(&output, decoder) + err = awsAwsquery_deserializeOpDocumentModifyIntegrationOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -13100,7 +13472,7 @@ func (m *awsAwsquery_deserializeOpModifyRedshiftIdcApplication) HandleDeserializ return out, metadata, err } -func awsAwsquery_deserializeOpErrorModifyRedshiftIdcApplication(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsquery_deserializeOpErrorModifyIntegration(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -13125,14 +13497,17 @@ func awsAwsquery_deserializeOpErrorModifyRedshiftIdcApplication(response *smithy } errorBody.Seek(0, io.SeekStart) switch { - case strings.EqualFold("DependentServiceAccessDenied", errorCode): - return awsAwsquery_deserializeErrorDependentServiceAccessDeniedFault(response, errorBody) + case strings.EqualFold("IntegrationAlreadyExistsFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationAlreadyExistsFault(response, errorBody) - case strings.EqualFold("DependentServiceUnavailableFault", errorCode): - return awsAwsquery_deserializeErrorDependentServiceUnavailableFault(response, errorBody) + case strings.EqualFold("IntegrationConflictOperationFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationConflictOperationFault(response, errorBody) - case strings.EqualFold("RedshiftIdcApplicationNotExists", errorCode): - return awsAwsquery_deserializeErrorRedshiftIdcApplicationNotExistsFault(response, errorBody) + case strings.EqualFold("IntegrationConflictStateFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationConflictStateFault(response, errorBody) + + case strings.EqualFold("IntegrationNotFoundFault", errorCode): + return awsAwsquery_deserializeErrorIntegrationNotFoundFault(response, errorBody) case strings.EqualFold("UnsupportedOperation", errorCode): return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody) @@ -13147,14 +13522,14 @@ func awsAwsquery_deserializeOpErrorModifyRedshiftIdcApplication(response *smithy } } -type awsAwsquery_deserializeOpModifyScheduledAction struct { +type awsAwsquery_deserializeOpModifyRedshiftIdcApplication struct { } -func (*awsAwsquery_deserializeOpModifyScheduledAction) ID() string { +func (*awsAwsquery_deserializeOpModifyRedshiftIdcApplication) ID() string { return "OperationDeserializer" } -func (m *awsAwsquery_deserializeOpModifyScheduledAction) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsquery_deserializeOpModifyRedshiftIdcApplication) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -13172,9 +13547,9 @@ func (m *awsAwsquery_deserializeOpModifyScheduledAction) HandleDeserialize(ctx c } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsquery_deserializeOpErrorModifyScheduledAction(response, &metadata) + return out, metadata, awsAwsquery_deserializeOpErrorModifyRedshiftIdcApplication(response, &metadata) } - output := &ModifyScheduledActionOutput{} + output := &ModifyRedshiftIdcApplicationOutput{} out.Result = output var buff [1024]byte @@ -13195,7 +13570,7 @@ func (m *awsAwsquery_deserializeOpModifyScheduledAction) HandleDeserialize(ctx c } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) - t, err = decoder.GetElement("ModifyScheduledActionResult") + t, err = decoder.GetElement("ModifyRedshiftIdcApplicationResult") if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -13207,7 +13582,7 @@ func (m *awsAwsquery_deserializeOpModifyScheduledAction) HandleDeserialize(ctx c } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeOpDocumentModifyScheduledActionOutput(&output, decoder) + err = awsAwsquery_deserializeOpDocumentModifyRedshiftIdcApplicationOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -13221,7 +13596,7 @@ func (m *awsAwsquery_deserializeOpModifyScheduledAction) HandleDeserialize(ctx c return out, metadata, err } -func awsAwsquery_deserializeOpErrorModifyScheduledAction(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsquery_deserializeOpErrorModifyRedshiftIdcApplication(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -13246,23 +13621,14 @@ func awsAwsquery_deserializeOpErrorModifyScheduledAction(response *smithyhttp.Re } errorBody.Seek(0, io.SeekStart) switch { - case strings.EqualFold("ClusterNotFound", errorCode): - return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody) - - case strings.EqualFold("InvalidSchedule", errorCode): - return awsAwsquery_deserializeErrorInvalidScheduleFault(response, errorBody) - - case strings.EqualFold("InvalidScheduledAction", errorCode): - return awsAwsquery_deserializeErrorInvalidScheduledActionFault(response, errorBody) - - case strings.EqualFold("ScheduledActionNotFound", errorCode): - return awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response, errorBody) + case strings.EqualFold("DependentServiceAccessDenied", errorCode): + return awsAwsquery_deserializeErrorDependentServiceAccessDeniedFault(response, errorBody) - case strings.EqualFold("ScheduledActionTypeUnsupported", errorCode): - return awsAwsquery_deserializeErrorScheduledActionTypeUnsupportedFault(response, errorBody) + case strings.EqualFold("DependentServiceUnavailableFault", errorCode): + return awsAwsquery_deserializeErrorDependentServiceUnavailableFault(response, errorBody) - case strings.EqualFold("UnauthorizedOperation", errorCode): - return awsAwsquery_deserializeErrorUnauthorizedOperation(response, errorBody) + case strings.EqualFold("RedshiftIdcApplicationNotExists", errorCode): + return awsAwsquery_deserializeErrorRedshiftIdcApplicationNotExistsFault(response, errorBody) case strings.EqualFold("UnsupportedOperation", errorCode): return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody) @@ -13277,14 +13643,14 @@ func awsAwsquery_deserializeOpErrorModifyScheduledAction(response *smithyhttp.Re } } -type awsAwsquery_deserializeOpModifySnapshotCopyRetentionPeriod struct { +type awsAwsquery_deserializeOpModifyScheduledAction struct { } -func (*awsAwsquery_deserializeOpModifySnapshotCopyRetentionPeriod) ID() string { +func (*awsAwsquery_deserializeOpModifyScheduledAction) ID() string { return "OperationDeserializer" } -func (m *awsAwsquery_deserializeOpModifySnapshotCopyRetentionPeriod) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsAwsquery_deserializeOpModifyScheduledAction) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( out middleware.DeserializeOutput, metadata middleware.Metadata, err error, ) { out, metadata, err = next.HandleDeserialize(ctx, in) @@ -13302,9 +13668,9 @@ func (m *awsAwsquery_deserializeOpModifySnapshotCopyRetentionPeriod) HandleDeser } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsAwsquery_deserializeOpErrorModifySnapshotCopyRetentionPeriod(response, &metadata) + return out, metadata, awsAwsquery_deserializeOpErrorModifyScheduledAction(response, &metadata) } - output := &ModifySnapshotCopyRetentionPeriodOutput{} + output := &ModifyScheduledActionOutput{} out.Result = output var buff [1024]byte @@ -13325,7 +13691,7 @@ func (m *awsAwsquery_deserializeOpModifySnapshotCopyRetentionPeriod) HandleDeser } decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) - t, err = decoder.GetElement("ModifySnapshotCopyRetentionPeriodResult") + t, err = decoder.GetElement("ModifyScheduledActionResult") if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -13337,7 +13703,7 @@ func (m *awsAwsquery_deserializeOpModifySnapshotCopyRetentionPeriod) HandleDeser } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeOpDocumentModifySnapshotCopyRetentionPeriodOutput(&output, decoder) + err = awsAwsquery_deserializeOpDocumentModifyScheduledActionOutput(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -13351,7 +13717,137 @@ func (m *awsAwsquery_deserializeOpModifySnapshotCopyRetentionPeriod) HandleDeser return out, metadata, err } -func awsAwsquery_deserializeOpErrorModifySnapshotCopyRetentionPeriod(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsAwsquery_deserializeOpErrorModifyScheduledAction(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false) + if err != nil { + return err + } + if reqID := errorComponents.RequestID; len(reqID) != 0 { + awsmiddleware.SetRequestIDMetadata(metadata, reqID) + } + if len(errorComponents.Code) != 0 { + errorCode = errorComponents.Code + } + if len(errorComponents.Message) != 0 { + errorMessage = errorComponents.Message + } + errorBody.Seek(0, io.SeekStart) + switch { + case strings.EqualFold("ClusterNotFound", errorCode): + return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody) + + case strings.EqualFold("InvalidSchedule", errorCode): + return awsAwsquery_deserializeErrorInvalidScheduleFault(response, errorBody) + + case strings.EqualFold("InvalidScheduledAction", errorCode): + return awsAwsquery_deserializeErrorInvalidScheduledActionFault(response, errorBody) + + case strings.EqualFold("ScheduledActionNotFound", errorCode): + return awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response, errorBody) + + case strings.EqualFold("ScheduledActionTypeUnsupported", errorCode): + return awsAwsquery_deserializeErrorScheduledActionTypeUnsupportedFault(response, errorBody) + + case strings.EqualFold("UnauthorizedOperation", errorCode): + return awsAwsquery_deserializeErrorUnauthorizedOperation(response, errorBody) + + case strings.EqualFold("UnsupportedOperation", errorCode): + return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +type awsAwsquery_deserializeOpModifySnapshotCopyRetentionPeriod struct { +} + +func (*awsAwsquery_deserializeOpModifySnapshotCopyRetentionPeriod) ID() string { + return "OperationDeserializer" +} + +func (m *awsAwsquery_deserializeOpModifySnapshotCopyRetentionPeriod) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + _, span := tracing.StartSpan(ctx, "OperationDeserializer") + endTimer := startMetricTimer(ctx, "client.call.deserialization_duration") + defer endTimer() + defer span.End() + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsAwsquery_deserializeOpErrorModifySnapshotCopyRetentionPeriod(response, &metadata) + } + output := &ModifySnapshotCopyRetentionPeriodOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(response.Body, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return out, metadata, nil + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("ModifySnapshotCopyRetentionPeriodResult") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeOpDocumentModifySnapshotCopyRetentionPeriodOutput(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsAwsquery_deserializeOpErrorModifySnapshotCopyRetentionPeriod(response *smithyhttp.Response, metadata *middleware.Metadata) error { var errorBuffer bytes.Buffer if _, err := io.Copy(&errorBuffer, response.Body); err != nil { return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} @@ -17895,8 +18391,8 @@ func awsAwsquery_deserializeErrorInsufficientS3BucketPolicyFault(response *smith return output } -func awsAwsquery_deserializeErrorIntegrationNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.IntegrationNotFoundFault{} +func awsAwsquery_deserializeErrorIntegrationAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.IntegrationAlreadyExistsFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -17926,7 +18422,7 @@ func awsAwsquery_deserializeErrorIntegrationNotFoundFault(response *smithyhttp.R } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentIntegrationNotFoundFault(&output, decoder) + err = awsAwsquery_deserializeDocumentIntegrationAlreadyExistsFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -17939,8 +18435,8 @@ func awsAwsquery_deserializeErrorIntegrationNotFoundFault(response *smithyhttp.R return output } -func awsAwsquery_deserializeErrorInvalidAuthenticationProfileRequestFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidAuthenticationProfileRequestFault{} +func awsAwsquery_deserializeErrorIntegrationConflictOperationFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.IntegrationConflictOperationFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -17970,7 +18466,7 @@ func awsAwsquery_deserializeErrorInvalidAuthenticationProfileRequestFault(respon } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidAuthenticationProfileRequestFault(&output, decoder) + err = awsAwsquery_deserializeDocumentIntegrationConflictOperationFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -17983,8 +18479,8 @@ func awsAwsquery_deserializeErrorInvalidAuthenticationProfileRequestFault(respon return output } -func awsAwsquery_deserializeErrorInvalidAuthorizationStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidAuthorizationStateFault{} +func awsAwsquery_deserializeErrorIntegrationConflictStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.IntegrationConflictStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18014,7 +18510,7 @@ func awsAwsquery_deserializeErrorInvalidAuthorizationStateFault(response *smithy } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidAuthorizationStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentIntegrationConflictStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18027,96 +18523,8 @@ func awsAwsquery_deserializeErrorInvalidAuthorizationStateFault(response *smithy return output } -func awsAwsquery_deserializeErrorInvalidClusterParameterGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidClusterParameterGroupStateFault{} - var buff [1024]byte - ringBuffer := smithyio.NewRingBuffer(buff[:]) - body := io.TeeReader(errorBody, ringBuffer) - rootDecoder := xml.NewDecoder(body) - t, err := smithyxml.FetchRootElement(rootDecoder) - if err == io.EOF { - return output - } - if err != nil { - var snapshot bytes.Buffer - io.Copy(&snapshot, ringBuffer) - return &smithy.DeserializationError{ - Err: fmt.Errorf("failed to decode response body, %w", err), - Snapshot: snapshot.Bytes(), - } - } - - decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) - t, err = decoder.GetElement("Error") - if err != nil { - var snapshot bytes.Buffer - io.Copy(&snapshot, ringBuffer) - return &smithy.DeserializationError{ - Err: fmt.Errorf("failed to decode response body, %w", err), - Snapshot: snapshot.Bytes(), - } - } - - decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidClusterParameterGroupStateFault(&output, decoder) - if err != nil { - var snapshot bytes.Buffer - io.Copy(&snapshot, ringBuffer) - return &smithy.DeserializationError{ - Err: fmt.Errorf("failed to decode response body, %w", err), - Snapshot: snapshot.Bytes(), - } - } - - return output -} - -func awsAwsquery_deserializeErrorInvalidClusterSecurityGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidClusterSecurityGroupStateFault{} - var buff [1024]byte - ringBuffer := smithyio.NewRingBuffer(buff[:]) - body := io.TeeReader(errorBody, ringBuffer) - rootDecoder := xml.NewDecoder(body) - t, err := smithyxml.FetchRootElement(rootDecoder) - if err == io.EOF { - return output - } - if err != nil { - var snapshot bytes.Buffer - io.Copy(&snapshot, ringBuffer) - return &smithy.DeserializationError{ - Err: fmt.Errorf("failed to decode response body, %w", err), - Snapshot: snapshot.Bytes(), - } - } - - decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) - t, err = decoder.GetElement("Error") - if err != nil { - var snapshot bytes.Buffer - io.Copy(&snapshot, ringBuffer) - return &smithy.DeserializationError{ - Err: fmt.Errorf("failed to decode response body, %w", err), - Snapshot: snapshot.Bytes(), - } - } - - decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidClusterSecurityGroupStateFault(&output, decoder) - if err != nil { - var snapshot bytes.Buffer - io.Copy(&snapshot, ringBuffer) - return &smithy.DeserializationError{ - Err: fmt.Errorf("failed to decode response body, %w", err), - Snapshot: snapshot.Bytes(), - } - } - - return output -} - -func awsAwsquery_deserializeErrorInvalidClusterSnapshotScheduleStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidClusterSnapshotScheduleStateFault{} +func awsAwsquery_deserializeErrorIntegrationNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.IntegrationNotFoundFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18146,7 +18554,7 @@ func awsAwsquery_deserializeErrorInvalidClusterSnapshotScheduleStateFault(respon } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidClusterSnapshotScheduleStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentIntegrationNotFoundFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18159,8 +18567,8 @@ func awsAwsquery_deserializeErrorInvalidClusterSnapshotScheduleStateFault(respon return output } -func awsAwsquery_deserializeErrorInvalidClusterSnapshotStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidClusterSnapshotStateFault{} +func awsAwsquery_deserializeErrorIntegrationQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.IntegrationQuotaExceededFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18190,7 +18598,7 @@ func awsAwsquery_deserializeErrorInvalidClusterSnapshotStateFault(response *smit } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidClusterSnapshotStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentIntegrationQuotaExceededFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18203,8 +18611,8 @@ func awsAwsquery_deserializeErrorInvalidClusterSnapshotStateFault(response *smit return output } -func awsAwsquery_deserializeErrorInvalidClusterStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidClusterStateFault{} +func awsAwsquery_deserializeErrorIntegrationSourceNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.IntegrationSourceNotFoundFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18234,7 +18642,7 @@ func awsAwsquery_deserializeErrorInvalidClusterStateFault(response *smithyhttp.R } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidClusterStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentIntegrationSourceNotFoundFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18247,8 +18655,8 @@ func awsAwsquery_deserializeErrorInvalidClusterStateFault(response *smithyhttp.R return output } -func awsAwsquery_deserializeErrorInvalidClusterSubnetGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidClusterSubnetGroupStateFault{} +func awsAwsquery_deserializeErrorIntegrationTargetNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.IntegrationTargetNotFoundFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18278,7 +18686,7 @@ func awsAwsquery_deserializeErrorInvalidClusterSubnetGroupStateFault(response *s } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidClusterSubnetGroupStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentIntegrationTargetNotFoundFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18291,8 +18699,8 @@ func awsAwsquery_deserializeErrorInvalidClusterSubnetGroupStateFault(response *s return output } -func awsAwsquery_deserializeErrorInvalidClusterSubnetStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidClusterSubnetStateFault{} +func awsAwsquery_deserializeErrorInvalidAuthenticationProfileRequestFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidAuthenticationProfileRequestFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18322,7 +18730,7 @@ func awsAwsquery_deserializeErrorInvalidClusterSubnetStateFault(response *smithy } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidClusterSubnetStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidAuthenticationProfileRequestFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18335,8 +18743,8 @@ func awsAwsquery_deserializeErrorInvalidClusterSubnetStateFault(response *smithy return output } -func awsAwsquery_deserializeErrorInvalidClusterTrackFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidClusterTrackFault{} +func awsAwsquery_deserializeErrorInvalidAuthorizationStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidAuthorizationStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18366,7 +18774,7 @@ func awsAwsquery_deserializeErrorInvalidClusterTrackFault(response *smithyhttp.R } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidClusterTrackFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidAuthorizationStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18379,8 +18787,8 @@ func awsAwsquery_deserializeErrorInvalidClusterTrackFault(response *smithyhttp.R return output } -func awsAwsquery_deserializeErrorInvalidDataShareFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidDataShareFault{} +func awsAwsquery_deserializeErrorInvalidClusterParameterGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidClusterParameterGroupStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18410,7 +18818,7 @@ func awsAwsquery_deserializeErrorInvalidDataShareFault(response *smithyhttp.Resp } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidDataShareFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidClusterParameterGroupStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18423,8 +18831,8 @@ func awsAwsquery_deserializeErrorInvalidDataShareFault(response *smithyhttp.Resp return output } -func awsAwsquery_deserializeErrorInvalidElasticIpFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidElasticIpFault{} +func awsAwsquery_deserializeErrorInvalidClusterSecurityGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidClusterSecurityGroupStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18454,7 +18862,7 @@ func awsAwsquery_deserializeErrorInvalidElasticIpFault(response *smithyhttp.Resp } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidElasticIpFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidClusterSecurityGroupStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18467,8 +18875,8 @@ func awsAwsquery_deserializeErrorInvalidElasticIpFault(response *smithyhttp.Resp return output } -func awsAwsquery_deserializeErrorInvalidEndpointStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidEndpointStateFault{} +func awsAwsquery_deserializeErrorInvalidClusterSnapshotScheduleStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidClusterSnapshotScheduleStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18498,7 +18906,7 @@ func awsAwsquery_deserializeErrorInvalidEndpointStateFault(response *smithyhttp. } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidEndpointStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidClusterSnapshotScheduleStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18511,8 +18919,8 @@ func awsAwsquery_deserializeErrorInvalidEndpointStateFault(response *smithyhttp. return output } -func awsAwsquery_deserializeErrorInvalidHsmClientCertificateStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidHsmClientCertificateStateFault{} +func awsAwsquery_deserializeErrorInvalidClusterSnapshotStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidClusterSnapshotStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18542,7 +18950,7 @@ func awsAwsquery_deserializeErrorInvalidHsmClientCertificateStateFault(response } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidHsmClientCertificateStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidClusterSnapshotStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18555,8 +18963,8 @@ func awsAwsquery_deserializeErrorInvalidHsmClientCertificateStateFault(response return output } -func awsAwsquery_deserializeErrorInvalidHsmConfigurationStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidHsmConfigurationStateFault{} +func awsAwsquery_deserializeErrorInvalidClusterStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidClusterStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18586,7 +18994,7 @@ func awsAwsquery_deserializeErrorInvalidHsmConfigurationStateFault(response *smi } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidHsmConfigurationStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidClusterStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18599,8 +19007,8 @@ func awsAwsquery_deserializeErrorInvalidHsmConfigurationStateFault(response *smi return output } -func awsAwsquery_deserializeErrorInvalidNamespaceFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidNamespaceFault{} +func awsAwsquery_deserializeErrorInvalidClusterSubnetGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidClusterSubnetGroupStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18630,7 +19038,7 @@ func awsAwsquery_deserializeErrorInvalidNamespaceFault(response *smithyhttp.Resp } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidNamespaceFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidClusterSubnetGroupStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18643,8 +19051,8 @@ func awsAwsquery_deserializeErrorInvalidNamespaceFault(response *smithyhttp.Resp return output } -func awsAwsquery_deserializeErrorInvalidPolicyFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidPolicyFault{} +func awsAwsquery_deserializeErrorInvalidClusterSubnetStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidClusterSubnetStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18674,7 +19082,7 @@ func awsAwsquery_deserializeErrorInvalidPolicyFault(response *smithyhttp.Respons } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidPolicyFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidClusterSubnetStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18687,8 +19095,8 @@ func awsAwsquery_deserializeErrorInvalidPolicyFault(response *smithyhttp.Respons return output } -func awsAwsquery_deserializeErrorInvalidReservedNodeStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidReservedNodeStateFault{} +func awsAwsquery_deserializeErrorInvalidClusterTrackFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidClusterTrackFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18718,7 +19126,7 @@ func awsAwsquery_deserializeErrorInvalidReservedNodeStateFault(response *smithyh } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidReservedNodeStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidClusterTrackFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18731,8 +19139,8 @@ func awsAwsquery_deserializeErrorInvalidReservedNodeStateFault(response *smithyh return output } -func awsAwsquery_deserializeErrorInvalidRestoreFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidRestoreFault{} +func awsAwsquery_deserializeErrorInvalidDataShareFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidDataShareFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18762,7 +19170,7 @@ func awsAwsquery_deserializeErrorInvalidRestoreFault(response *smithyhttp.Respon } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidRestoreFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidDataShareFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18775,8 +19183,8 @@ func awsAwsquery_deserializeErrorInvalidRestoreFault(response *smithyhttp.Respon return output } -func awsAwsquery_deserializeErrorInvalidRetentionPeriodFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidRetentionPeriodFault{} +func awsAwsquery_deserializeErrorInvalidElasticIpFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidElasticIpFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18806,7 +19214,7 @@ func awsAwsquery_deserializeErrorInvalidRetentionPeriodFault(response *smithyhtt } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidRetentionPeriodFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidElasticIpFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18819,8 +19227,8 @@ func awsAwsquery_deserializeErrorInvalidRetentionPeriodFault(response *smithyhtt return output } -func awsAwsquery_deserializeErrorInvalidS3BucketNameFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidS3BucketNameFault{} +func awsAwsquery_deserializeErrorInvalidEndpointStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidEndpointStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18850,7 +19258,7 @@ func awsAwsquery_deserializeErrorInvalidS3BucketNameFault(response *smithyhttp.R } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidS3BucketNameFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidEndpointStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18863,8 +19271,8 @@ func awsAwsquery_deserializeErrorInvalidS3BucketNameFault(response *smithyhttp.R return output } -func awsAwsquery_deserializeErrorInvalidS3KeyPrefixFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidS3KeyPrefixFault{} +func awsAwsquery_deserializeErrorInvalidHsmClientCertificateStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidHsmClientCertificateStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18894,7 +19302,7 @@ func awsAwsquery_deserializeErrorInvalidS3KeyPrefixFault(response *smithyhttp.Re } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidS3KeyPrefixFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidHsmClientCertificateStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18907,8 +19315,8 @@ func awsAwsquery_deserializeErrorInvalidS3KeyPrefixFault(response *smithyhttp.Re return output } -func awsAwsquery_deserializeErrorInvalidScheduledActionFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidScheduledActionFault{} +func awsAwsquery_deserializeErrorInvalidHsmConfigurationStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidHsmConfigurationStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18938,7 +19346,7 @@ func awsAwsquery_deserializeErrorInvalidScheduledActionFault(response *smithyhtt } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidScheduledActionFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidHsmConfigurationStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18951,8 +19359,8 @@ func awsAwsquery_deserializeErrorInvalidScheduledActionFault(response *smithyhtt return output } -func awsAwsquery_deserializeErrorInvalidScheduleFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidScheduleFault{} +func awsAwsquery_deserializeErrorInvalidNamespaceFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidNamespaceFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -18982,7 +19390,7 @@ func awsAwsquery_deserializeErrorInvalidScheduleFault(response *smithyhttp.Respo } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidScheduleFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidNamespaceFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -18995,8 +19403,8 @@ func awsAwsquery_deserializeErrorInvalidScheduleFault(response *smithyhttp.Respo return output } -func awsAwsquery_deserializeErrorInvalidSnapshotCopyGrantStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidSnapshotCopyGrantStateFault{} +func awsAwsquery_deserializeErrorInvalidPolicyFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidPolicyFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19026,7 +19434,7 @@ func awsAwsquery_deserializeErrorInvalidSnapshotCopyGrantStateFault(response *sm } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidSnapshotCopyGrantStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidPolicyFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19039,8 +19447,8 @@ func awsAwsquery_deserializeErrorInvalidSnapshotCopyGrantStateFault(response *sm return output } -func awsAwsquery_deserializeErrorInvalidSubnet(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidSubnet{} +func awsAwsquery_deserializeErrorInvalidReservedNodeStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidReservedNodeStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19070,7 +19478,7 @@ func awsAwsquery_deserializeErrorInvalidSubnet(response *smithyhttp.Response, er } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidSubnet(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidReservedNodeStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19083,8 +19491,8 @@ func awsAwsquery_deserializeErrorInvalidSubnet(response *smithyhttp.Response, er return output } -func awsAwsquery_deserializeErrorInvalidSubscriptionStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidSubscriptionStateFault{} +func awsAwsquery_deserializeErrorInvalidRestoreFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidRestoreFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19114,7 +19522,7 @@ func awsAwsquery_deserializeErrorInvalidSubscriptionStateFault(response *smithyh } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidSubscriptionStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidRestoreFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19127,8 +19535,8 @@ func awsAwsquery_deserializeErrorInvalidSubscriptionStateFault(response *smithyh return output } -func awsAwsquery_deserializeErrorInvalidTableRestoreArgumentFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidTableRestoreArgumentFault{} +func awsAwsquery_deserializeErrorInvalidRetentionPeriodFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidRetentionPeriodFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19158,7 +19566,7 @@ func awsAwsquery_deserializeErrorInvalidTableRestoreArgumentFault(response *smit } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidTableRestoreArgumentFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidRetentionPeriodFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19171,8 +19579,8 @@ func awsAwsquery_deserializeErrorInvalidTableRestoreArgumentFault(response *smit return output } -func awsAwsquery_deserializeErrorInvalidTagFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidTagFault{} +func awsAwsquery_deserializeErrorInvalidS3BucketNameFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidS3BucketNameFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19202,7 +19610,7 @@ func awsAwsquery_deserializeErrorInvalidTagFault(response *smithyhttp.Response, } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidTagFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidS3BucketNameFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19215,8 +19623,8 @@ func awsAwsquery_deserializeErrorInvalidTagFault(response *smithyhttp.Response, return output } -func awsAwsquery_deserializeErrorInvalidUsageLimitFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidUsageLimitFault{} +func awsAwsquery_deserializeErrorInvalidS3KeyPrefixFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidS3KeyPrefixFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19246,7 +19654,7 @@ func awsAwsquery_deserializeErrorInvalidUsageLimitFault(response *smithyhttp.Res } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidUsageLimitFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidS3KeyPrefixFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19259,8 +19667,8 @@ func awsAwsquery_deserializeErrorInvalidUsageLimitFault(response *smithyhttp.Res return output } -func awsAwsquery_deserializeErrorInvalidVPCNetworkStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.InvalidVPCNetworkStateFault{} +func awsAwsquery_deserializeErrorInvalidScheduledActionFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidScheduledActionFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19290,7 +19698,7 @@ func awsAwsquery_deserializeErrorInvalidVPCNetworkStateFault(response *smithyhtt } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentInvalidVPCNetworkStateFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidScheduledActionFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19303,8 +19711,8 @@ func awsAwsquery_deserializeErrorInvalidVPCNetworkStateFault(response *smithyhtt return output } -func awsAwsquery_deserializeErrorIpv6CidrBlockNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.Ipv6CidrBlockNotFoundFault{} +func awsAwsquery_deserializeErrorInvalidScheduleFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidScheduleFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19334,7 +19742,7 @@ func awsAwsquery_deserializeErrorIpv6CidrBlockNotFoundFault(response *smithyhttp } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentIpv6CidrBlockNotFoundFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidScheduleFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19347,8 +19755,8 @@ func awsAwsquery_deserializeErrorIpv6CidrBlockNotFoundFault(response *smithyhttp return output } -func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.LimitExceededFault{} +func awsAwsquery_deserializeErrorInvalidSnapshotCopyGrantStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidSnapshotCopyGrantStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19378,7 +19786,7 @@ func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Respons } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentLimitExceededFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidSnapshotCopyGrantStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19391,8 +19799,8 @@ func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Respons return output } -func awsAwsquery_deserializeErrorNumberOfNodesPerClusterLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.NumberOfNodesPerClusterLimitExceededFault{} +func awsAwsquery_deserializeErrorInvalidSubnet(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidSubnet{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19422,7 +19830,7 @@ func awsAwsquery_deserializeErrorNumberOfNodesPerClusterLimitExceededFault(respo } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentNumberOfNodesPerClusterLimitExceededFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidSubnet(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19435,8 +19843,8 @@ func awsAwsquery_deserializeErrorNumberOfNodesPerClusterLimitExceededFault(respo return output } -func awsAwsquery_deserializeErrorNumberOfNodesQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.NumberOfNodesQuotaExceededFault{} +func awsAwsquery_deserializeErrorInvalidSubscriptionStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidSubscriptionStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19466,7 +19874,7 @@ func awsAwsquery_deserializeErrorNumberOfNodesQuotaExceededFault(response *smith } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentNumberOfNodesQuotaExceededFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidSubscriptionStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19479,8 +19887,8 @@ func awsAwsquery_deserializeErrorNumberOfNodesQuotaExceededFault(response *smith return output } -func awsAwsquery_deserializeErrorPartnerNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.PartnerNotFoundFault{} +func awsAwsquery_deserializeErrorInvalidTableRestoreArgumentFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidTableRestoreArgumentFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19510,7 +19918,7 @@ func awsAwsquery_deserializeErrorPartnerNotFoundFault(response *smithyhttp.Respo } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentPartnerNotFoundFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidTableRestoreArgumentFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19523,8 +19931,8 @@ func awsAwsquery_deserializeErrorPartnerNotFoundFault(response *smithyhttp.Respo return output } -func awsAwsquery_deserializeErrorRedshiftIdcApplicationAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.RedshiftIdcApplicationAlreadyExistsFault{} +func awsAwsquery_deserializeErrorInvalidTagFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidTagFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19554,7 +19962,7 @@ func awsAwsquery_deserializeErrorRedshiftIdcApplicationAlreadyExistsFault(respon } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentRedshiftIdcApplicationAlreadyExistsFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidTagFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19567,8 +19975,8 @@ func awsAwsquery_deserializeErrorRedshiftIdcApplicationAlreadyExistsFault(respon return output } -func awsAwsquery_deserializeErrorRedshiftIdcApplicationNotExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.RedshiftIdcApplicationNotExistsFault{} +func awsAwsquery_deserializeErrorInvalidUsageLimitFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidUsageLimitFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19598,7 +20006,7 @@ func awsAwsquery_deserializeErrorRedshiftIdcApplicationNotExistsFault(response * } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentRedshiftIdcApplicationNotExistsFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidUsageLimitFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19611,8 +20019,8 @@ func awsAwsquery_deserializeErrorRedshiftIdcApplicationNotExistsFault(response * return output } -func awsAwsquery_deserializeErrorRedshiftIdcApplicationQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.RedshiftIdcApplicationQuotaExceededFault{} +func awsAwsquery_deserializeErrorInvalidVPCNetworkStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InvalidVPCNetworkStateFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19642,7 +20050,7 @@ func awsAwsquery_deserializeErrorRedshiftIdcApplicationQuotaExceededFault(respon } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentRedshiftIdcApplicationQuotaExceededFault(&output, decoder) + err = awsAwsquery_deserializeDocumentInvalidVPCNetworkStateFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19655,8 +20063,8 @@ func awsAwsquery_deserializeErrorRedshiftIdcApplicationQuotaExceededFault(respon return output } -func awsAwsquery_deserializeErrorReservedNodeAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ReservedNodeAlreadyExistsFault{} +func awsAwsquery_deserializeErrorIpv6CidrBlockNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.Ipv6CidrBlockNotFoundFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19686,7 +20094,7 @@ func awsAwsquery_deserializeErrorReservedNodeAlreadyExistsFault(response *smithy } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentReservedNodeAlreadyExistsFault(&output, decoder) + err = awsAwsquery_deserializeDocumentIpv6CidrBlockNotFoundFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19699,8 +20107,8 @@ func awsAwsquery_deserializeErrorReservedNodeAlreadyExistsFault(response *smithy return output } -func awsAwsquery_deserializeErrorReservedNodeAlreadyMigratedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ReservedNodeAlreadyMigratedFault{} +func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.LimitExceededFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19730,7 +20138,7 @@ func awsAwsquery_deserializeErrorReservedNodeAlreadyMigratedFault(response *smit } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentReservedNodeAlreadyMigratedFault(&output, decoder) + err = awsAwsquery_deserializeDocumentLimitExceededFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19743,8 +20151,8 @@ func awsAwsquery_deserializeErrorReservedNodeAlreadyMigratedFault(response *smit return output } -func awsAwsquery_deserializeErrorReservedNodeExchangeNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ReservedNodeExchangeNotFoundFault{} +func awsAwsquery_deserializeErrorNumberOfNodesPerClusterLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.NumberOfNodesPerClusterLimitExceededFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19774,7 +20182,7 @@ func awsAwsquery_deserializeErrorReservedNodeExchangeNotFoundFault(response *smi } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentReservedNodeExchangeNotFoundFault(&output, decoder) + err = awsAwsquery_deserializeDocumentNumberOfNodesPerClusterLimitExceededFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19787,8 +20195,8 @@ func awsAwsquery_deserializeErrorReservedNodeExchangeNotFoundFault(response *smi return output } -func awsAwsquery_deserializeErrorReservedNodeNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ReservedNodeNotFoundFault{} +func awsAwsquery_deserializeErrorNumberOfNodesQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.NumberOfNodesQuotaExceededFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19818,7 +20226,7 @@ func awsAwsquery_deserializeErrorReservedNodeNotFoundFault(response *smithyhttp. } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentReservedNodeNotFoundFault(&output, decoder) + err = awsAwsquery_deserializeDocumentNumberOfNodesQuotaExceededFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19831,8 +20239,8 @@ func awsAwsquery_deserializeErrorReservedNodeNotFoundFault(response *smithyhttp. return output } -func awsAwsquery_deserializeErrorReservedNodeOfferingNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ReservedNodeOfferingNotFoundFault{} +func awsAwsquery_deserializeErrorPartnerNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.PartnerNotFoundFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19862,7 +20270,7 @@ func awsAwsquery_deserializeErrorReservedNodeOfferingNotFoundFault(response *smi } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentReservedNodeOfferingNotFoundFault(&output, decoder) + err = awsAwsquery_deserializeDocumentPartnerNotFoundFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19875,8 +20283,8 @@ func awsAwsquery_deserializeErrorReservedNodeOfferingNotFoundFault(response *smi return output } -func awsAwsquery_deserializeErrorReservedNodeQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ReservedNodeQuotaExceededFault{} +func awsAwsquery_deserializeErrorRedshiftIdcApplicationAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.RedshiftIdcApplicationAlreadyExistsFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19906,7 +20314,7 @@ func awsAwsquery_deserializeErrorReservedNodeQuotaExceededFault(response *smithy } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentReservedNodeQuotaExceededFault(&output, decoder) + err = awsAwsquery_deserializeDocumentRedshiftIdcApplicationAlreadyExistsFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19919,8 +20327,8 @@ func awsAwsquery_deserializeErrorReservedNodeQuotaExceededFault(response *smithy return output } -func awsAwsquery_deserializeErrorResizeNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ResizeNotFoundFault{} +func awsAwsquery_deserializeErrorRedshiftIdcApplicationNotExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.RedshiftIdcApplicationNotExistsFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19950,7 +20358,7 @@ func awsAwsquery_deserializeErrorResizeNotFoundFault(response *smithyhttp.Respon } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentResizeNotFoundFault(&output, decoder) + err = awsAwsquery_deserializeDocumentRedshiftIdcApplicationNotExistsFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -19963,8 +20371,8 @@ func awsAwsquery_deserializeErrorResizeNotFoundFault(response *smithyhttp.Respon return output } -func awsAwsquery_deserializeErrorResourceNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ResourceNotFoundFault{} +func awsAwsquery_deserializeErrorRedshiftIdcApplicationQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.RedshiftIdcApplicationQuotaExceededFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -19994,7 +20402,7 @@ func awsAwsquery_deserializeErrorResourceNotFoundFault(response *smithyhttp.Resp } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentResourceNotFoundFault(&output, decoder) + err = awsAwsquery_deserializeDocumentRedshiftIdcApplicationQuotaExceededFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -20007,8 +20415,8 @@ func awsAwsquery_deserializeErrorResourceNotFoundFault(response *smithyhttp.Resp return output } -func awsAwsquery_deserializeErrorScheduledActionAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ScheduledActionAlreadyExistsFault{} +func awsAwsquery_deserializeErrorReservedNodeAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ReservedNodeAlreadyExistsFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -20038,7 +20446,7 @@ func awsAwsquery_deserializeErrorScheduledActionAlreadyExistsFault(response *smi } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentScheduledActionAlreadyExistsFault(&output, decoder) + err = awsAwsquery_deserializeDocumentReservedNodeAlreadyExistsFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -20051,8 +20459,8 @@ func awsAwsquery_deserializeErrorScheduledActionAlreadyExistsFault(response *smi return output } -func awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ScheduledActionNotFoundFault{} +func awsAwsquery_deserializeErrorReservedNodeAlreadyMigratedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ReservedNodeAlreadyMigratedFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -20082,7 +20490,7 @@ func awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response *smithyht } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentScheduledActionNotFoundFault(&output, decoder) + err = awsAwsquery_deserializeDocumentReservedNodeAlreadyMigratedFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -20095,8 +20503,8 @@ func awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response *smithyht return output } -func awsAwsquery_deserializeErrorScheduledActionQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ScheduledActionQuotaExceededFault{} +func awsAwsquery_deserializeErrorReservedNodeExchangeNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ReservedNodeExchangeNotFoundFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -20126,7 +20534,7 @@ func awsAwsquery_deserializeErrorScheduledActionQuotaExceededFault(response *smi } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentScheduledActionQuotaExceededFault(&output, decoder) + err = awsAwsquery_deserializeDocumentReservedNodeExchangeNotFoundFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -20139,8 +20547,8 @@ func awsAwsquery_deserializeErrorScheduledActionQuotaExceededFault(response *smi return output } -func awsAwsquery_deserializeErrorScheduledActionTypeUnsupportedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ScheduledActionTypeUnsupportedFault{} +func awsAwsquery_deserializeErrorReservedNodeNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ReservedNodeNotFoundFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -20170,7 +20578,7 @@ func awsAwsquery_deserializeErrorScheduledActionTypeUnsupportedFault(response *s } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentScheduledActionTypeUnsupportedFault(&output, decoder) + err = awsAwsquery_deserializeDocumentReservedNodeNotFoundFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -20183,8 +20591,8 @@ func awsAwsquery_deserializeErrorScheduledActionTypeUnsupportedFault(response *s return output } -func awsAwsquery_deserializeErrorScheduleDefinitionTypeUnsupportedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.ScheduleDefinitionTypeUnsupportedFault{} +func awsAwsquery_deserializeErrorReservedNodeOfferingNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ReservedNodeOfferingNotFoundFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -20214,7 +20622,7 @@ func awsAwsquery_deserializeErrorScheduleDefinitionTypeUnsupportedFault(response } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentScheduleDefinitionTypeUnsupportedFault(&output, decoder) + err = awsAwsquery_deserializeDocumentReservedNodeOfferingNotFoundFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -20227,8 +20635,8 @@ func awsAwsquery_deserializeErrorScheduleDefinitionTypeUnsupportedFault(response return output } -func awsAwsquery_deserializeErrorSnapshotCopyAlreadyDisabledFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.SnapshotCopyAlreadyDisabledFault{} +func awsAwsquery_deserializeErrorReservedNodeQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ReservedNodeQuotaExceededFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -20258,7 +20666,7 @@ func awsAwsquery_deserializeErrorSnapshotCopyAlreadyDisabledFault(response *smit } decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) - err = awsAwsquery_deserializeDocumentSnapshotCopyAlreadyDisabledFault(&output, decoder) + err = awsAwsquery_deserializeDocumentReservedNodeQuotaExceededFault(&output, decoder) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -20271,8 +20679,360 @@ func awsAwsquery_deserializeErrorSnapshotCopyAlreadyDisabledFault(response *smit return output } -func awsAwsquery_deserializeErrorSnapshotCopyAlreadyEnabledFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { - output := &types.SnapshotCopyAlreadyEnabledFault{} +func awsAwsquery_deserializeErrorResizeNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ResizeNotFoundFault{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(errorBody, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return output + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("Error") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeDocumentResizeNotFoundFault(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return output +} + +func awsAwsquery_deserializeErrorResourceNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ResourceNotFoundFault{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(errorBody, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return output + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("Error") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeDocumentResourceNotFoundFault(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return output +} + +func awsAwsquery_deserializeErrorScheduledActionAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ScheduledActionAlreadyExistsFault{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(errorBody, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return output + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("Error") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeDocumentScheduledActionAlreadyExistsFault(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return output +} + +func awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ScheduledActionNotFoundFault{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(errorBody, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return output + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("Error") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeDocumentScheduledActionNotFoundFault(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return output +} + +func awsAwsquery_deserializeErrorScheduledActionQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ScheduledActionQuotaExceededFault{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(errorBody, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return output + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("Error") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeDocumentScheduledActionQuotaExceededFault(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return output +} + +func awsAwsquery_deserializeErrorScheduledActionTypeUnsupportedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ScheduledActionTypeUnsupportedFault{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(errorBody, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return output + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("Error") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeDocumentScheduledActionTypeUnsupportedFault(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return output +} + +func awsAwsquery_deserializeErrorScheduleDefinitionTypeUnsupportedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.ScheduleDefinitionTypeUnsupportedFault{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(errorBody, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return output + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("Error") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeDocumentScheduleDefinitionTypeUnsupportedFault(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return output +} + +func awsAwsquery_deserializeErrorSnapshotCopyAlreadyDisabledFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.SnapshotCopyAlreadyDisabledFault{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(errorBody, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return output + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + t, err = decoder.GetElement("Error") + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t) + err = awsAwsquery_deserializeDocumentSnapshotCopyAlreadyDisabledFault(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return output +} + +func awsAwsquery_deserializeErrorSnapshotCopyAlreadyEnabledFault(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.SnapshotCopyAlreadyEnabledFault{} var buff [1024]byte ringBuffer := smithyio.NewRingBuffer(buff[:]) body := io.TeeReader(errorBody, ringBuffer) @@ -27964,6 +28724,104 @@ func awsAwsquery_deserializeDocumentEligibleTracksToUpdateListUnwrapped(v *[]typ *v = sv return nil } +func awsAwsquery_deserializeDocumentEncryptionContextMap(v *map[string]string, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv map[string]string + if *v == nil { + sv = make(map[string]string, 0) + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + switch { + case strings.EqualFold("entry", t.Name.Local): + entryDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentEncryptionContextMapUnwrapped(&sv, entryDecoder); err != nil { + return err + } + + default: + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + } + *v = sv + return nil +} + +func awsAwsquery_deserializeDocumentEncryptionContextMapUnwrapped(v *map[string]string, decoder smithyxml.NodeDecoder) error { + var sv map[string]string + if *v == nil { + sv = make(map[string]string, 0) + } else { + sv = *v + } + + var ek string + var ev string + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + sv[ek] = ev + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("key", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + ek = xtv + } + + case strings.EqualFold("value", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + ev = xtv + } + + default: + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} func awsAwsquery_deserializeDocumentEndpoint(v **types.Endpoint, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -30940,143 +31798,667 @@ func awsAwsquery_deserializeDocumentInsufficientS3BucketPolicyFault(v **types.In return nil } -func awsAwsquery_deserializeDocumentIntegrationError(v **types.IntegrationError, decoder smithyxml.NodeDecoder) error { +func awsAwsquery_deserializeDocumentIntegration(v **types.Integration, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *types.Integration + if *v == nil { + sv = &types.Integration{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("AdditionalEncryptionContext", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentEncryptionContextMap(&sv.AdditionalEncryptionContext, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("CreateTime", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + t, err := smithytime.ParseDateTime(xtv) + if err != nil { + return err + } + sv.CreateTime = ptr.Time(t) + } + + case strings.EqualFold("Description", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Description = ptr.String(xtv) + } + + case strings.EqualFold("Errors", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentIntegrationErrorList(&sv.Errors, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("IntegrationArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.IntegrationArn = ptr.String(xtv) + } + + case strings.EqualFold("IntegrationName", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.IntegrationName = ptr.String(xtv) + } + + case strings.EqualFold("KMSKeyId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.KMSKeyId = ptr.String(xtv) + } + + case strings.EqualFold("SourceArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.SourceArn = ptr.String(xtv) + } + + case strings.EqualFold("Status", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Status = types.ZeroETLIntegrationStatus(xtv) + } + + case strings.EqualFold("Tags", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentTagList(&sv.Tags, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("TargetArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.TargetArn = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeDocumentIntegrationAlreadyExistsFault(v **types.IntegrationAlreadyExistsFault, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *types.IntegrationAlreadyExistsFault + if *v == nil { + sv = &types.IntegrationAlreadyExistsFault{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("message", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Message = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeDocumentIntegrationConflictOperationFault(v **types.IntegrationConflictOperationFault, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *types.IntegrationConflictOperationFault + if *v == nil { + sv = &types.IntegrationConflictOperationFault{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("message", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Message = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeDocumentIntegrationConflictStateFault(v **types.IntegrationConflictStateFault, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *types.IntegrationConflictStateFault + if *v == nil { + sv = &types.IntegrationConflictStateFault{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("message", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Message = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeDocumentIntegrationError(v **types.IntegrationError, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *types.IntegrationError + if *v == nil { + sv = &types.IntegrationError{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("ErrorCode", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.ErrorCode = ptr.String(xtv) + } + + case strings.EqualFold("ErrorMessage", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.ErrorMessage = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeDocumentIntegrationErrorList(v *[]types.IntegrationError, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv []types.IntegrationError + if *v == nil { + sv = make([]types.IntegrationError, 0) + } else { + sv = *v + } + + originalDecoder := decoder + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + switch { + case strings.EqualFold("IntegrationError", t.Name.Local): + var col types.IntegrationError + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + destAddr := &col + if err := awsAwsquery_deserializeDocumentIntegrationError(&destAddr, nodeDecoder); err != nil { + return err + } + col = *destAddr + sv = append(sv, col) + + default: + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeDocumentIntegrationErrorListUnwrapped(v *[]types.IntegrationError, decoder smithyxml.NodeDecoder) error { + var sv []types.IntegrationError + if *v == nil { + sv = make([]types.IntegrationError, 0) + } else { + sv = *v + } + + switch { + default: + var mv types.IntegrationError + t := decoder.StartEl + _ = t + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + destAddr := &mv + if err := awsAwsquery_deserializeDocumentIntegrationError(&destAddr, nodeDecoder); err != nil { + return err + } + mv = *destAddr + sv = append(sv, mv) + } + *v = sv + return nil +} +func awsAwsquery_deserializeDocumentIntegrationList(v *[]types.Integration, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv []types.Integration + if *v == nil { + sv = make([]types.Integration, 0) + } else { + sv = *v + } + + originalDecoder := decoder + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + switch { + case strings.EqualFold("Integration", t.Name.Local): + var col types.Integration + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + destAddr := &col + if err := awsAwsquery_deserializeDocumentIntegration(&destAddr, nodeDecoder); err != nil { + return err + } + col = *destAddr + sv = append(sv, col) + + default: + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeDocumentIntegrationListUnwrapped(v *[]types.Integration, decoder smithyxml.NodeDecoder) error { + var sv []types.Integration + if *v == nil { + sv = make([]types.Integration, 0) + } else { + sv = *v + } + + switch { + default: + var mv types.Integration + t := decoder.StartEl + _ = t + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + destAddr := &mv + if err := awsAwsquery_deserializeDocumentIntegration(&destAddr, nodeDecoder); err != nil { + return err + } + mv = *destAddr + sv = append(sv, mv) + } + *v = sv + return nil +} +func awsAwsquery_deserializeDocumentIntegrationNotFoundFault(v **types.IntegrationNotFoundFault, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *types.IntegrationNotFoundFault + if *v == nil { + sv = &types.IntegrationNotFoundFault{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("message", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Message = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeDocumentIntegrationQuotaExceededFault(v **types.IntegrationQuotaExceededFault, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *types.IntegrationQuotaExceededFault + if *v == nil { + sv = &types.IntegrationQuotaExceededFault{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("message", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Message = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeDocumentIntegrationSourceNotFoundFault(v **types.IntegrationSourceNotFoundFault, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *types.IntegrationSourceNotFoundFault + if *v == nil { + sv = &types.IntegrationSourceNotFoundFault{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("message", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Message = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeDocumentIntegrationTargetNotFoundFault(v **types.IntegrationTargetNotFoundFault, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } - var sv *types.IntegrationError + var sv *types.IntegrationTargetNotFoundFault if *v == nil { - sv = &types.IntegrationError{} - } else { - sv = *v - } - - for { - t, done, err := decoder.Token() - if err != nil { - return err - } - if done { - break - } - originalDecoder := decoder - decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) - switch { - case strings.EqualFold("ErrorCode", t.Name.Local): - val, err := decoder.Value() - if err != nil { - return err - } - if val == nil { - break - } - { - xtv := string(val) - sv.ErrorCode = ptr.String(xtv) - } - - case strings.EqualFold("ErrorMessage", t.Name.Local): - val, err := decoder.Value() - if err != nil { - return err - } - if val == nil { - break - } - { - xtv := string(val) - sv.ErrorMessage = ptr.String(xtv) - } - - default: - // Do nothing and ignore the unexpected tag element - err = decoder.Decoder.Skip() - if err != nil { - return err - } - - } - decoder = originalDecoder - } - *v = sv - return nil -} - -func awsAwsquery_deserializeDocumentIntegrationErrorList(v *[]types.IntegrationError, decoder smithyxml.NodeDecoder) error { - if v == nil { - return fmt.Errorf("unexpected nil of type %T", v) - } - var sv []types.IntegrationError - if *v == nil { - sv = make([]types.IntegrationError, 0) - } else { - sv = *v - } - - originalDecoder := decoder - for { - t, done, err := decoder.Token() - if err != nil { - return err - } - if done { - break - } - switch { - case strings.EqualFold("IntegrationError", t.Name.Local): - var col types.IntegrationError - nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - destAddr := &col - if err := awsAwsquery_deserializeDocumentIntegrationError(&destAddr, nodeDecoder); err != nil { - return err - } - col = *destAddr - sv = append(sv, col) - - default: - err = decoder.Decoder.Skip() - if err != nil { - return err - } - - } - decoder = originalDecoder - } - *v = sv - return nil -} - -func awsAwsquery_deserializeDocumentIntegrationErrorListUnwrapped(v *[]types.IntegrationError, decoder smithyxml.NodeDecoder) error { - var sv []types.IntegrationError - if *v == nil { - sv = make([]types.IntegrationError, 0) - } else { - sv = *v - } - - switch { - default: - var mv types.IntegrationError - t := decoder.StartEl - _ = t - nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - destAddr := &mv - if err := awsAwsquery_deserializeDocumentIntegrationError(&destAddr, nodeDecoder); err != nil { - return err - } - mv = *destAddr - sv = append(sv, mv) - } - *v = sv - return nil -} -func awsAwsquery_deserializeDocumentIntegrationNotFoundFault(v **types.IntegrationNotFoundFault, decoder smithyxml.NodeDecoder) error { - if v == nil { - return fmt.Errorf("unexpected nil of type %T", v) - } - var sv *types.IntegrationNotFoundFault - if *v == nil { - sv = &types.IntegrationNotFoundFault{} + sv = &types.IntegrationTargetNotFoundFault{} } else { sv = *v } @@ -44444,6 +45826,168 @@ func awsAwsquery_deserializeOpDocumentCreateHsmConfigurationOutput(v **CreateHsm return nil } +func awsAwsquery_deserializeOpDocumentCreateIntegrationOutput(v **CreateIntegrationOutput, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *CreateIntegrationOutput + if *v == nil { + sv = &CreateIntegrationOutput{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("AdditionalEncryptionContext", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentEncryptionContextMap(&sv.AdditionalEncryptionContext, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("CreateTime", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + t, err := smithytime.ParseDateTime(xtv) + if err != nil { + return err + } + sv.CreateTime = ptr.Time(t) + } + + case strings.EqualFold("Description", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Description = ptr.String(xtv) + } + + case strings.EqualFold("Errors", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentIntegrationErrorList(&sv.Errors, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("IntegrationArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.IntegrationArn = ptr.String(xtv) + } + + case strings.EqualFold("IntegrationName", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.IntegrationName = ptr.String(xtv) + } + + case strings.EqualFold("KMSKeyId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.KMSKeyId = ptr.String(xtv) + } + + case strings.EqualFold("SourceArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.SourceArn = ptr.String(xtv) + } + + case strings.EqualFold("Status", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Status = types.ZeroETLIntegrationStatus(xtv) + } + + case strings.EqualFold("Tags", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentTagList(&sv.Tags, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("TargetArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.TargetArn = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + func awsAwsquery_deserializeOpDocumentCreateRedshiftIdcApplicationOutput(v **CreateRedshiftIdcApplicationOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -45305,6 +46849,168 @@ func awsAwsquery_deserializeOpDocumentDeleteEndpointAccessOutput(v **DeleteEndpo return nil } +func awsAwsquery_deserializeOpDocumentDeleteIntegrationOutput(v **DeleteIntegrationOutput, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *DeleteIntegrationOutput + if *v == nil { + sv = &DeleteIntegrationOutput{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("AdditionalEncryptionContext", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentEncryptionContextMap(&sv.AdditionalEncryptionContext, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("CreateTime", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + t, err := smithytime.ParseDateTime(xtv) + if err != nil { + return err + } + sv.CreateTime = ptr.Time(t) + } + + case strings.EqualFold("Description", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Description = ptr.String(xtv) + } + + case strings.EqualFold("Errors", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentIntegrationErrorList(&sv.Errors, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("IntegrationArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.IntegrationArn = ptr.String(xtv) + } + + case strings.EqualFold("IntegrationName", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.IntegrationName = ptr.String(xtv) + } + + case strings.EqualFold("KMSKeyId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.KMSKeyId = ptr.String(xtv) + } + + case strings.EqualFold("SourceArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.SourceArn = ptr.String(xtv) + } + + case strings.EqualFold("Status", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Status = types.ZeroETLIntegrationStatus(xtv) + } + + case strings.EqualFold("Tags", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentTagList(&sv.Tags, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("TargetArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.TargetArn = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + func awsAwsquery_deserializeOpDocumentDeletePartnerOutput(v **DeletePartnerOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -46111,13 +47817,165 @@ func awsAwsquery_deserializeOpDocumentDescribeDataSharesForProducerOutput(v **De return nil } -func awsAwsquery_deserializeOpDocumentDescribeDataSharesOutput(v **DescribeDataSharesOutput, decoder smithyxml.NodeDecoder) error { +func awsAwsquery_deserializeOpDocumentDescribeDataSharesOutput(v **DescribeDataSharesOutput, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *DescribeDataSharesOutput + if *v == nil { + sv = &DescribeDataSharesOutput{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("DataShares", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentDataShareList(&sv.DataShares, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("Marker", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Marker = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeOpDocumentDescribeDefaultClusterParametersOutput(v **DescribeDefaultClusterParametersOutput, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *DescribeDefaultClusterParametersOutput + if *v == nil { + sv = &DescribeDefaultClusterParametersOutput{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("DefaultClusterParameters", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentDefaultClusterParameters(&sv.DefaultClusterParameters, nodeDecoder); err != nil { + return err + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeOpDocumentDescribeEndpointAccessOutput(v **DescribeEndpointAccessOutput, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *DescribeEndpointAccessOutput + if *v == nil { + sv = &DescribeEndpointAccessOutput{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("EndpointAccessList", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentEndpointAccesses(&sv.EndpointAccessList, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("Marker", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Marker = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + +func awsAwsquery_deserializeOpDocumentDescribeEndpointAuthorizationOutput(v **DescribeEndpointAuthorizationOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } - var sv *DescribeDataSharesOutput + var sv *DescribeEndpointAuthorizationOutput if *v == nil { - sv = &DescribeDataSharesOutput{} + sv = &DescribeEndpointAuthorizationOutput{} } else { sv = *v } @@ -46133,9 +47991,9 @@ func awsAwsquery_deserializeOpDocumentDescribeDataSharesOutput(v **DescribeDataS originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { - case strings.EqualFold("DataShares", t.Name.Local): + case strings.EqualFold("EndpointAuthorizationList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - if err := awsAwsquery_deserializeDocumentDataShareList(&sv.DataShares, nodeDecoder); err != nil { + if err := awsAwsquery_deserializeDocumentEndpointAuthorizations(&sv.EndpointAuthorizationList, nodeDecoder); err != nil { return err } @@ -46166,55 +48024,13 @@ func awsAwsquery_deserializeOpDocumentDescribeDataSharesOutput(v **DescribeDataS return nil } -func awsAwsquery_deserializeOpDocumentDescribeDefaultClusterParametersOutput(v **DescribeDefaultClusterParametersOutput, decoder smithyxml.NodeDecoder) error { - if v == nil { - return fmt.Errorf("unexpected nil of type %T", v) - } - var sv *DescribeDefaultClusterParametersOutput - if *v == nil { - sv = &DescribeDefaultClusterParametersOutput{} - } else { - sv = *v - } - - for { - t, done, err := decoder.Token() - if err != nil { - return err - } - if done { - break - } - originalDecoder := decoder - decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) - switch { - case strings.EqualFold("DefaultClusterParameters", t.Name.Local): - nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - if err := awsAwsquery_deserializeDocumentDefaultClusterParameters(&sv.DefaultClusterParameters, nodeDecoder); err != nil { - return err - } - - default: - // Do nothing and ignore the unexpected tag element - err = decoder.Decoder.Skip() - if err != nil { - return err - } - - } - decoder = originalDecoder - } - *v = sv - return nil -} - -func awsAwsquery_deserializeOpDocumentDescribeEndpointAccessOutput(v **DescribeEndpointAccessOutput, decoder smithyxml.NodeDecoder) error { +func awsAwsquery_deserializeOpDocumentDescribeEventCategoriesOutput(v **DescribeEventCategoriesOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } - var sv *DescribeEndpointAccessOutput + var sv *DescribeEventCategoriesOutput if *v == nil { - sv = &DescribeEndpointAccessOutput{} + sv = &DescribeEventCategoriesOutput{} } else { sv = *v } @@ -46230,24 +48046,11 @@ func awsAwsquery_deserializeOpDocumentDescribeEndpointAccessOutput(v **DescribeE originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { - case strings.EqualFold("EndpointAccessList", t.Name.Local): + case strings.EqualFold("EventCategoriesMapList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - if err := awsAwsquery_deserializeDocumentEndpointAccesses(&sv.EndpointAccessList, nodeDecoder); err != nil { - return err - } - - case strings.EqualFold("Marker", t.Name.Local): - val, err := decoder.Value() - if err != nil { + if err := awsAwsquery_deserializeDocumentEventCategoriesMapList(&sv.EventCategoriesMapList, nodeDecoder); err != nil { return err } - if val == nil { - break - } - { - xtv := string(val) - sv.Marker = ptr.String(xtv) - } default: // Do nothing and ignore the unexpected tag element @@ -46263,13 +48066,13 @@ func awsAwsquery_deserializeOpDocumentDescribeEndpointAccessOutput(v **DescribeE return nil } -func awsAwsquery_deserializeOpDocumentDescribeEndpointAuthorizationOutput(v **DescribeEndpointAuthorizationOutput, decoder smithyxml.NodeDecoder) error { +func awsAwsquery_deserializeOpDocumentDescribeEventsOutput(v **DescribeEventsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } - var sv *DescribeEndpointAuthorizationOutput + var sv *DescribeEventsOutput if *v == nil { - sv = &DescribeEndpointAuthorizationOutput{} + sv = &DescribeEventsOutput{} } else { sv = *v } @@ -46285,9 +48088,9 @@ func awsAwsquery_deserializeOpDocumentDescribeEndpointAuthorizationOutput(v **De originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { - case strings.EqualFold("EndpointAuthorizationList", t.Name.Local): + case strings.EqualFold("Events", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - if err := awsAwsquery_deserializeDocumentEndpointAuthorizations(&sv.EndpointAuthorizationList, nodeDecoder); err != nil { + if err := awsAwsquery_deserializeDocumentEventList(&sv.Events, nodeDecoder); err != nil { return err } @@ -46318,55 +48121,13 @@ func awsAwsquery_deserializeOpDocumentDescribeEndpointAuthorizationOutput(v **De return nil } -func awsAwsquery_deserializeOpDocumentDescribeEventCategoriesOutput(v **DescribeEventCategoriesOutput, decoder smithyxml.NodeDecoder) error { - if v == nil { - return fmt.Errorf("unexpected nil of type %T", v) - } - var sv *DescribeEventCategoriesOutput - if *v == nil { - sv = &DescribeEventCategoriesOutput{} - } else { - sv = *v - } - - for { - t, done, err := decoder.Token() - if err != nil { - return err - } - if done { - break - } - originalDecoder := decoder - decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) - switch { - case strings.EqualFold("EventCategoriesMapList", t.Name.Local): - nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - if err := awsAwsquery_deserializeDocumentEventCategoriesMapList(&sv.EventCategoriesMapList, nodeDecoder); err != nil { - return err - } - - default: - // Do nothing and ignore the unexpected tag element - err = decoder.Decoder.Skip() - if err != nil { - return err - } - - } - decoder = originalDecoder - } - *v = sv - return nil -} - -func awsAwsquery_deserializeOpDocumentDescribeEventsOutput(v **DescribeEventsOutput, decoder smithyxml.NodeDecoder) error { +func awsAwsquery_deserializeOpDocumentDescribeEventSubscriptionsOutput(v **DescribeEventSubscriptionsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } - var sv *DescribeEventsOutput + var sv *DescribeEventSubscriptionsOutput if *v == nil { - sv = &DescribeEventsOutput{} + sv = &DescribeEventSubscriptionsOutput{} } else { sv = *v } @@ -46382,9 +48143,9 @@ func awsAwsquery_deserializeOpDocumentDescribeEventsOutput(v **DescribeEventsOut originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { - case strings.EqualFold("Events", t.Name.Local): + case strings.EqualFold("EventSubscriptionsList", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - if err := awsAwsquery_deserializeDocumentEventList(&sv.Events, nodeDecoder); err != nil { + if err := awsAwsquery_deserializeDocumentEventSubscriptionsList(&sv.EventSubscriptionsList, nodeDecoder); err != nil { return err } @@ -46415,13 +48176,13 @@ func awsAwsquery_deserializeOpDocumentDescribeEventsOutput(v **DescribeEventsOut return nil } -func awsAwsquery_deserializeOpDocumentDescribeEventSubscriptionsOutput(v **DescribeEventSubscriptionsOutput, decoder smithyxml.NodeDecoder) error { +func awsAwsquery_deserializeOpDocumentDescribeHsmClientCertificatesOutput(v **DescribeHsmClientCertificatesOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } - var sv *DescribeEventSubscriptionsOutput + var sv *DescribeHsmClientCertificatesOutput if *v == nil { - sv = &DescribeEventSubscriptionsOutput{} + sv = &DescribeHsmClientCertificatesOutput{} } else { sv = *v } @@ -46437,9 +48198,9 @@ func awsAwsquery_deserializeOpDocumentDescribeEventSubscriptionsOutput(v **Descr originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { - case strings.EqualFold("EventSubscriptionsList", t.Name.Local): + case strings.EqualFold("HsmClientCertificates", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - if err := awsAwsquery_deserializeDocumentEventSubscriptionsList(&sv.EventSubscriptionsList, nodeDecoder); err != nil { + if err := awsAwsquery_deserializeDocumentHsmClientCertificateList(&sv.HsmClientCertificates, nodeDecoder); err != nil { return err } @@ -46470,13 +48231,13 @@ func awsAwsquery_deserializeOpDocumentDescribeEventSubscriptionsOutput(v **Descr return nil } -func awsAwsquery_deserializeOpDocumentDescribeHsmClientCertificatesOutput(v **DescribeHsmClientCertificatesOutput, decoder smithyxml.NodeDecoder) error { +func awsAwsquery_deserializeOpDocumentDescribeHsmConfigurationsOutput(v **DescribeHsmConfigurationsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } - var sv *DescribeHsmClientCertificatesOutput + var sv *DescribeHsmConfigurationsOutput if *v == nil { - sv = &DescribeHsmClientCertificatesOutput{} + sv = &DescribeHsmConfigurationsOutput{} } else { sv = *v } @@ -46492,9 +48253,9 @@ func awsAwsquery_deserializeOpDocumentDescribeHsmClientCertificatesOutput(v **De originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { - case strings.EqualFold("HsmClientCertificates", t.Name.Local): + case strings.EqualFold("HsmConfigurations", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - if err := awsAwsquery_deserializeDocumentHsmClientCertificateList(&sv.HsmClientCertificates, nodeDecoder); err != nil { + if err := awsAwsquery_deserializeDocumentHsmConfigurationList(&sv.HsmConfigurations, nodeDecoder); err != nil { return err } @@ -46525,13 +48286,13 @@ func awsAwsquery_deserializeOpDocumentDescribeHsmClientCertificatesOutput(v **De return nil } -func awsAwsquery_deserializeOpDocumentDescribeHsmConfigurationsOutput(v **DescribeHsmConfigurationsOutput, decoder smithyxml.NodeDecoder) error { +func awsAwsquery_deserializeOpDocumentDescribeInboundIntegrationsOutput(v **DescribeInboundIntegrationsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } - var sv *DescribeHsmConfigurationsOutput + var sv *DescribeInboundIntegrationsOutput if *v == nil { - sv = &DescribeHsmConfigurationsOutput{} + sv = &DescribeInboundIntegrationsOutput{} } else { sv = *v } @@ -46547,9 +48308,9 @@ func awsAwsquery_deserializeOpDocumentDescribeHsmConfigurationsOutput(v **Descri originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { - case strings.EqualFold("HsmConfigurations", t.Name.Local): + case strings.EqualFold("InboundIntegrations", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - if err := awsAwsquery_deserializeDocumentHsmConfigurationList(&sv.HsmConfigurations, nodeDecoder); err != nil { + if err := awsAwsquery_deserializeDocumentInboundIntegrationList(&sv.InboundIntegrations, nodeDecoder); err != nil { return err } @@ -46580,13 +48341,13 @@ func awsAwsquery_deserializeOpDocumentDescribeHsmConfigurationsOutput(v **Descri return nil } -func awsAwsquery_deserializeOpDocumentDescribeInboundIntegrationsOutput(v **DescribeInboundIntegrationsOutput, decoder smithyxml.NodeDecoder) error { +func awsAwsquery_deserializeOpDocumentDescribeIntegrationsOutput(v **DescribeIntegrationsOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } - var sv *DescribeInboundIntegrationsOutput + var sv *DescribeIntegrationsOutput if *v == nil { - sv = &DescribeInboundIntegrationsOutput{} + sv = &DescribeIntegrationsOutput{} } else { sv = *v } @@ -46602,9 +48363,9 @@ func awsAwsquery_deserializeOpDocumentDescribeInboundIntegrationsOutput(v **Desc originalDecoder := decoder decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) switch { - case strings.EqualFold("InboundIntegrations", t.Name.Local): + case strings.EqualFold("Integrations", t.Name.Local): nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) - if err := awsAwsquery_deserializeDocumentInboundIntegrationList(&sv.InboundIntegrations, nodeDecoder); err != nil { + if err := awsAwsquery_deserializeDocumentIntegrationList(&sv.Integrations, nodeDecoder); err != nil { return err } @@ -49403,6 +51164,168 @@ func awsAwsquery_deserializeOpDocumentModifyEventSubscriptionOutput(v **ModifyEv return nil } +func awsAwsquery_deserializeOpDocumentModifyIntegrationOutput(v **ModifyIntegrationOutput, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *ModifyIntegrationOutput + if *v == nil { + sv = &ModifyIntegrationOutput{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("AdditionalEncryptionContext", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentEncryptionContextMap(&sv.AdditionalEncryptionContext, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("CreateTime", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + t, err := smithytime.ParseDateTime(xtv) + if err != nil { + return err + } + sv.CreateTime = ptr.Time(t) + } + + case strings.EqualFold("Description", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Description = ptr.String(xtv) + } + + case strings.EqualFold("Errors", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentIntegrationErrorList(&sv.Errors, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("IntegrationArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.IntegrationArn = ptr.String(xtv) + } + + case strings.EqualFold("IntegrationName", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.IntegrationName = ptr.String(xtv) + } + + case strings.EqualFold("KMSKeyId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.KMSKeyId = ptr.String(xtv) + } + + case strings.EqualFold("SourceArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.SourceArn = ptr.String(xtv) + } + + case strings.EqualFold("Status", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.Status = types.ZeroETLIntegrationStatus(xtv) + } + + case strings.EqualFold("Tags", t.Name.Local): + nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t) + if err := awsAwsquery_deserializeDocumentTagList(&sv.Tags, nodeDecoder); err != nil { + return err + } + + case strings.EqualFold("TargetArn", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.TargetArn = ptr.String(xtv) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + func awsAwsquery_deserializeOpDocumentModifyRedshiftIdcApplicationOutput(v **ModifyRedshiftIdcApplicationOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/redshift/generated.json b/service/redshift/generated.json index faacb104df8..ad9c1ee3b00 100644 --- a/service/redshift/generated.json +++ b/service/redshift/generated.json @@ -31,6 +31,7 @@ "api_op_CreateEventSubscription.go", "api_op_CreateHsmClientCertificate.go", "api_op_CreateHsmConfiguration.go", + "api_op_CreateIntegration.go", "api_op_CreateRedshiftIdcApplication.go", "api_op_CreateScheduledAction.go", "api_op_CreateSnapshotCopyGrant.go", @@ -49,6 +50,7 @@ "api_op_DeleteEventSubscription.go", "api_op_DeleteHsmClientCertificate.go", "api_op_DeleteHsmConfiguration.go", + "api_op_DeleteIntegration.go", "api_op_DeletePartner.go", "api_op_DeleteRedshiftIdcApplication.go", "api_op_DeleteResourcePolicy.go", @@ -81,6 +83,7 @@ "api_op_DescribeHsmClientCertificates.go", "api_op_DescribeHsmConfigurations.go", "api_op_DescribeInboundIntegrations.go", + "api_op_DescribeIntegrations.go", "api_op_DescribeLoggingStatus.go", "api_op_DescribeNodeConfigurationOptions.go", "api_op_DescribeOrderableClusterOptions.go", @@ -122,6 +125,7 @@ "api_op_ModifyCustomDomainAssociation.go", "api_op_ModifyEndpointAccess.go", "api_op_ModifyEventSubscription.go", + "api_op_ModifyIntegration.go", "api_op_ModifyRedshiftIdcApplication.go", "api_op_ModifyScheduledAction.go", "api_op_ModifySnapshotCopyRetentionPeriod.go", diff --git a/service/redshift/serializers.go b/service/redshift/serializers.go index 727d2aad7ce..5c957c6b3c7 100644 --- a/service/redshift/serializers.go +++ b/service/redshift/serializers.go @@ -15,6 +15,7 @@ import ( "github.com/aws/smithy-go/tracing" smithyhttp "github.com/aws/smithy-go/transport/http" "path" + "sort" ) type awsAwsquery_serializeOpAcceptReservedNodeExchange struct { @@ -1557,6 +1558,76 @@ func (m *awsAwsquery_serializeOpCreateHsmConfiguration) HandleSerialize(ctx cont return next.HandleSerialize(ctx, in) } +type awsAwsquery_serializeOpCreateIntegration struct { +} + +func (*awsAwsquery_serializeOpCreateIntegration) ID() string { + return "OperationSerializer" +} + +func (m *awsAwsquery_serializeOpCreateIntegration) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + _, span := tracing.StartSpan(ctx, "OperationSerializer") + endTimer := startMetricTimer(ctx, "client.call.serialization_duration") + defer endTimer() + defer span.End() + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*CreateIntegrationInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-www-form-urlencoded") + + bodyWriter := bytes.NewBuffer(nil) + bodyEncoder := query.NewEncoder(bodyWriter) + body := bodyEncoder.Object() + body.Key("Action").String("CreateIntegration") + body.Key("Version").String("2012-12-01") + + if err := awsAwsquery_serializeOpDocumentCreateIntegrationInput(input, bodyEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + err = bodyEncoder.Encode() + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(bodyWriter.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + endTimer() + span.End() + return next.HandleSerialize(ctx, in) +} + type awsAwsquery_serializeOpCreateRedshiftIdcApplication struct { } @@ -2817,6 +2888,76 @@ func (m *awsAwsquery_serializeOpDeleteHsmConfiguration) HandleSerialize(ctx cont return next.HandleSerialize(ctx, in) } +type awsAwsquery_serializeOpDeleteIntegration struct { +} + +func (*awsAwsquery_serializeOpDeleteIntegration) ID() string { + return "OperationSerializer" +} + +func (m *awsAwsquery_serializeOpDeleteIntegration) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + _, span := tracing.StartSpan(ctx, "OperationSerializer") + endTimer := startMetricTimer(ctx, "client.call.serialization_duration") + defer endTimer() + defer span.End() + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*DeleteIntegrationInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-www-form-urlencoded") + + bodyWriter := bytes.NewBuffer(nil) + bodyEncoder := query.NewEncoder(bodyWriter) + body := bodyEncoder.Object() + body.Key("Action").String("DeleteIntegration") + body.Key("Version").String("2012-12-01") + + if err := awsAwsquery_serializeOpDocumentDeleteIntegrationInput(input, bodyEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + err = bodyEncoder.Encode() + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(bodyWriter.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + endTimer() + span.End() + return next.HandleSerialize(ctx, in) +} + type awsAwsquery_serializeOpDeletePartner struct { } @@ -5057,6 +5198,76 @@ func (m *awsAwsquery_serializeOpDescribeInboundIntegrations) HandleSerialize(ctx return next.HandleSerialize(ctx, in) } +type awsAwsquery_serializeOpDescribeIntegrations struct { +} + +func (*awsAwsquery_serializeOpDescribeIntegrations) ID() string { + return "OperationSerializer" +} + +func (m *awsAwsquery_serializeOpDescribeIntegrations) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + _, span := tracing.StartSpan(ctx, "OperationSerializer") + endTimer := startMetricTimer(ctx, "client.call.serialization_duration") + defer endTimer() + defer span.End() + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*DescribeIntegrationsInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-www-form-urlencoded") + + bodyWriter := bytes.NewBuffer(nil) + bodyEncoder := query.NewEncoder(bodyWriter) + body := bodyEncoder.Object() + body.Key("Action").String("DescribeIntegrations") + body.Key("Version").String("2012-12-01") + + if err := awsAwsquery_serializeOpDocumentDescribeIntegrationsInput(input, bodyEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + err = bodyEncoder.Encode() + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(bodyWriter.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + endTimer() + span.End() + return next.HandleSerialize(ctx, in) +} + type awsAwsquery_serializeOpDescribeLoggingStatus struct { } @@ -7923,6 +8134,76 @@ func (m *awsAwsquery_serializeOpModifyEventSubscription) HandleSerialize(ctx con return next.HandleSerialize(ctx, in) } +type awsAwsquery_serializeOpModifyIntegration struct { +} + +func (*awsAwsquery_serializeOpModifyIntegration) ID() string { + return "OperationSerializer" +} + +func (m *awsAwsquery_serializeOpModifyIntegration) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + _, span := tracing.StartSpan(ctx, "OperationSerializer") + endTimer := startMetricTimer(ctx, "client.call.serialization_duration") + defer endTimer() + defer span.End() + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*ModifyIntegrationInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-www-form-urlencoded") + + bodyWriter := bytes.NewBuffer(nil) + bodyEncoder := query.NewEncoder(bodyWriter) + body := bodyEncoder.Object() + body.Key("Action").String("ModifyIntegration") + body.Key("Version").String("2012-12-01") + + if err := awsAwsquery_serializeOpDocumentModifyIntegrationInput(input, bodyEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + err = bodyEncoder.Encode() + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(bodyWriter.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + endTimer() + span.End() + return next.HandleSerialize(ctx, in) +} + type awsAwsquery_serializeOpModifyRedshiftIdcApplication struct { } @@ -9422,6 +9703,66 @@ func awsAwsquery_serializeDocumentDeleteClusterSnapshotMessageList(v []types.Del return nil } +func awsAwsquery_serializeDocumentDescribeIntegrationsFilter(v *types.DescribeIntegrationsFilter, value query.Value) error { + object := value.Object() + _ = object + + if len(v.Name) > 0 { + objectKey := object.Key("Name") + objectKey.String(string(v.Name)) + } + + if v.Values != nil { + objectKey := object.Key("Values") + if err := awsAwsquery_serializeDocumentDescribeIntegrationsFilterValueList(v.Values, objectKey); err != nil { + return err + } + } + + return nil +} + +func awsAwsquery_serializeDocumentDescribeIntegrationsFilterList(v []types.DescribeIntegrationsFilter, value query.Value) error { + array := value.Array("DescribeIntegrationsFilter") + + for i := range v { + av := array.Value() + if err := awsAwsquery_serializeDocumentDescribeIntegrationsFilter(&v[i], av); err != nil { + return err + } + } + return nil +} + +func awsAwsquery_serializeDocumentDescribeIntegrationsFilterValueList(v []string, value query.Value) error { + array := value.Array("Value") + + for i := range v { + av := array.Value() + av.String(v[i]) + } + return nil +} + +func awsAwsquery_serializeDocumentEncryptionContextMap(v map[string]string, value query.Value) error { + if len(v) == 0 { + return nil + } + object := value.Map("key", "value") + + keys := make([]string, 0, len(v)) + for key := range v { + keys = append(keys, key) + } + sort.Strings(keys) + + for _, key := range keys { + om := object.Key(key) + om.String(v[key]) + } + return nil +} + func awsAwsquery_serializeDocumentEventCategoriesList(v []string, value query.Value) error { array := value.Array("EventCategory") @@ -10666,6 +11007,52 @@ func awsAwsquery_serializeOpDocumentCreateHsmConfigurationInput(v *CreateHsmConf return nil } +func awsAwsquery_serializeOpDocumentCreateIntegrationInput(v *CreateIntegrationInput, value query.Value) error { + object := value.Object() + _ = object + + if v.AdditionalEncryptionContext != nil { + objectKey := object.Key("AdditionalEncryptionContext") + if err := awsAwsquery_serializeDocumentEncryptionContextMap(v.AdditionalEncryptionContext, objectKey); err != nil { + return err + } + } + + if v.Description != nil { + objectKey := object.Key("Description") + objectKey.String(*v.Description) + } + + if v.IntegrationName != nil { + objectKey := object.Key("IntegrationName") + objectKey.String(*v.IntegrationName) + } + + if v.KMSKeyId != nil { + objectKey := object.Key("KMSKeyId") + objectKey.String(*v.KMSKeyId) + } + + if v.SourceArn != nil { + objectKey := object.Key("SourceArn") + objectKey.String(*v.SourceArn) + } + + if v.TagList != nil { + objectKey := object.Key("TagList") + if err := awsAwsquery_serializeDocumentTagList(v.TagList, objectKey); err != nil { + return err + } + } + + if v.TargetArn != nil { + objectKey := object.Key("TargetArn") + objectKey.String(*v.TargetArn) + } + + return nil +} + func awsAwsquery_serializeOpDocumentCreateRedshiftIdcApplicationInput(v *CreateRedshiftIdcApplicationInput, value query.Value) error { object := value.Object() _ = object @@ -11063,6 +11450,18 @@ func awsAwsquery_serializeOpDocumentDeleteHsmConfigurationInput(v *DeleteHsmConf return nil } +func awsAwsquery_serializeOpDocumentDeleteIntegrationInput(v *DeleteIntegrationInput, value query.Value) error { + object := value.Object() + _ = object + + if v.IntegrationArn != nil { + objectKey := object.Key("IntegrationArn") + objectKey.String(*v.IntegrationArn) + } + + return nil +} + func awsAwsquery_serializeOpDocumentDeletePartnerInput(v *DeletePartnerInput, value query.Value) error { object := value.Object() _ = object @@ -11910,6 +12309,35 @@ func awsAwsquery_serializeOpDocumentDescribeInboundIntegrationsInput(v *Describe return nil } +func awsAwsquery_serializeOpDocumentDescribeIntegrationsInput(v *DescribeIntegrationsInput, value query.Value) error { + object := value.Object() + _ = object + + if v.Filters != nil { + objectKey := object.Key("Filters") + if err := awsAwsquery_serializeDocumentDescribeIntegrationsFilterList(v.Filters, objectKey); err != nil { + return err + } + } + + if v.IntegrationArn != nil { + objectKey := object.Key("IntegrationArn") + objectKey.String(*v.IntegrationArn) + } + + if v.Marker != nil { + objectKey := object.Key("Marker") + objectKey.String(*v.Marker) + } + + if v.MaxRecords != nil { + objectKey := object.Key("MaxRecords") + objectKey.Integer(*v.MaxRecords) + } + + return nil +} + func awsAwsquery_serializeOpDocumentDescribeLoggingStatusInput(v *DescribeLoggingStatusInput, value query.Value) error { object := value.Object() _ = object @@ -13112,6 +13540,28 @@ func awsAwsquery_serializeOpDocumentModifyEventSubscriptionInput(v *ModifyEventS return nil } +func awsAwsquery_serializeOpDocumentModifyIntegrationInput(v *ModifyIntegrationInput, value query.Value) error { + object := value.Object() + _ = object + + if v.Description != nil { + objectKey := object.Key("Description") + objectKey.String(*v.Description) + } + + if v.IntegrationArn != nil { + objectKey := object.Key("IntegrationArn") + objectKey.String(*v.IntegrationArn) + } + + if v.IntegrationName != nil { + objectKey := object.Key("IntegrationName") + objectKey.String(*v.IntegrationName) + } + + return nil +} + func awsAwsquery_serializeOpDocumentModifyRedshiftIdcApplicationInput(v *ModifyRedshiftIdcApplicationInput, value query.Value) error { object := value.Object() _ = object diff --git a/service/redshift/snapshot/api_op_CreateIntegration.go.snap b/service/redshift/snapshot/api_op_CreateIntegration.go.snap new file mode 100644 index 00000000000..0729c55fdc9 --- /dev/null +++ b/service/redshift/snapshot/api_op_CreateIntegration.go.snap @@ -0,0 +1,41 @@ +CreateIntegration + Initialize stack step + spanInitializeStart + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + spanInitializeEnd + Serialize stack step + spanBuildRequestStart + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + spanBuildRequestEnd + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + spanRetryLoop + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/redshift/snapshot/api_op_DeleteIntegration.go.snap b/service/redshift/snapshot/api_op_DeleteIntegration.go.snap new file mode 100644 index 00000000000..b1344cb7c54 --- /dev/null +++ b/service/redshift/snapshot/api_op_DeleteIntegration.go.snap @@ -0,0 +1,41 @@ +DeleteIntegration + Initialize stack step + spanInitializeStart + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + spanInitializeEnd + Serialize stack step + spanBuildRequestStart + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + spanBuildRequestEnd + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + spanRetryLoop + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/redshift/snapshot/api_op_DescribeIntegrations.go.snap b/service/redshift/snapshot/api_op_DescribeIntegrations.go.snap new file mode 100644 index 00000000000..85b088fd93e --- /dev/null +++ b/service/redshift/snapshot/api_op_DescribeIntegrations.go.snap @@ -0,0 +1,41 @@ +DescribeIntegrations + Initialize stack step + spanInitializeStart + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + spanInitializeEnd + Serialize stack step + spanBuildRequestStart + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + spanBuildRequestEnd + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + spanRetryLoop + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/redshift/snapshot/api_op_ModifyIntegration.go.snap b/service/redshift/snapshot/api_op_ModifyIntegration.go.snap new file mode 100644 index 00000000000..c18cde593c0 --- /dev/null +++ b/service/redshift/snapshot/api_op_ModifyIntegration.go.snap @@ -0,0 +1,41 @@ +ModifyIntegration + Initialize stack step + spanInitializeStart + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + spanInitializeEnd + Serialize stack step + spanBuildRequestStart + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + spanBuildRequestEnd + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + spanRetryLoop + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/redshift/snapshot_test.go b/service/redshift/snapshot_test.go index 627204ca27d..e6755696543 100644 --- a/service/redshift/snapshot_test.go +++ b/service/redshift/snapshot_test.go @@ -326,6 +326,18 @@ func TestCheckSnapshot_CreateHsmConfiguration(t *testing.T) { } } +func TestCheckSnapshot_CreateIntegration(t *testing.T) { + svc := New(Options{}) + _, err := svc.CreateIntegration(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "CreateIntegration") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_CreateRedshiftIdcApplication(t *testing.T) { svc := New(Options{}) _, err := svc.CreateRedshiftIdcApplication(context.Background(), nil, func(o *Options) { @@ -542,6 +554,18 @@ func TestCheckSnapshot_DeleteHsmConfiguration(t *testing.T) { } } +func TestCheckSnapshot_DeleteIntegration(t *testing.T) { + svc := New(Options{}) + _, err := svc.DeleteIntegration(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "DeleteIntegration") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_DeletePartner(t *testing.T) { svc := New(Options{}) _, err := svc.DeletePartner(context.Background(), nil, func(o *Options) { @@ -926,6 +950,18 @@ func TestCheckSnapshot_DescribeInboundIntegrations(t *testing.T) { } } +func TestCheckSnapshot_DescribeIntegrations(t *testing.T) { + svc := New(Options{}) + _, err := svc.DescribeIntegrations(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "DescribeIntegrations") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_DescribeLoggingStatus(t *testing.T) { svc := New(Options{}) _, err := svc.DescribeLoggingStatus(context.Background(), nil, func(o *Options) { @@ -1418,6 +1454,18 @@ func TestCheckSnapshot_ModifyEventSubscription(t *testing.T) { } } +func TestCheckSnapshot_ModifyIntegration(t *testing.T) { + svc := New(Options{}) + _, err := svc.ModifyIntegration(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "ModifyIntegration") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_ModifyRedshiftIdcApplication(t *testing.T) { svc := New(Options{}) _, err := svc.ModifyRedshiftIdcApplication(context.Background(), nil, func(o *Options) { @@ -1921,6 +1969,18 @@ func TestUpdateSnapshot_CreateHsmConfiguration(t *testing.T) { } } +func TestUpdateSnapshot_CreateIntegration(t *testing.T) { + svc := New(Options{}) + _, err := svc.CreateIntegration(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "CreateIntegration") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_CreateRedshiftIdcApplication(t *testing.T) { svc := New(Options{}) _, err := svc.CreateRedshiftIdcApplication(context.Background(), nil, func(o *Options) { @@ -2137,6 +2197,18 @@ func TestUpdateSnapshot_DeleteHsmConfiguration(t *testing.T) { } } +func TestUpdateSnapshot_DeleteIntegration(t *testing.T) { + svc := New(Options{}) + _, err := svc.DeleteIntegration(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "DeleteIntegration") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_DeletePartner(t *testing.T) { svc := New(Options{}) _, err := svc.DeletePartner(context.Background(), nil, func(o *Options) { @@ -2521,6 +2593,18 @@ func TestUpdateSnapshot_DescribeInboundIntegrations(t *testing.T) { } } +func TestUpdateSnapshot_DescribeIntegrations(t *testing.T) { + svc := New(Options{}) + _, err := svc.DescribeIntegrations(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "DescribeIntegrations") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_DescribeLoggingStatus(t *testing.T) { svc := New(Options{}) _, err := svc.DescribeLoggingStatus(context.Background(), nil, func(o *Options) { @@ -3013,6 +3097,18 @@ func TestUpdateSnapshot_ModifyEventSubscription(t *testing.T) { } } +func TestUpdateSnapshot_ModifyIntegration(t *testing.T) { + svc := New(Options{}) + _, err := svc.ModifyIntegration(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "ModifyIntegration") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_ModifyRedshiftIdcApplication(t *testing.T) { svc := New(Options{}) _, err := svc.ModifyRedshiftIdcApplication(context.Background(), nil, func(o *Options) { diff --git a/service/redshift/types/enums.go b/service/redshift/types/enums.go index c0c3b5bebec..be088d518b1 100644 --- a/service/redshift/types/enums.go +++ b/service/redshift/types/enums.go @@ -155,6 +155,30 @@ func (DataShareStatusForProducer) Values() []DataShareStatusForProducer { } } +type DescribeIntegrationsFilterName string + +// Enum values for DescribeIntegrationsFilterName +const ( + DescribeIntegrationsFilterNameIntegrationArn DescribeIntegrationsFilterName = "integration-arn" + DescribeIntegrationsFilterNameSourceArn DescribeIntegrationsFilterName = "source-arn" + DescribeIntegrationsFilterNameSourceTypes DescribeIntegrationsFilterName = "source-types" + DescribeIntegrationsFilterNameStatus DescribeIntegrationsFilterName = "status" +) + +// Values returns all known values for DescribeIntegrationsFilterName. Note that +// this can be expanded in the future, and so it is only as up to date as the +// client. +// +// The ordering of this slice is not guaranteed to be stable across updates. +func (DescribeIntegrationsFilterName) Values() []DescribeIntegrationsFilterName { + return []DescribeIntegrationsFilterName{ + "integration-arn", + "source-arn", + "source-types", + "status", + } +} + type ImpactRankingType string // Enum values for ImpactRankingType diff --git a/service/redshift/types/errors.go b/service/redshift/types/errors.go index 5afc5218568..3b02a6d12d5 100644 --- a/service/redshift/types/errors.go +++ b/service/redshift/types/errors.go @@ -1487,6 +1487,87 @@ func (e *InsufficientS3BucketPolicyFault) ErrorCode() string { } func (e *InsufficientS3BucketPolicyFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } +// The integration you are trying to create already exists. +type IntegrationAlreadyExistsFault struct { + Message *string + + ErrorCodeOverride *string + + noSmithyDocumentSerde +} + +func (e *IntegrationAlreadyExistsFault) Error() string { + return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage()) +} +func (e *IntegrationAlreadyExistsFault) ErrorMessage() string { + if e.Message == nil { + return "" + } + return *e.Message +} +func (e *IntegrationAlreadyExistsFault) ErrorCode() string { + if e == nil || e.ErrorCodeOverride == nil { + return "IntegrationAlreadyExistsFault" + } + return *e.ErrorCodeOverride +} +func (e *IntegrationAlreadyExistsFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } + +// A conflicting conditional operation is currently in progress against this +// resource. This typically occurs when there are multiple requests being made to +// the same resource at the same time, and these requests conflict with each other. +type IntegrationConflictOperationFault struct { + Message *string + + ErrorCodeOverride *string + + noSmithyDocumentSerde +} + +func (e *IntegrationConflictOperationFault) Error() string { + return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage()) +} +func (e *IntegrationConflictOperationFault) ErrorMessage() string { + if e.Message == nil { + return "" + } + return *e.Message +} +func (e *IntegrationConflictOperationFault) ErrorCode() string { + if e == nil || e.ErrorCodeOverride == nil { + return "IntegrationConflictOperationFault" + } + return *e.ErrorCodeOverride +} +func (e *IntegrationConflictOperationFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } + +// The integration is in an invalid state and can't perform the requested +// operation. +type IntegrationConflictStateFault struct { + Message *string + + ErrorCodeOverride *string + + noSmithyDocumentSerde +} + +func (e *IntegrationConflictStateFault) Error() string { + return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage()) +} +func (e *IntegrationConflictStateFault) ErrorMessage() string { + if e.Message == nil { + return "" + } + return *e.Message +} +func (e *IntegrationConflictStateFault) ErrorCode() string { + if e == nil || e.ErrorCodeOverride == nil { + return "IntegrationConflictStateFault" + } + return *e.ErrorCodeOverride +} +func (e *IntegrationConflictStateFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } + // The integration can't be found. type IntegrationNotFoundFault struct { Message *string @@ -1513,6 +1594,85 @@ func (e *IntegrationNotFoundFault) ErrorCode() string { } func (e *IntegrationNotFoundFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } +// You can't create any more zero-ETL integrations because the quota has been +// reached. +type IntegrationQuotaExceededFault struct { + Message *string + + ErrorCodeOverride *string + + noSmithyDocumentSerde +} + +func (e *IntegrationQuotaExceededFault) Error() string { + return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage()) +} +func (e *IntegrationQuotaExceededFault) ErrorMessage() string { + if e.Message == nil { + return "" + } + return *e.Message +} +func (e *IntegrationQuotaExceededFault) ErrorCode() string { + if e == nil || e.ErrorCodeOverride == nil { + return "IntegrationQuotaExceededFault" + } + return *e.ErrorCodeOverride +} +func (e *IntegrationQuotaExceededFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } + +// The specified integration source can't be found. +type IntegrationSourceNotFoundFault struct { + Message *string + + ErrorCodeOverride *string + + noSmithyDocumentSerde +} + +func (e *IntegrationSourceNotFoundFault) Error() string { + return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage()) +} +func (e *IntegrationSourceNotFoundFault) ErrorMessage() string { + if e.Message == nil { + return "" + } + return *e.Message +} +func (e *IntegrationSourceNotFoundFault) ErrorCode() string { + if e == nil || e.ErrorCodeOverride == nil { + return "IntegrationSourceNotFoundFault" + } + return *e.ErrorCodeOverride +} +func (e *IntegrationSourceNotFoundFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } + +// The specified integration target can't be found. +type IntegrationTargetNotFoundFault struct { + Message *string + + ErrorCodeOverride *string + + noSmithyDocumentSerde +} + +func (e *IntegrationTargetNotFoundFault) Error() string { + return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage()) +} +func (e *IntegrationTargetNotFoundFault) ErrorMessage() string { + if e.Message == nil { + return "" + } + return *e.Message +} +func (e *IntegrationTargetNotFoundFault) ErrorCode() string { + if e == nil || e.ErrorCodeOverride == nil { + return "IntegrationTargetNotFoundFault" + } + return *e.ErrorCodeOverride +} +func (e *IntegrationTargetNotFoundFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } + // The authentication profile request is not valid. The profile name can't be null // or empty. The authentication profile API operation must be available in the // Amazon Web Services Region. diff --git a/service/redshift/types/types.go b/service/redshift/types/types.go index 32acf0a46bc..c903402c349 100644 --- a/service/redshift/types/types.go +++ b/service/redshift/types/types.go @@ -805,6 +805,22 @@ type DeleteClusterSnapshotMessage struct { noSmithyDocumentSerde } +// A set of elements to filter the returned integrations. +type DescribeIntegrationsFilter struct { + + // Specifies the type of integration filter. + // + // This member is required. + Name DescribeIntegrationsFilterName + + // Specifies the values to filter on. + // + // This member is required. + Values []string + + noSmithyDocumentSerde +} + // Describes an Amazon EC2 security group. type EC2SecurityGroup struct { @@ -1134,6 +1150,50 @@ type InboundIntegration struct { noSmithyDocumentSerde } +type Integration struct { + + // The encryption context for the integration. For more information, see [Encryption context] in the + // Amazon Web Services Key Management Service Developer Guide. + // + // [Encryption context]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context + AdditionalEncryptionContext map[string]string + + // The time (UTC) when the integration was created. + CreateTime *time.Time + + // The description of the integration. + Description *string + + // Any errors associated with the integration. + Errors []IntegrationError + + // The Amazon Resource Name (ARN) of the integration. + IntegrationArn *string + + // The name of the integration. + IntegrationName *string + + // The Key Management Service (KMS) key identifier for the key used to encrypt the + // integration. + KMSKeyId *string + + // The Amazon Resource Name (ARN) of the database used as the source for + // replication. + SourceArn *string + + // The current status of the integration. + Status ZeroETLIntegrationStatus + + // The list of tags associated with the integration. + Tags []Tag + + // The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as + // the target for replication. + TargetArn *string + + noSmithyDocumentSerde +} + // The error of an inbound integration. type IntegrationError struct { diff --git a/service/redshift/validators.go b/service/redshift/validators.go index 72bdb0ca869..045b0b5d08f 100644 --- a/service/redshift/validators.go +++ b/service/redshift/validators.go @@ -450,6 +450,26 @@ func (m *validateOpCreateHsmConfiguration) HandleInitialize(ctx context.Context, return next.HandleInitialize(ctx, in) } +type validateOpCreateIntegration struct { +} + +func (*validateOpCreateIntegration) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpCreateIntegration) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*CreateIntegrationInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpCreateIntegrationInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpCreateRedshiftIdcApplication struct { } @@ -790,6 +810,26 @@ func (m *validateOpDeleteHsmConfiguration) HandleInitialize(ctx context.Context, return next.HandleInitialize(ctx, in) } +type validateOpDeleteIntegration struct { +} + +func (*validateOpDeleteIntegration) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpDeleteIntegration) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*DeleteIntegrationInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpDeleteIntegrationInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpDeletePartner struct { } @@ -1010,6 +1050,26 @@ func (m *validateOpDescribeDefaultClusterParameters) HandleInitialize(ctx contex return next.HandleInitialize(ctx, in) } +type validateOpDescribeIntegrations struct { +} + +func (*validateOpDescribeIntegrations) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpDescribeIntegrations) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*DescribeIntegrationsInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpDescribeIntegrationsInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpDescribeLoggingStatus struct { } @@ -1570,6 +1630,26 @@ func (m *validateOpModifyEventSubscription) HandleInitialize(ctx context.Context return next.HandleInitialize(ctx, in) } +type validateOpModifyIntegration struct { +} + +func (*validateOpModifyIntegration) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpModifyIntegration) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*ModifyIntegrationInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpModifyIntegrationInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpModifyRedshiftIdcApplication struct { } @@ -2038,6 +2118,10 @@ func addOpCreateHsmConfigurationValidationMiddleware(stack *middleware.Stack) er return stack.Initialize.Add(&validateOpCreateHsmConfiguration{}, middleware.After) } +func addOpCreateIntegrationValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpCreateIntegration{}, middleware.After) +} + func addOpCreateRedshiftIdcApplicationValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpCreateRedshiftIdcApplication{}, middleware.After) } @@ -2106,6 +2190,10 @@ func addOpDeleteHsmConfigurationValidationMiddleware(stack *middleware.Stack) er return stack.Initialize.Add(&validateOpDeleteHsmConfiguration{}, middleware.After) } +func addOpDeleteIntegrationValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpDeleteIntegration{}, middleware.After) +} + func addOpDeletePartnerValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDeletePartner{}, middleware.After) } @@ -2150,6 +2238,10 @@ func addOpDescribeDefaultClusterParametersValidationMiddleware(stack *middleware return stack.Initialize.Add(&validateOpDescribeDefaultClusterParameters{}, middleware.After) } +func addOpDescribeIntegrationsValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpDescribeIntegrations{}, middleware.After) +} + func addOpDescribeLoggingStatusValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDescribeLoggingStatus{}, middleware.After) } @@ -2262,6 +2354,10 @@ func addOpModifyEventSubscriptionValidationMiddleware(stack *middleware.Stack) e return stack.Initialize.Add(&validateOpModifyEventSubscription{}, middleware.After) } +func addOpModifyIntegrationValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpModifyIntegration{}, middleware.After) +} + func addOpModifyRedshiftIdcApplicationValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpModifyRedshiftIdcApplication{}, middleware.After) } @@ -2370,6 +2466,41 @@ func validateDeleteClusterSnapshotMessageList(v []types.DeleteClusterSnapshotMes } } +func validateDescribeIntegrationsFilter(v *types.DescribeIntegrationsFilter) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DescribeIntegrationsFilter"} + if len(v.Name) == 0 { + invalidParams.Add(smithy.NewErrParamRequired("Name")) + } + if v.Values == nil { + invalidParams.Add(smithy.NewErrParamRequired("Values")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateDescribeIntegrationsFilterList(v []types.DescribeIntegrationsFilter) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DescribeIntegrationsFilterList"} + for i := range v { + if err := validateDescribeIntegrationsFilter(&v[i]); err != nil { + invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateLakeFormationQuery(v *types.LakeFormationQuery) error { if v == nil { return nil @@ -3002,6 +3133,27 @@ func validateOpCreateHsmConfigurationInput(v *CreateHsmConfigurationInput) error } } +func validateOpCreateIntegrationInput(v *CreateIntegrationInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "CreateIntegrationInput"} + if v.SourceArn == nil { + invalidParams.Add(smithy.NewErrParamRequired("SourceArn")) + } + if v.TargetArn == nil { + invalidParams.Add(smithy.NewErrParamRequired("TargetArn")) + } + if v.IntegrationName == nil { + invalidParams.Add(smithy.NewErrParamRequired("IntegrationName")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpCreateRedshiftIdcApplicationInput(v *CreateRedshiftIdcApplicationInput) error { if v == nil { return nil @@ -3302,6 +3454,21 @@ func validateOpDeleteHsmConfigurationInput(v *DeleteHsmConfigurationInput) error } } +func validateOpDeleteIntegrationInput(v *DeleteIntegrationInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DeleteIntegrationInput"} + if v.IntegrationArn == nil { + invalidParams.Add(smithy.NewErrParamRequired("IntegrationArn")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpDeletePartnerInput(v *DeletePartnerInput) error { if v == nil { return nil @@ -3481,6 +3648,23 @@ func validateOpDescribeDefaultClusterParametersInput(v *DescribeDefaultClusterPa } } +func validateOpDescribeIntegrationsInput(v *DescribeIntegrationsInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DescribeIntegrationsInput"} + if v.Filters != nil { + if err := validateDescribeIntegrationsFilterList(v.Filters); err != nil { + invalidParams.AddNested("Filters", err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpDescribeLoggingStatusInput(v *DescribeLoggingStatusInput) error { if v == nil { return nil @@ -3927,6 +4111,21 @@ func validateOpModifyEventSubscriptionInput(v *ModifyEventSubscriptionInput) err } } +func validateOpModifyIntegrationInput(v *ModifyIntegrationInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "ModifyIntegrationInput"} + if v.IntegrationArn == nil { + invalidParams.Add(smithy.NewErrParamRequired("IntegrationArn")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpModifyRedshiftIdcApplicationInput(v *ModifyRedshiftIdcApplicationInput) error { if v == nil { return nil diff --git a/service/resiliencehub/api_op_CreateApp.go b/service/resiliencehub/api_op_CreateApp.go index 3f4036d24e1..e277b89c3c8 100644 --- a/service/resiliencehub/api_op_CreateApp.go +++ b/service/resiliencehub/api_op_CreateApp.go @@ -53,6 +53,13 @@ type CreateAppInput struct { // Assessment execution schedule with 'Daily' or 'Disabled' values. AssessmentSchedule types.AppAssessmentScheduleType + // Amazon Resource Name (ARN) of Resource Groups group that is integrated with an + // AppRegistry application. For more information about ARNs, see [Amazon Resource Names (ARNs)]in the Amazon Web + // Services General Reference guide. + // + // [Amazon Resource Names (ARNs)]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html + AwsApplicationArn *string + // Used for an idempotency token. A client token is a unique, case-sensitive // string of up to 64 ASCII characters. You should not reuse the same client token // for other API requests. diff --git a/service/resiliencehub/api_op_DescribeDraftAppVersionResourcesImportStatus.go b/service/resiliencehub/api_op_DescribeDraftAppVersionResourcesImportStatus.go index 60cd1bcdffc..636bdf2ecbc 100644 --- a/service/resiliencehub/api_op_DescribeDraftAppVersionResourcesImportStatus.go +++ b/service/resiliencehub/api_op_DescribeDraftAppVersionResourcesImportStatus.go @@ -75,7 +75,10 @@ type DescribeDraftAppVersionResourcesImportStatusOutput struct { // This member is required. StatusChangeTime *time.Time - // The returned error message for the request. + // List of errors that were encountered while importing resources. + ErrorDetails []types.ErrorDetail + + // The error message returned for the resource request. ErrorMessage *string // Metadata pertaining to the operation's result. diff --git a/service/resiliencehub/api_op_ListAppAssessmentComplianceDrifts.go b/service/resiliencehub/api_op_ListAppAssessmentComplianceDrifts.go index d0f84f2a9df..d37cf018914 100644 --- a/service/resiliencehub/api_op_ListAppAssessmentComplianceDrifts.go +++ b/service/resiliencehub/api_op_ListAppAssessmentComplianceDrifts.go @@ -11,7 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// List of compliance drifts that were detected while running an assessment. +// Indicates the list of compliance drifts that were detected while running an +// assessment. func (c *Client) ListAppAssessmentComplianceDrifts(ctx context.Context, params *ListAppAssessmentComplianceDriftsInput, optFns ...func(*Options)) (*ListAppAssessmentComplianceDriftsOutput, error) { if params == nil { params = &ListAppAssessmentComplianceDriftsInput{} diff --git a/service/resiliencehub/api_op_ListApps.go b/service/resiliencehub/api_op_ListApps.go index d9f0239e6b8..715a1f40fd5 100644 --- a/service/resiliencehub/api_op_ListApps.go +++ b/service/resiliencehub/api_op_ListApps.go @@ -45,6 +45,13 @@ type ListAppsInput struct { // [Amazon Resource Names (ARNs)]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html AppArn *string + // Amazon Resource Name (ARN) of Resource Groups group that is integrated with an + // AppRegistry application. For more information about ARNs, see [Amazon Resource Names (ARNs)]in the Amazon Web + // Services General Reference guide. + // + // [Amazon Resource Names (ARNs)]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html + AwsApplicationArn *string + // Indicates the lower limit of the range that is used to filter applications // based on their last assessment times. FromLastAssessmentTime *time.Time diff --git a/service/resiliencehub/deserializers.go b/service/resiliencehub/deserializers.go index 8cec0366db3..92e9b7973df 100644 --- a/service/resiliencehub/deserializers.go +++ b/service/resiliencehub/deserializers.go @@ -4132,6 +4132,11 @@ func awsRestjson1_deserializeOpDocumentDescribeDraftAppVersionResourcesImportSta sv.AppVersion = ptr.String(jtv) } + case "errorDetails": + if err := awsRestjson1_deserializeDocumentErrorDetailList(&sv.ErrorDetails, value); err != nil { + return err + } + case "errorMessage": if value != nil { jtv, ok := value.(string) @@ -11197,6 +11202,15 @@ func awsRestjson1_deserializeDocumentApp(v **types.App, value interface{}) error sv.AssessmentSchedule = types.AppAssessmentScheduleType(jtv) } + case "awsApplicationArn": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Arn to be of type string, got %T instead", value) + } + sv.AwsApplicationArn = ptr.String(jtv) + } + case "complianceStatus": if value != nil { jtv, ok := value.(string) @@ -12174,6 +12188,15 @@ func awsRestjson1_deserializeDocumentAppSummary(v **types.AppSummary, value inte sv.AssessmentSchedule = types.AppAssessmentScheduleType(jtv) } + case "awsApplicationArn": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Arn to be of type string, got %T instead", value) + } + sv.AwsApplicationArn = ptr.String(jtv) + } + case "complianceStatus": if value != nil { jtv, ok := value.(string) @@ -13805,6 +13828,80 @@ func awsRestjson1_deserializeDocumentEksSourceList(v *[]types.EksSource, value i return nil } +func awsRestjson1_deserializeDocumentErrorDetail(v **types.ErrorDetail, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.(map[string]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var sv *types.ErrorDetail + if *v == nil { + sv = &types.ErrorDetail{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "errorMessage": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value) + } + sv.ErrorMessage = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentErrorDetailList(v *[]types.ErrorDetail, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.ErrorDetail + if *v == nil { + cv = []types.ErrorDetail{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.ErrorDetail + destAddr := &col + if err := awsRestjson1_deserializeDocumentErrorDetail(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocumentEventSubscription(v **types.EventSubscription, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/resiliencehub/serializers.go b/service/resiliencehub/serializers.go index e82d91b5126..11efac8f655 100644 --- a/service/resiliencehub/serializers.go +++ b/service/resiliencehub/serializers.go @@ -358,6 +358,11 @@ func awsRestjson1_serializeOpDocumentCreateAppInput(v *CreateAppInput, value smi ok.String(string(v.AssessmentSchedule)) } + if v.AwsApplicationArn != nil { + ok := object.Key("awsApplicationArn") + ok.String(*v.AwsApplicationArn) + } + if v.ClientToken != nil { ok := object.Key("clientToken") ok.String(*v.ClientToken) @@ -3231,6 +3236,10 @@ func awsRestjson1_serializeOpHttpBindingsListAppsInput(v *ListAppsInput, encoder encoder.SetQuery("appArn").String(*v.AppArn) } + if v.AwsApplicationArn != nil { + encoder.SetQuery("awsApplicationArn").String(*v.AwsApplicationArn) + } + if v.FromLastAssessmentTime != nil { encoder.SetQuery("fromLastAssessmentTime").String(smithytime.FormatDateTime(*v.FromLastAssessmentTime)) } diff --git a/service/resiliencehub/types/types.go b/service/resiliencehub/types/types.go index 6cce0643c34..c67a3151c17 100644 --- a/service/resiliencehub/types/types.go +++ b/service/resiliencehub/types/types.go @@ -94,6 +94,13 @@ type App struct { // Assessment execution schedule with 'Daily' or 'Disabled' values. AssessmentSchedule AppAssessmentScheduleType + // Amazon Resource Name (ARN) of Resource Groups group that is integrated with an + // AppRegistry application. For more information about ARNs, see [Amazon Resource Names (ARNs)]in the Amazon Web + // Services General Reference guide. + // + // [Amazon Resource Names (ARNs)]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html + AwsApplicationArn *string + // Current status of compliance for the resiliency policy. ComplianceStatus AppComplianceStatusType @@ -217,8 +224,10 @@ type AppAssessment struct { // Starting time for the action. StartTime *time.Time - // Indicates a concise summary that provides an overview of the Resilience Hub - // assessment. + // Indicates the AI-generated summary for the Resilience Hub assessment, providing + // a concise overview that highlights the top risks and recommendations. + // + // This property is available only in the US East (N. Virginia) Region. Summary *AssessmentSummary // Tags assigned to the resource. A tag is a label that you assign to an Amazon @@ -406,6 +415,13 @@ type AppSummary struct { // Assessment execution schedule with 'Daily' or 'Disabled' values. AssessmentSchedule AppAssessmentScheduleType + // Amazon Resource Name (ARN) of Resource Groups group that is integrated with an + // AppRegistry application. For more information about ARNs, see [Amazon Resource Names (ARNs)]in the Amazon Web + // Services General Reference guide. + // + // [Amazon Resource Names (ARNs)]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html + AwsApplicationArn *string + // The current status of compliance for the resiliency policy. ComplianceStatus AppComplianceStatusType @@ -543,11 +559,6 @@ type BatchUpdateRecommendationStatusSuccessfulEntry struct { // This member is required. Excluded *bool - // The operational recommendation item. - // - // This member is required. - Item *UpdateRecommendationStatusItem - // Reference identifier of the operational recommendation. // // This member is required. @@ -556,6 +567,9 @@ type BatchUpdateRecommendationStatusSuccessfulEntry struct { // Indicates the reason for excluding an operational recommendation. ExcludeReason ExcludeRecommendationReason + // The operational recommendation item. + Item *UpdateRecommendationStatusItem + noSmithyDocumentSerde } @@ -776,6 +790,15 @@ type EksSourceClusterNamespace struct { noSmithyDocumentSerde } +// Indicates the error that was encountered while importing a resource. +type ErrorDetail struct { + + // Provides additional information about the error. + ErrorMessage *string + + noSmithyDocumentSerde +} + // Indicates an event you would like to subscribe and get notification for. // Currently, Resilience Hub supports notifications only for Drift detected and // Scheduled assessment failure events. @@ -1651,11 +1674,6 @@ type UpdateRecommendationStatusRequestEntry struct { // This member is required. Excluded *bool - // The operational recommendation item. - // - // This member is required. - Item *UpdateRecommendationStatusItem - // Reference identifier of the operational recommendation item. // // This member is required. @@ -1664,6 +1682,9 @@ type UpdateRecommendationStatusRequestEntry struct { // Indicates the reason for excluding an operational recommendation. ExcludeReason ExcludeRecommendationReason + // The operational recommendation item. + Item *UpdateRecommendationStatusItem + noSmithyDocumentSerde } diff --git a/service/resiliencehub/validators.go b/service/resiliencehub/validators.go index 7aa88e0cd67..9018c4f800e 100644 --- a/service/resiliencehub/validators.go +++ b/service/resiliencehub/validators.go @@ -1635,9 +1635,6 @@ func validateUpdateRecommendationStatusRequestEntry(v *types.UpdateRecommendatio if v.ReferenceId == nil { invalidParams.Add(smithy.NewErrParamRequired("ReferenceId")) } - if v.Item == nil { - invalidParams.Add(smithy.NewErrParamRequired("Item")) - } if v.Excluded == nil { invalidParams.Add(smithy.NewErrParamRequired("Excluded")) } diff --git a/service/sesv2/api_op_PutConfigurationSetDeliveryOptions.go b/service/sesv2/api_op_PutConfigurationSetDeliveryOptions.go index 5e7e065bf19..cb6dcef2fb9 100644 --- a/service/sesv2/api_op_PutConfigurationSetDeliveryOptions.go +++ b/service/sesv2/api_op_PutConfigurationSetDeliveryOptions.go @@ -37,6 +37,11 @@ type PutConfigurationSetDeliveryOptionsInput struct { // This member is required. ConfigurationSetName *string + // The maximum amount of time, in seconds, that Amazon SES API v2 will attempt + // delivery of email. If specified, the value must greater than or equal to 300 + // seconds (5 minutes) and less than or equal to 50400 seconds (840 minutes). + MaxDeliverySeconds *int64 + // The name of the dedicated IP pool to associate with the configuration set. SendingPoolName *string diff --git a/service/sesv2/deserializers.go b/service/sesv2/deserializers.go index f9cf451de31..9bf681b2d15 100644 --- a/service/sesv2/deserializers.go +++ b/service/sesv2/deserializers.go @@ -14498,6 +14498,19 @@ func awsRestjson1_deserializeDocumentDeliveryOptions(v **types.DeliveryOptions, for key, value := range shape { switch key { + case "MaxDeliverySeconds": + if value != nil { + jtv, ok := value.(json.Number) + if !ok { + return fmt.Errorf("expected MaxDeliverySeconds to be json.Number, got %T instead", value) + } + i64, err := jtv.Int64() + if err != nil { + return err + } + sv.MaxDeliverySeconds = ptr.Int64(i64) + } + case "SendingPoolName": if value != nil { jtv, ok := value.(string) diff --git a/service/sesv2/serializers.go b/service/sesv2/serializers.go index 7a74c4b26e2..7715e000acc 100644 --- a/service/sesv2/serializers.go +++ b/service/sesv2/serializers.go @@ -5236,6 +5236,11 @@ func awsRestjson1_serializeOpDocumentPutConfigurationSetDeliveryOptionsInput(v * object := value.Object() defer object.Close() + if v.MaxDeliverySeconds != nil { + ok := object.Key("MaxDeliverySeconds") + ok.Long(*v.MaxDeliverySeconds) + } + if v.SendingPoolName != nil { ok := object.Key("SendingPoolName") ok.String(*v.SendingPoolName) @@ -8167,6 +8172,11 @@ func awsRestjson1_serializeDocumentDeliveryOptions(v *types.DeliveryOptions, val object := value.Object() defer object.Close() + if v.MaxDeliverySeconds != nil { + ok := object.Key("MaxDeliverySeconds") + ok.Long(*v.MaxDeliverySeconds) + } + if v.SendingPoolName != nil { ok := object.Key("SendingPoolName") ok.String(*v.SendingPoolName) diff --git a/service/sesv2/types/types.go b/service/sesv2/types/types.go index 0f4ac6ecae0..897d570754f 100644 --- a/service/sesv2/types/types.go +++ b/service/sesv2/types/types.go @@ -598,6 +598,11 @@ type DeliverabilityTestReport struct { // Used to associate a configuration set with a dedicated IP pool. type DeliveryOptions struct { + // The maximum amount of time, in seconds, that Amazon SES API v2 will attempt + // delivery of email. If specified, the value must greater than or equal to 300 + // seconds (5 minutes) and less than or equal to 50400 seconds (840 minutes). + MaxDeliverySeconds *int64 + // The name of the dedicated IP pool to associate with the configuration set. SendingPoolName *string diff --git a/service/ssmquicksetup/internal/endpoints/endpoints.go b/service/ssmquicksetup/internal/endpoints/endpoints.go index 3794e96b699..4a0331696c3 100644 --- a/service/ssmquicksetup/internal/endpoints/endpoints.go +++ b/service/ssmquicksetup/internal/endpoints/endpoints.go @@ -138,6 +138,131 @@ var defaultPartitions = endpoints.Partitions{ }, RegionRegex: partitionRegexp.Aws, IsRegionalized: true, + Endpoints: endpoints.Endpoints{ + endpoints.EndpointKey{ + Region: "ap-northeast-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "ap-northeast-2", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "ap-south-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "ap-southeast-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "ap-southeast-2", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "ca-central-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "ca-central-1", + Variant: endpoints.FIPSVariant, + }: { + Hostname: "ssm-quicksetup-fips.ca-central-1.amazonaws.com", + }, + endpoints.EndpointKey{ + Region: "eu-central-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "eu-north-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "eu-west-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "eu-west-2", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "eu-west-3", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "fips-ca-central-1", + }: endpoints.Endpoint{ + Hostname: "ssm-quicksetup-fips.ca-central-1.amazonaws.com", + CredentialScope: endpoints.CredentialScope{ + Region: "ca-central-1", + }, + Deprecated: aws.TrueTernary, + }, + endpoints.EndpointKey{ + Region: "fips-us-east-1", + }: endpoints.Endpoint{ + Hostname: "ssm-quicksetup-fips.us-east-1.amazonaws.com", + CredentialScope: endpoints.CredentialScope{ + Region: "us-east-1", + }, + Deprecated: aws.TrueTernary, + }, + endpoints.EndpointKey{ + Region: "fips-us-east-2", + }: endpoints.Endpoint{ + Hostname: "ssm-quicksetup-fips.us-east-2.amazonaws.com", + CredentialScope: endpoints.CredentialScope{ + Region: "us-east-2", + }, + Deprecated: aws.TrueTernary, + }, + endpoints.EndpointKey{ + Region: "fips-us-west-1", + }: endpoints.Endpoint{ + Hostname: "ssm-quicksetup-fips.us-west-1.amazonaws.com", + CredentialScope: endpoints.CredentialScope{ + Region: "us-west-1", + }, + Deprecated: aws.TrueTernary, + }, + endpoints.EndpointKey{ + Region: "fips-us-west-2", + }: endpoints.Endpoint{ + Hostname: "ssm-quicksetup-fips.us-west-2.amazonaws.com", + CredentialScope: endpoints.CredentialScope{ + Region: "us-west-2", + }, + Deprecated: aws.TrueTernary, + }, + endpoints.EndpointKey{ + Region: "sa-east-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "us-east-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "us-east-1", + Variant: endpoints.FIPSVariant, + }: { + Hostname: "ssm-quicksetup-fips.us-east-1.amazonaws.com", + }, + endpoints.EndpointKey{ + Region: "us-east-2", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "us-east-2", + Variant: endpoints.FIPSVariant, + }: { + Hostname: "ssm-quicksetup-fips.us-east-2.amazonaws.com", + }, + endpoints.EndpointKey{ + Region: "us-west-1", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "us-west-1", + Variant: endpoints.FIPSVariant, + }: { + Hostname: "ssm-quicksetup-fips.us-west-1.amazonaws.com", + }, + endpoints.EndpointKey{ + Region: "us-west-2", + }: endpoints.Endpoint{}, + endpoints.EndpointKey{ + Region: "us-west-2", + Variant: endpoints.FIPSVariant, + }: { + Hostname: "ssm-quicksetup-fips.us-west-2.amazonaws.com", + }, + }, }, { ID: "aws-cn", diff --git a/service/transcribestreaming/api_op_StartCallAnalyticsStreamTranscription.go b/service/transcribestreaming/api_op_StartCallAnalyticsStreamTranscription.go index 7558784188c..830c8337fcf 100644 --- a/service/transcribestreaming/api_op_StartCallAnalyticsStreamTranscription.go +++ b/service/transcribestreaming/api_op_StartCallAnalyticsStreamTranscription.go @@ -50,10 +50,7 @@ type StartCallAnalyticsStreamTranscriptionInput struct { // Specify the language code that represents the language spoken in your audio. // - // If you're unsure of the language spoken in your audio, consider using - // IdentifyLanguage to enable automatic language identification. - // - // For a list of languages supported with streaming Call Analytics, refer to the [Supported languages] + // For a list of languages supported with real-time Call Analytics, refer to the [Supported languages] // table. // // [Supported languages]: https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html @@ -89,7 +86,8 @@ type StartCallAnalyticsStreamTranscriptionInput struct { // transcript. // // Content identification is performed at the segment level; PII specified in - // PiiEntityTypes is flagged upon complete transcription of an audio segment. + // PiiEntityTypes is flagged upon complete transcription of an audio segment. If + // you don't include PiiEntityTypes in your request, all PII is identified. // // You can’t set ContentIdentificationType and ContentRedactionType in the same // request. If you set both, your request returns a BadRequestException . @@ -103,7 +101,8 @@ type StartCallAnalyticsStreamTranscriptionInput struct { // transcript. // // Content redaction is performed at the segment level; PII specified in - // PiiEntityTypes is redacted upon complete transcription of an audio segment. + // PiiEntityTypes is redacted upon complete transcription of an audio segment. If + // you don't include PiiEntityTypes in your request, all PII is redacted. // // You can’t set ContentRedactionType and ContentIdentificationType in the same // request. If you set both, your request returns a BadRequestException . @@ -149,19 +148,20 @@ type StartCallAnalyticsStreamTranscriptionInput struct { // redact in your transcript. You can include as many types as you'd like, or you // can select ALL . // - // To include PiiEntityTypes in your Call Analytics request, you must also include - // either ContentIdentificationType or ContentRedactionType . + // Values must be comma-separated and can include: ADDRESS , BANK_ACCOUNT_NUMBER , + // BANK_ROUTING , CREDIT_DEBIT_CVV , CREDIT_DEBIT_EXPIRY , CREDIT_DEBIT_NUMBER , + // EMAIL , NAME , PHONE , PIN , SSN , or ALL . + // + // Note that if you include PiiEntityTypes in your request, you must also include + // ContentIdentificationType or ContentRedactionType . // - // Values must be comma-separated and can include: BANK_ACCOUNT_NUMBER , - // BANK_ROUTING , CREDIT_DEBIT_NUMBER , CREDIT_DEBIT_CVV , CREDIT_DEBIT_EXPIRY , - // PIN , EMAIL , ADDRESS , NAME , PHONE , SSN , or ALL . + // If you include ContentRedactionType or ContentIdentificationType in your + // request, but do not include PiiEntityTypes , all PII is redacted or identified. PiiEntityTypes *string // Specify a name for your Call Analytics transcription session. If you don't // include this parameter in your request, Amazon Transcribe generates an ID and // returns it in the response. - // - // You can use a session ID to retry a streaming session. SessionId *string // Specify how you want your vocabulary filter applied to your transcript. @@ -234,7 +234,7 @@ type StartCallAnalyticsStreamTranscriptionOutput struct { // Lists the PII entity types you specified in your Call Analytics request. PiiEntityTypes *string - // Provides the identifier for your Call Analytics streaming request. + // Provides the identifier for your real-time Call Analytics request. RequestId *string // Provides the identifier for your Call Analytics transcription session. diff --git a/service/transcribestreaming/api_op_StartMedicalStreamTranscription.go b/service/transcribestreaming/api_op_StartMedicalStreamTranscription.go index ea0d30851a3..4b1cf43bb81 100644 --- a/service/transcribestreaming/api_op_StartMedicalStreamTranscription.go +++ b/service/transcribestreaming/api_op_StartMedicalStreamTranscription.go @@ -108,20 +108,25 @@ type StartMedicalStreamTranscriptionInput struct { // audio is transcribed in a continuous manner and your transcript is not separated // by channel. // + // If you include EnableChannelIdentification in your request, you must also + // include NumberOfChannels . + // // For more information, see [Transcribing multi-channel audio]. // // [Transcribing multi-channel audio]: https://docs.aws.amazon.com/transcribe/latest/dg/channel-id.html EnableChannelIdentification bool - // Specify the number of channels in your audio stream. Up to two channels are - // supported. + // Specify the number of channels in your audio stream. This value must be 2 , as + // only two channels are supported. If your audio doesn't contain multiple + // channels, do not include this parameter in your request. + // + // If you include NumberOfChannels in your request, you must also include + // EnableChannelIdentification . NumberOfChannels *int32 // Specify a name for your transcription session. If you don't include this // parameter in your request, Amazon Transcribe Medical generates an ID and returns // it in the response. - // - // You can use a session ID to retry a streaming session. SessionId *string // Enables speaker partitioning (diarization) in your transcription output. diff --git a/service/transcribestreaming/api_op_StartStreamTranscription.go b/service/transcribestreaming/api_op_StartStreamTranscription.go index d669888ea29..8841b2cb172 100644 --- a/service/transcribestreaming/api_op_StartStreamTranscription.go +++ b/service/transcribestreaming/api_op_StartStreamTranscription.go @@ -75,7 +75,8 @@ type StartStreamTranscriptionInput struct { // transcript. // // Content identification is performed at the segment level; PII specified in - // PiiEntityTypes is flagged upon complete transcription of an audio segment. + // PiiEntityTypes is flagged upon complete transcription of an audio segment. If + // you don't include PiiEntityTypes in your request, all PII is identified. // // You can’t set ContentIdentificationType and ContentRedactionType in the same // request. If you set both, your request returns a BadRequestException . @@ -89,7 +90,8 @@ type StartStreamTranscriptionInput struct { // transcript. // // Content redaction is performed at the segment level; PII specified in - // PiiEntityTypes is redacted upon complete transcription of an audio segment. + // PiiEntityTypes is redacted upon complete transcription of an audio segment. If + // you don't include PiiEntityTypes in your request, all PII is redacted. // // You can’t set ContentRedactionType and ContentIdentificationType in the same // request. If you set both, your request returns a BadRequestException . @@ -108,6 +110,9 @@ type StartStreamTranscriptionInput struct { // audio is transcribed in a continuous manner and your transcript is not separated // by channel. // + // If you include EnableChannelIdentification in your request, you must also + // include NumberOfChannels . + // // For more information, see [Transcribing multi-channel audio]. // // [Transcribing multi-channel audio]: https://docs.aws.amazon.com/transcribe/latest/dg/channel-id.html @@ -122,9 +127,8 @@ type StartStreamTranscriptionInput struct { // Enables automatic language identification for your transcription. // - // If you include IdentifyLanguage , you can optionally include a list of language - // codes, using LanguageOptions , that you think may be present in your audio - // stream. Including language options can improve transcription accuracy. + // If you include IdentifyLanguage , you must include a list of language codes, + // using LanguageOptions , that you think may be present in your audio stream. // // You can also include a preferred language using PreferredLanguage . Adding a // preferred language can help Amazon Transcribe identify the language faster than @@ -146,10 +150,8 @@ type StartStreamTranscriptionInput struct { // request. Use this parameter if your stream contains more than one language. If // your stream contains only one language, use IdentifyLanguage instead. // - // If you include IdentifyMultipleLanguages , you can optionally include a list of - // language codes, using LanguageOptions , that you think may be present in your - // stream. Including LanguageOptions restricts IdentifyMultipleLanguages to only - // the language options that you specify, which can improve transcription accuracy. + // If you include IdentifyMultipleLanguages , you must include a list of language + // codes, using LanguageOptions , that you think may be present in your stream. // // If you want to apply a custom vocabulary or a custom vocabulary filter to your // automatic multiple language identification request, include VocabularyNames or @@ -186,13 +188,12 @@ type StartStreamTranscriptionInput struct { LanguageModelName *string // Specify two or more language codes that represent the languages you think may - // be present in your media; including more than five is not recommended. If you're - // unsure what languages are present, do not include this parameter. + // be present in your media; including more than five is not recommended. // // Including language options can improve the accuracy of language identification. // // If you include LanguageOptions in your request, you must also include - // IdentifyLanguage . + // IdentifyLanguage or IdentifyMultipleLanguages . // // For a list of languages supported with Amazon Transcribe streaming, refer to // the [Supported languages]table. @@ -203,8 +204,12 @@ type StartStreamTranscriptionInput struct { // [Supported languages]: https://docs.aws.amazon.com/transcribe/latest/dg/supported-languages.html LanguageOptions *string - // Specify the number of channels in your audio stream. Up to two channels are - // supported. + // Specify the number of channels in your audio stream. This value must be 2 , as + // only two channels are supported. If your audio doesn't contain multiple + // channels, do not include this parameter in your request. + // + // If you include NumberOfChannels in your request, you must also include + // EnableChannelIdentification . NumberOfChannels *int32 // Specify the level of stability to use when you enable partial results @@ -222,12 +227,15 @@ type StartStreamTranscriptionInput struct { // redact in your transcript. You can include as many types as you'd like, or you // can select ALL . // - // To include PiiEntityTypes in your request, you must also include either + // Values must be comma-separated and can include: ADDRESS , BANK_ACCOUNT_NUMBER , + // BANK_ROUTING , CREDIT_DEBIT_CVV , CREDIT_DEBIT_EXPIRY , CREDIT_DEBIT_NUMBER , + // EMAIL , NAME , PHONE , PIN , SSN , or ALL . + // + // Note that if you include PiiEntityTypes in your request, you must also include // ContentIdentificationType or ContentRedactionType . // - // Values must be comma-separated and can include: BANK_ACCOUNT_NUMBER , - // BANK_ROUTING , CREDIT_DEBIT_NUMBER , CREDIT_DEBIT_CVV , CREDIT_DEBIT_EXPIRY , - // PIN , EMAIL , ADDRESS , NAME , PHONE , SSN , or ALL . + // If you include ContentRedactionType or ContentIdentificationType in your + // request, but do not include PiiEntityTypes , all PII is redacted or identified. PiiEntityTypes *string // Specify a preferred language from the subset of languages codes you specified @@ -240,8 +248,6 @@ type StartStreamTranscriptionInput struct { // Specify a name for your transcription session. If you don't include this // parameter in your request, Amazon Transcribe generates an ID and returns it in // the response. - // - // You can use a session ID to retry a streaming session. SessionId *string // Enables speaker partitioning (diarization) in your transcription output. diff --git a/service/transcribestreaming/types/enums.go b/service/transcribestreaming/types/enums.go index 1b1fdf7b680..cbea9fbda59 100644 --- a/service/transcribestreaming/types/enums.go +++ b/service/transcribestreaming/types/enums.go @@ -123,8 +123,48 @@ const ( LanguageCodeJaJp LanguageCode = "ja-JP" LanguageCodeKoKr LanguageCode = "ko-KR" LanguageCodeZhCn LanguageCode = "zh-CN" - LanguageCodeHiIn LanguageCode = "hi-IN" LanguageCodeThTh LanguageCode = "th-TH" + LanguageCodeEsEs LanguageCode = "es-ES" + LanguageCodeArSa LanguageCode = "ar-SA" + LanguageCodePtPt LanguageCode = "pt-PT" + LanguageCodeCaEs LanguageCode = "ca-ES" + LanguageCodeArAe LanguageCode = "ar-AE" + LanguageCodeHiIn LanguageCode = "hi-IN" + LanguageCodeZhHk LanguageCode = "zh-HK" + LanguageCodeNlNl LanguageCode = "nl-NL" + LanguageCodeNoNo LanguageCode = "no-NO" + LanguageCodeSvSe LanguageCode = "sv-SE" + LanguageCodePlPl LanguageCode = "pl-PL" + LanguageCodeFiFi LanguageCode = "fi-FI" + LanguageCodeZhTw LanguageCode = "zh-TW" + LanguageCodeEnIn LanguageCode = "en-IN" + LanguageCodeEnIe LanguageCode = "en-IE" + LanguageCodeEnNz LanguageCode = "en-NZ" + LanguageCodeEnAb LanguageCode = "en-AB" + LanguageCodeEnZa LanguageCode = "en-ZA" + LanguageCodeEnWl LanguageCode = "en-WL" + LanguageCodeDeCh LanguageCode = "de-CH" + LanguageCodeAfZa LanguageCode = "af-ZA" + LanguageCodeEuEs LanguageCode = "eu-ES" + LanguageCodeHrHr LanguageCode = "hr-HR" + LanguageCodeCsCz LanguageCode = "cs-CZ" + LanguageCodeDaDk LanguageCode = "da-DK" + LanguageCodeFaIr LanguageCode = "fa-IR" + LanguageCodeGlEs LanguageCode = "gl-ES" + LanguageCodeElGr LanguageCode = "el-GR" + LanguageCodeHeIl LanguageCode = "he-IL" + LanguageCodeIdId LanguageCode = "id-ID" + LanguageCodeLvLv LanguageCode = "lv-LV" + LanguageCodeMsMy LanguageCode = "ms-MY" + LanguageCodeRoRo LanguageCode = "ro-RO" + LanguageCodeRuRu LanguageCode = "ru-RU" + LanguageCodeSrRs LanguageCode = "sr-RS" + LanguageCodeSkSk LanguageCode = "sk-SK" + LanguageCodeSoSo LanguageCode = "so-SO" + LanguageCodeTlPh LanguageCode = "tl-PH" + LanguageCodeUkUa LanguageCode = "uk-UA" + LanguageCodeViVn LanguageCode = "vi-VN" + LanguageCodeZuZa LanguageCode = "zu-ZA" ) // Values returns all known values for LanguageCode. Note that this can be @@ -145,8 +185,48 @@ func (LanguageCode) Values() []LanguageCode { "ja-JP", "ko-KR", "zh-CN", - "hi-IN", "th-TH", + "es-ES", + "ar-SA", + "pt-PT", + "ca-ES", + "ar-AE", + "hi-IN", + "zh-HK", + "nl-NL", + "no-NO", + "sv-SE", + "pl-PL", + "fi-FI", + "zh-TW", + "en-IN", + "en-IE", + "en-NZ", + "en-AB", + "en-ZA", + "en-WL", + "de-CH", + "af-ZA", + "eu-ES", + "hr-HR", + "cs-CZ", + "da-DK", + "fa-IR", + "gl-ES", + "el-GR", + "he-IL", + "id-ID", + "lv-LV", + "ms-MY", + "ro-RO", + "ru-RU", + "sr-RS", + "sk-SK", + "so-SO", + "tl-PH", + "uk-UA", + "vi-VN", + "zu-ZA", } } diff --git a/service/transcribestreaming/types/errors.go b/service/transcribestreaming/types/errors.go index 6e4276cb965..a70c5624bd1 100644 --- a/service/transcribestreaming/types/errors.go +++ b/service/transcribestreaming/types/errors.go @@ -9,8 +9,8 @@ import ( // One or more arguments to the StartStreamTranscription , // StartMedicalStreamTranscription , or StartCallAnalyticsStreamTranscription -// operation was not valid. For example, MediaEncoding or LanguageCode used not -// valid values. Check the specified parameters and try your request again. +// operation was not valid. For example, MediaEncoding or LanguageCode used +// unsupported values. Check the specified parameters and try your request again. type BadRequestException struct { Message *string diff --git a/service/transcribestreaming/types/types.go b/service/transcribestreaming/types/types.go index b5ac98e6a62..e7c12c49a23 100644 --- a/service/transcribestreaming/types/types.go +++ b/service/transcribestreaming/types/types.go @@ -149,7 +149,7 @@ type CallAnalyticsItem struct { noSmithyDocumentSerde } -// Contains detailed information about your Call Analytics streaming session. +// Contains detailed information about your real-time Call Analytics session. // These details are provided in the UtteranceEvent and CategoryEvent objects. // // The following types satisfy this interface: @@ -244,8 +244,13 @@ type ConfigurationEvent struct { ChannelDefinitions []ChannelDefinition // Provides additional optional settings for your Call Analytics post-call - // request, including encryption and output locations for your redacted and - // unredacted transcript. + // request, including encryption and output locations for your redacted transcript. + // + // PostCallAnalyticsSettings provides you with the same insights as a Call + // Analytics post-call transcription. Refer to [Post-call analytics]for more information on this + // feature. + // + // [Post-call analytics]: https://docs.aws.amazon.com/transcribe/latest/dg/tca-post-call.html PostCallAnalyticsSettings *PostCallAnalyticsSettings noSmithyDocumentSerde @@ -527,12 +532,17 @@ type PointsOfInterest struct { noSmithyDocumentSerde } -// Allows you to specify additional settings for your streaming Call Analytics -// post-call request, including output locations for your redacted and unredacted -// transcript, which IAM role to use, and, optionally, which encryption key to use. +// Allows you to specify additional settings for your Call Analytics post-call +// request, including output locations for your redacted transcript, which IAM role +// to use, and which encryption key to use. +// +// DataAccessRoleArn and OutputLocation are required fields. +// +// PostCallAnalyticsSettings provides you with the same insights as a Call +// Analytics post-call transcription. Refer to [Post-call analytics]for more information on this +// feature. // -// ContentRedactionOutput , DataAccessRoleArn , and OutputLocation are required -// fields. +// [Post-call analytics]: https://docs.aws.amazon.com/transcribe/latest/dg/tca-post-call.html type PostCallAnalyticsSettings struct { // The Amazon Resource Name (ARN) of an IAM role that has permissions to access @@ -596,7 +606,7 @@ type PostCallAnalyticsSettings struct { // - Use the ARN for the KMS key alias. For example, // arn:aws:kms:region:account-ID:alias/ExampleAlias . // - // Note that the user making the request must have permission to use the specified + // Note that the role making the request must have permission to use the specified // KMS key. OutputEncryptionKMSKeyId *string