diff --git a/.changelog/39e6516d27ee478badfa4c42823f93b3.json b/.changelog/39e6516d27ee478badfa4c42823f93b3.json new file mode 100644 index 00000000000..bd80a569978 --- /dev/null +++ b/.changelog/39e6516d27ee478badfa4c42823f93b3.json @@ -0,0 +1,8 @@ +{ + "id": "39e6516d-27ee-478b-adfa-4c42823f93b3", + "type": "feature", + "description": "Add v2 smoke tests and smithy smokeTests trait for SDK testing.", + "modules": [ + "service/route53domains" + ] +} \ No newline at end of file diff --git a/.changelog/8f19280a6235462d8fbfb0a2a12cfab6.json b/.changelog/8f19280a6235462d8fbfb0a2a12cfab6.json new file mode 100644 index 00000000000..21132952827 --- /dev/null +++ b/.changelog/8f19280a6235462d8fbfb0a2a12cfab6.json @@ -0,0 +1,8 @@ +{ + "id": "8f19280a-6235-462d-8fbf-b0a2a12cfab6", + "type": "documentation", + "description": "Documentation updates for Amazon EC2.", + "modules": [ + "service/ec2" + ] +} \ No newline at end of file diff --git a/.changelog/a081f41989fb482cb088534ee352fef9.json b/.changelog/a081f41989fb482cb088534ee352fef9.json new file mode 100644 index 00000000000..5aa93d0b2d6 --- /dev/null +++ b/.changelog/a081f41989fb482cb088534ee352fef9.json @@ -0,0 +1,8 @@ +{ + "id": "a081f419-89fb-482c-b088-534ee352fef9", + "type": "feature", + "description": "This release adds the ability to search for historical job records within the management console using a search box and/or via the SDK/CLI with partial string matching search on input file name.", + "modules": [ + "service/mediaconvert" + ] +} \ No newline at end of file diff --git a/.changelog/a1bf6061d6934637be82f439d4a19b23.json b/.changelog/a1bf6061d6934637be82f439d4a19b23.json new file mode 100644 index 00000000000..8b489ac872e --- /dev/null +++ b/.changelog/a1bf6061d6934637be82f439d4a19b23.json @@ -0,0 +1,8 @@ +{ + "id": "a1bf6061-d693-4637-be82-f439d4a19b23", + "type": "feature", + "description": "This release introduces a new default service blueprint for custom environment creation.", + "modules": [ + "service/datazone" + ] +} \ No newline at end of file diff --git a/.changelog/e1d1267b9d6d47e1a33b2ffa33510d27.json b/.changelog/e1d1267b9d6d47e1a33b2ffa33510d27.json new file mode 100644 index 00000000000..d90cfdad410 --- /dev/null +++ b/.changelog/e1d1267b9d6d47e1a33b2ffa33510d27.json @@ -0,0 +1,8 @@ +{ + "id": "e1d1267b-9d6d-47e1-a33b-2ffa33510d27", + "type": "feature", + "description": "This release adds support for managing the status of automated sensitive data discovery for individual accounts in an organization, and determining whether individual S3 buckets are included in the scope of the analyses.", + "modules": [ + "service/macie2" + ] +} \ 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 ecc4aac656f..1bbf61e8f4e 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.13.28" +const goModuleVersion = "1.14.1" diff --git a/service/datazone/api_op_AssociateEnvironmentRole.go b/service/datazone/api_op_AssociateEnvironmentRole.go new file mode 100644 index 00000000000..f5241a685f6 --- /dev/null +++ b/service/datazone/api_op_AssociateEnvironmentRole.go @@ -0,0 +1,145 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package datazone + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Associates the environment role in Amazon DataZone. +func (c *Client) AssociateEnvironmentRole(ctx context.Context, params *AssociateEnvironmentRoleInput, optFns ...func(*Options)) (*AssociateEnvironmentRoleOutput, error) { + if params == nil { + params = &AssociateEnvironmentRoleInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "AssociateEnvironmentRole", params, optFns, c.addOperationAssociateEnvironmentRoleMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*AssociateEnvironmentRoleOutput) + out.ResultMetadata = metadata + return out, nil +} + +type AssociateEnvironmentRoleInput struct { + + // The ID of the Amazon DataZone domain in which the environment role is + // associated. + // + // This member is required. + DomainIdentifier *string + + // The ID of the Amazon DataZone environment. + // + // This member is required. + EnvironmentIdentifier *string + + // The ARN of the environment role. + // + // This member is required. + EnvironmentRoleArn *string + + noSmithyDocumentSerde +} + +type AssociateEnvironmentRoleOutput struct { + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationAssociateEnvironmentRoleMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpAssociateEnvironmentRole{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpAssociateEnvironmentRole{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "AssociateEnvironmentRole"); 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 = 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 = addOpAssociateEnvironmentRoleValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opAssociateEnvironmentRole(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 + } + return nil +} + +func newServiceMetadataMiddleware_opAssociateEnvironmentRole(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "AssociateEnvironmentRole", + } +} diff --git a/service/datazone/api_op_CreateEnvironment.go b/service/datazone/api_op_CreateEnvironment.go index bcc6476c324..6762c29bc80 100644 --- a/service/datazone/api_op_CreateEnvironment.go +++ b/service/datazone/api_op_CreateEnvironment.go @@ -56,6 +56,15 @@ type CreateEnvironmentInput struct { // The description of the Amazon DataZone environment. Description *string + // The ID of the account in which the environment is being created. + EnvironmentAccountIdentifier *string + + // The region of the account in which the environment is being created. + EnvironmentAccountRegion *string + + // The ID of the blueprint with which the environment is being created. + EnvironmentBlueprintIdentifier *string + // The glossary terms that can be used in this Amazon DataZone environment. GlossaryTerms []string @@ -78,12 +87,6 @@ type CreateEnvironmentOutput struct { // This member is required. DomainId *string - // The ID of the environment profile with which this Amazon DataZone environment - // was created. - // - // This member is required. - EnvironmentProfileId *string - // The name of this environment. // // This member is required. @@ -122,6 +125,10 @@ type CreateEnvironmentOutput struct { // The ID of the blueprint with which this Amazon DataZone environment was created. EnvironmentBlueprintId *string + // The ID of the environment profile with which this Amazon DataZone environment + // was created. + EnvironmentProfileId *string + // The glossary terms that can be used in this Amazon DataZone environment. GlossaryTerms []string diff --git a/service/datazone/api_op_CreateEnvironmentAction.go b/service/datazone/api_op_CreateEnvironmentAction.go new file mode 100644 index 00000000000..b1756c32d2c --- /dev/null +++ b/service/datazone/api_op_CreateEnvironmentAction.go @@ -0,0 +1,184 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package datazone + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/datazone/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Creates an action for the environment, for example, creates a console link for +// an analytics tool that is available in this environment. +func (c *Client) CreateEnvironmentAction(ctx context.Context, params *CreateEnvironmentActionInput, optFns ...func(*Options)) (*CreateEnvironmentActionOutput, error) { + if params == nil { + params = &CreateEnvironmentActionInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "CreateEnvironmentAction", params, optFns, c.addOperationCreateEnvironmentActionMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*CreateEnvironmentActionOutput) + out.ResultMetadata = metadata + return out, nil +} + +type CreateEnvironmentActionInput struct { + + // The ID of the Amazon DataZone domain in which the environment action is created. + // + // This member is required. + DomainIdentifier *string + + // The ID of the environment in which the environment action is created. + // + // This member is required. + EnvironmentIdentifier *string + + // The name of the environment action. + // + // This member is required. + Name *string + + // The parameters of the environment action. + // + // This member is required. + Parameters types.ActionParameters + + // The description of the environment action that is being created in the + // environment. + Description *string + + noSmithyDocumentSerde +} + +type CreateEnvironmentActionOutput struct { + + // The ID of the domain in which the environment action is created. + // + // This member is required. + DomainId *string + + // The ID of the environment in which the environment is created. + // + // This member is required. + EnvironmentId *string + + // The ID of the environment action. + // + // This member is required. + Id *string + + // The name of the environment action. + // + // This member is required. + Name *string + + // The parameters of the environment action. + // + // This member is required. + Parameters types.ActionParameters + + // The description of the environment action. + Description *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationCreateEnvironmentActionMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateEnvironmentAction{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateEnvironmentAction{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "CreateEnvironmentAction"); 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 = 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 = addOpCreateEnvironmentActionValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateEnvironmentAction(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 + } + return nil +} + +func newServiceMetadataMiddleware_opCreateEnvironmentAction(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "CreateEnvironmentAction", + } +} diff --git a/service/datazone/api_op_DeleteDataSource.go b/service/datazone/api_op_DeleteDataSource.go index 4bef089f31a..d23a167faac 100644 --- a/service/datazone/api_op_DeleteDataSource.go +++ b/service/datazone/api_op_DeleteDataSource.go @@ -44,6 +44,10 @@ type DeleteDataSourceInput struct { // of the request. ClientToken *string + // Specifies that the granted permissions are retained in case of a self-subscribe + // functionality failure for a data source. + RetainPermissionsOnRevokeFailure *bool + noSmithyDocumentSerde } @@ -109,9 +113,16 @@ type DeleteDataSourceOutput struct { // to be also automatically published to the catalog. PublishOnImport *bool + // Specifies that the granted permissions are retained in case of a self-subscribe + // functionality failure for a data source. + RetainPermissionsOnRevokeFailure *bool + // The schedule of runs for this data source. Schedule *types.ScheduleConfiguration + // Specifies the status of the self-granting functionality. + SelfGrantStatus types.SelfGrantStatusOutput + // The status of this data source. Status types.DataSourceStatus diff --git a/service/datazone/api_op_DeleteEnvironmentAction.go b/service/datazone/api_op_DeleteEnvironmentAction.go new file mode 100644 index 00000000000..9cf71029a8d --- /dev/null +++ b/service/datazone/api_op_DeleteEnvironmentAction.go @@ -0,0 +1,145 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package datazone + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Deletes an action for the environment, for example, deletes a console link for +// an analytics tool that is available in this environment. +func (c *Client) DeleteEnvironmentAction(ctx context.Context, params *DeleteEnvironmentActionInput, optFns ...func(*Options)) (*DeleteEnvironmentActionOutput, error) { + if params == nil { + params = &DeleteEnvironmentActionInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "DeleteEnvironmentAction", params, optFns, c.addOperationDeleteEnvironmentActionMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*DeleteEnvironmentActionOutput) + out.ResultMetadata = metadata + return out, nil +} + +type DeleteEnvironmentActionInput struct { + + // The ID of the Amazon DataZone domain in which an environment action is deleted. + // + // This member is required. + DomainIdentifier *string + + // The ID of the environment where an environment action is deleted. + // + // This member is required. + EnvironmentIdentifier *string + + // The ID of the environment action that is deleted. + // + // This member is required. + Identifier *string + + noSmithyDocumentSerde +} + +type DeleteEnvironmentActionOutput struct { + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationDeleteEnvironmentActionMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpDeleteEnvironmentAction{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDeleteEnvironmentAction{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "DeleteEnvironmentAction"); 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 = 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 = addOpDeleteEnvironmentActionValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteEnvironmentAction(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 + } + return nil +} + +func newServiceMetadataMiddleware_opDeleteEnvironmentAction(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "DeleteEnvironmentAction", + } +} diff --git a/service/datazone/api_op_DisassociateEnvironmentRole.go b/service/datazone/api_op_DisassociateEnvironmentRole.go new file mode 100644 index 00000000000..b2fe9257ba8 --- /dev/null +++ b/service/datazone/api_op_DisassociateEnvironmentRole.go @@ -0,0 +1,145 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package datazone + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Disassociates the environment role in Amazon DataZone. +func (c *Client) DisassociateEnvironmentRole(ctx context.Context, params *DisassociateEnvironmentRoleInput, optFns ...func(*Options)) (*DisassociateEnvironmentRoleOutput, error) { + if params == nil { + params = &DisassociateEnvironmentRoleInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "DisassociateEnvironmentRole", params, optFns, c.addOperationDisassociateEnvironmentRoleMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*DisassociateEnvironmentRoleOutput) + out.ResultMetadata = metadata + return out, nil +} + +type DisassociateEnvironmentRoleInput struct { + + // The ID of the Amazon DataZone domain in which an environment role is + // disassociated. + // + // This member is required. + DomainIdentifier *string + + // The ID of the environment. + // + // This member is required. + EnvironmentIdentifier *string + + // The ARN of the environment role. + // + // This member is required. + EnvironmentRoleArn *string + + noSmithyDocumentSerde +} + +type DisassociateEnvironmentRoleOutput struct { + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationDisassociateEnvironmentRoleMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpDisassociateEnvironmentRole{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDisassociateEnvironmentRole{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "DisassociateEnvironmentRole"); 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 = 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 = addOpDisassociateEnvironmentRoleValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDisassociateEnvironmentRole(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 + } + return nil +} + +func newServiceMetadataMiddleware_opDisassociateEnvironmentRole(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "DisassociateEnvironmentRole", + } +} diff --git a/service/datazone/api_op_GetDataSource.go b/service/datazone/api_op_GetDataSource.go index b4bb64d29f5..69fd3b26e7c 100644 --- a/service/datazone/api_op_GetDataSource.go +++ b/service/datazone/api_op_GetDataSource.go @@ -112,6 +112,9 @@ type GetDataSourceOutput struct { // The schedule of the data source runs. Schedule *types.ScheduleConfiguration + // Specifies the status of the self-granting functionality. + SelfGrantStatus types.SelfGrantStatusOutput + // The status of the data source. Status types.DataSourceStatus diff --git a/service/datazone/api_op_GetEnvironment.go b/service/datazone/api_op_GetEnvironment.go index 37bcac566b0..eb95d4de284 100644 --- a/service/datazone/api_op_GetEnvironment.go +++ b/service/datazone/api_op_GetEnvironment.go @@ -55,11 +55,6 @@ type GetEnvironmentOutput struct { // This member is required. DomainId *string - // The ID of the environment profile with which the environment is created. - // - // This member is required. - EnvironmentProfileId *string - // The name of the environment. // // This member is required. @@ -96,6 +91,9 @@ type GetEnvironmentOutput struct { // The blueprint with which the environment is created. EnvironmentBlueprintId *string + // The ID of the environment profile with which the environment is created. + EnvironmentProfileId *string + // The business glossary terms that can be used in this environment. GlossaryTerms []string diff --git a/service/datazone/api_op_GetEnvironmentAction.go b/service/datazone/api_op_GetEnvironmentAction.go new file mode 100644 index 00000000000..24ad13d393c --- /dev/null +++ b/service/datazone/api_op_GetEnvironmentAction.go @@ -0,0 +1,175 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package datazone + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/datazone/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Gets the specified environment action. +func (c *Client) GetEnvironmentAction(ctx context.Context, params *GetEnvironmentActionInput, optFns ...func(*Options)) (*GetEnvironmentActionOutput, error) { + if params == nil { + params = &GetEnvironmentActionInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "GetEnvironmentAction", params, optFns, c.addOperationGetEnvironmentActionMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*GetEnvironmentActionOutput) + out.ResultMetadata = metadata + return out, nil +} + +type GetEnvironmentActionInput struct { + + // The ID of the Amazon DataZone domain in which the GetEnvironmentAction API is + // invoked. + // + // This member is required. + DomainIdentifier *string + + // The environment ID of the environment action. + // + // This member is required. + EnvironmentIdentifier *string + + // The ID of the environment action + // + // This member is required. + Identifier *string + + noSmithyDocumentSerde +} + +type GetEnvironmentActionOutput struct { + + // The ID of the Amazon DataZone domain in which the environment action lives. + // + // This member is required. + DomainId *string + + // The environment ID of the environment action. + // + // This member is required. + EnvironmentId *string + + // The ID of the environment action. + // + // This member is required. + Id *string + + // The name of the environment action. + // + // This member is required. + Name *string + + // The parameters of the environment action. + // + // This member is required. + Parameters types.ActionParameters + + // The description of the environment action. + Description *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationGetEnvironmentActionMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpGetEnvironmentAction{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetEnvironmentAction{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "GetEnvironmentAction"); 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 = 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 = addOpGetEnvironmentActionValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetEnvironmentAction(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 + } + return nil +} + +func newServiceMetadataMiddleware_opGetEnvironmentAction(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "GetEnvironmentAction", + } +} diff --git a/service/datazone/api_op_ListEnvironmentActions.go b/service/datazone/api_op_ListEnvironmentActions.go new file mode 100644 index 00000000000..a4e71da8794 --- /dev/null +++ b/service/datazone/api_op_ListEnvironmentActions.go @@ -0,0 +1,263 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package datazone + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/datazone/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Lists existing environment actions. +func (c *Client) ListEnvironmentActions(ctx context.Context, params *ListEnvironmentActionsInput, optFns ...func(*Options)) (*ListEnvironmentActionsOutput, error) { + if params == nil { + params = &ListEnvironmentActionsInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "ListEnvironmentActions", params, optFns, c.addOperationListEnvironmentActionsMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*ListEnvironmentActionsOutput) + out.ResultMetadata = metadata + return out, nil +} + +type ListEnvironmentActionsInput struct { + + // The ID of the Amazon DataZone domain in which the environment actions are + // listed. + // + // This member is required. + DomainIdentifier *string + + // The ID of the envrironment whose environment actions are listed. + // + // This member is required. + EnvironmentIdentifier *string + + // The maximum number of environment actions to return in a single call to + // ListEnvironmentActions . When the number of environment actions to be listed is + // greater than the value of MaxResults , the response contains a NextToken value + // that you can use in a subsequent call to ListEnvironmentActions to list the + // next set of environment actions. + MaxResults *int32 + + // When the number of environment actions is greater than the default value for + // the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of environment actions, the response includes a + // pagination token named NextToken . You can specify this NextToken value in a + // subsequent call to ListEnvironmentActions to list the next set of environment + // actions. + NextToken *string + + noSmithyDocumentSerde +} + +type ListEnvironmentActionsOutput struct { + + // The results of ListEnvironmentActions . + Items []types.EnvironmentActionSummary + + // When the number of environment actions is greater than the default value for + // the MaxResults parameter, or if you explicitly specify a value for MaxResults + // that is less than the number of environment actions, the response includes a + // pagination token named NextToken . You can specify this NextToken value in a + // subsequent call to ListEnvironmentActions to list the next set of environment + // actions. + NextToken *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationListEnvironmentActionsMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpListEnvironmentActions{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListEnvironmentActions{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "ListEnvironmentActions"); 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 = 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 = addOpListEnvironmentActionsValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListEnvironmentActions(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 + } + return nil +} + +// ListEnvironmentActionsAPIClient is a client that implements the +// ListEnvironmentActions operation. +type ListEnvironmentActionsAPIClient interface { + ListEnvironmentActions(context.Context, *ListEnvironmentActionsInput, ...func(*Options)) (*ListEnvironmentActionsOutput, error) +} + +var _ ListEnvironmentActionsAPIClient = (*Client)(nil) + +// ListEnvironmentActionsPaginatorOptions is the paginator options for +// ListEnvironmentActions +type ListEnvironmentActionsPaginatorOptions struct { + // The maximum number of environment actions to return in a single call to + // ListEnvironmentActions . When the number of environment actions to be listed is + // greater than the value of MaxResults , the response contains a NextToken value + // that you can use in a subsequent call to ListEnvironmentActions to list the + // next set of environment actions. + 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 +} + +// ListEnvironmentActionsPaginator is a paginator for ListEnvironmentActions +type ListEnvironmentActionsPaginator struct { + options ListEnvironmentActionsPaginatorOptions + client ListEnvironmentActionsAPIClient + params *ListEnvironmentActionsInput + nextToken *string + firstPage bool +} + +// NewListEnvironmentActionsPaginator returns a new ListEnvironmentActionsPaginator +func NewListEnvironmentActionsPaginator(client ListEnvironmentActionsAPIClient, params *ListEnvironmentActionsInput, optFns ...func(*ListEnvironmentActionsPaginatorOptions)) *ListEnvironmentActionsPaginator { + if params == nil { + params = &ListEnvironmentActionsInput{} + } + + options := ListEnvironmentActionsPaginatorOptions{} + if params.MaxResults != nil { + options.Limit = *params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &ListEnvironmentActionsPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *ListEnvironmentActionsPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next ListEnvironmentActions page. +func (p *ListEnvironmentActionsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListEnvironmentActionsOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + var limit *int32 + if p.options.Limit > 0 { + limit = &p.options.Limit + } + params.MaxResults = limit + + result, err := p.client.ListEnvironmentActions(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + +func newServiceMetadataMiddleware_opListEnvironmentActions(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "ListEnvironmentActions", + } +} diff --git a/service/datazone/api_op_UpdateDataSource.go b/service/datazone/api_op_UpdateDataSource.go index 2c5fbcdddd6..2c3b5dab9e7 100644 --- a/service/datazone/api_op_UpdateDataSource.go +++ b/service/datazone/api_op_UpdateDataSource.go @@ -62,6 +62,10 @@ type UpdateDataSourceInput struct { // The recommendation to be updated as part of the UpdateDataSource action. Recommendation *types.RecommendationConfiguration + // Specifies that the granted permissions are retained in case of a self-subscribe + // functionality failure for a data source. + RetainPermissionsOnRevokeFailure *bool + // The schedule to be updated as part of the UpdateDataSource action. Schedule *types.ScheduleConfiguration @@ -131,9 +135,16 @@ type UpdateDataSourceOutput struct { // The recommendation to be updated as part of the UpdateDataSource action. Recommendation *types.RecommendationConfiguration + // Specifies that the granted permissions are retained in case of a self-subscribe + // functionality failure for a data source. + RetainPermissionsOnRevokeFailure *bool + // The schedule to be updated as part of the UpdateDataSource action. Schedule *types.ScheduleConfiguration + // Specifies the status of the self-granting functionality. + SelfGrantStatus types.SelfGrantStatusOutput + // The status to be updated as part of the UpdateDataSource action. Status types.DataSourceStatus diff --git a/service/datazone/api_op_UpdateEnvironment.go b/service/datazone/api_op_UpdateEnvironment.go index f6b9dc2914a..d4f67214d1a 100644 --- a/service/datazone/api_op_UpdateEnvironment.go +++ b/service/datazone/api_op_UpdateEnvironment.go @@ -64,11 +64,6 @@ type UpdateEnvironmentOutput struct { // This member is required. DomainId *string - // The profile identifier of the environment. - // - // This member is required. - EnvironmentProfileId *string - // The name to be updated as part of the UpdateEnvironment action. // // This member is required. @@ -106,6 +101,9 @@ type UpdateEnvironmentOutput struct { // The blueprint identifier of the environment. EnvironmentBlueprintId *string + // The profile identifier of the environment. + EnvironmentProfileId *string + // The glossary terms to be updated as part of the UpdateEnvironment action. GlossaryTerms []string diff --git a/service/datazone/api_op_UpdateEnvironmentAction.go b/service/datazone/api_op_UpdateEnvironmentAction.go new file mode 100644 index 00000000000..8f4c314e4fb --- /dev/null +++ b/service/datazone/api_op_UpdateEnvironmentAction.go @@ -0,0 +1,183 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package datazone + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/datazone/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Updates an environment action. +func (c *Client) UpdateEnvironmentAction(ctx context.Context, params *UpdateEnvironmentActionInput, optFns ...func(*Options)) (*UpdateEnvironmentActionOutput, error) { + if params == nil { + params = &UpdateEnvironmentActionInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "UpdateEnvironmentAction", params, optFns, c.addOperationUpdateEnvironmentActionMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*UpdateEnvironmentActionOutput) + out.ResultMetadata = metadata + return out, nil +} + +type UpdateEnvironmentActionInput struct { + + // The domain ID of the environment action. + // + // This member is required. + DomainIdentifier *string + + // The environment ID of the environment action. + // + // This member is required. + EnvironmentIdentifier *string + + // The ID of the environment action. + // + // This member is required. + Identifier *string + + // The description of the environment action. + Description *string + + // The name of the environment action. + Name *string + + // The parameters of the environment action. + Parameters types.ActionParameters + + noSmithyDocumentSerde +} + +type UpdateEnvironmentActionOutput struct { + + // The domain ID of the environment action. + // + // This member is required. + DomainId *string + + // The environment ID of the environment action. + // + // This member is required. + EnvironmentId *string + + // The ID of the environment action. + // + // This member is required. + Id *string + + // The name of the environment action. + // + // This member is required. + Name *string + + // The parameters of the environment action. + // + // This member is required. + Parameters types.ActionParameters + + // The description of the environment action. + Description *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationUpdateEnvironmentActionMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpUpdateEnvironmentAction{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpUpdateEnvironmentAction{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "UpdateEnvironmentAction"); 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 = 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 = addOpUpdateEnvironmentActionValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opUpdateEnvironmentAction(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 + } + return nil +} + +func newServiceMetadataMiddleware_opUpdateEnvironmentAction(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "UpdateEnvironmentAction", + } +} diff --git a/service/datazone/deserializers.go b/service/datazone/deserializers.go index 57cce503f11..eb91ec0de4e 100644 --- a/service/datazone/deserializers.go +++ b/service/datazone/deserializers.go @@ -490,6 +490,107 @@ func awsRestjson1_deserializeOpDocumentAcceptSubscriptionRequestOutput(v **Accep return nil } +type awsRestjson1_deserializeOpAssociateEnvironmentRole struct { +} + +func (*awsRestjson1_deserializeOpAssociateEnvironmentRole) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpAssociateEnvironmentRole) 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 + } + + 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, awsRestjson1_deserializeOpErrorAssociateEnvironmentRole(response, &metadata) + } + output := &AssociateEnvironmentRoleOutput{} + out.Result = output + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorAssociateEnvironmentRole(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 + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(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 err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("ConflictException", errorCode): + return awsRestjson1_deserializeErrorConflictException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("UnauthorizedException", errorCode): + return awsRestjson1_deserializeErrorUnauthorizedException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsRestjson1_deserializeOpCancelMetadataGenerationRun struct { } @@ -2684,14 +2785,14 @@ func awsRestjson1_deserializeOpDocumentCreateEnvironmentOutput(v **CreateEnviron return nil } -type awsRestjson1_deserializeOpCreateEnvironmentProfile struct { +type awsRestjson1_deserializeOpCreateEnvironmentAction struct { } -func (*awsRestjson1_deserializeOpCreateEnvironmentProfile) ID() string { +func (*awsRestjson1_deserializeOpCreateEnvironmentAction) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpCreateEnvironmentProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpCreateEnvironmentAction) 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) @@ -2705,9 +2806,9 @@ func (m *awsRestjson1_deserializeOpCreateEnvironmentProfile) HandleDeserialize(c } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorCreateEnvironmentProfile(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorCreateEnvironmentAction(response, &metadata) } - output := &CreateEnvironmentProfileOutput{} + output := &CreateEnvironmentActionOutput{} out.Result = output var buff [1024]byte @@ -2728,7 +2829,7 @@ func (m *awsRestjson1_deserializeOpCreateEnvironmentProfile) HandleDeserialize(c return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentCreateEnvironmentProfileOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentCreateEnvironmentActionOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -2741,7 +2842,7 @@ func (m *awsRestjson1_deserializeOpCreateEnvironmentProfile) HandleDeserialize(c return out, metadata, err } -func awsRestjson1_deserializeOpErrorCreateEnvironmentProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorCreateEnvironmentAction(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)} @@ -2794,9 +2895,6 @@ func awsRestjson1_deserializeOpErrorCreateEnvironmentProfile(response *smithyhtt case strings.EqualFold("ResourceNotFoundException", errorCode): return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) - case strings.EqualFold("ServiceQuotaExceededException", errorCode): - return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody) - case strings.EqualFold("ThrottlingException", errorCode): return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) @@ -2816,7 +2914,7 @@ func awsRestjson1_deserializeOpErrorCreateEnvironmentProfile(response *smithyhtt } } -func awsRestjson1_deserializeOpDocumentCreateEnvironmentProfileOutput(v **CreateEnvironmentProfileOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentCreateEnvironmentActionOutput(v **CreateEnvironmentActionOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -2829,60 +2927,20 @@ func awsRestjson1_deserializeOpDocumentCreateEnvironmentProfileOutput(v **Create return fmt.Errorf("unexpected JSON type %v", value) } - var sv *CreateEnvironmentProfileOutput + var sv *CreateEnvironmentActionOutput if *v == nil { - sv = &CreateEnvironmentProfileOutput{} + sv = &CreateEnvironmentActionOutput{} } else { sv = *v } for key, value := range shape { switch key { - case "awsAccountId": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected AwsAccountId to be of type string, got %T instead", value) - } - sv.AwsAccountId = ptr.String(jtv) - } - - case "awsAccountRegion": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected AwsRegion to be of type string, got %T instead", value) - } - sv.AwsAccountRegion = ptr.String(jtv) - } - - case "createdAt": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) - } - t, err := smithytime.ParseDateTime(jtv) - if err != nil { - return err - } - sv.CreatedAt = ptr.Time(t) - } - - case "createdBy": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected String to be of type string, got %T instead", value) - } - sv.CreatedBy = ptr.String(jtv) - } - case "description": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected Description to be of type string, got %T instead", value) + return fmt.Errorf("expected String to be of type string, got %T instead", value) } sv.Description = ptr.String(jtv) } @@ -2896,20 +2954,20 @@ func awsRestjson1_deserializeOpDocumentCreateEnvironmentProfileOutput(v **Create sv.DomainId = ptr.String(jtv) } - case "environmentBlueprintId": + case "environmentId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected EnvironmentBlueprintId to be of type string, got %T instead", value) + return fmt.Errorf("expected EnvironmentId to be of type string, got %T instead", value) } - sv.EnvironmentBlueprintId = ptr.String(jtv) + sv.EnvironmentId = ptr.String(jtv) } case "id": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected EnvironmentProfileId to be of type string, got %T instead", value) + return fmt.Errorf("expected EnvironmentActionId to be of type string, got %T instead", value) } sv.Id = ptr.String(jtv) } @@ -2918,35 +2976,13 @@ func awsRestjson1_deserializeOpDocumentCreateEnvironmentProfileOutput(v **Create if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected EnvironmentProfileName to be of type string, got %T instead", value) + return fmt.Errorf("expected String to be of type string, got %T instead", value) } sv.Name = ptr.String(jtv) } - case "projectId": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected ProjectId to be of type string, got %T instead", value) - } - sv.ProjectId = ptr.String(jtv) - } - - case "updatedAt": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) - } - t, err := smithytime.ParseDateTime(jtv) - if err != nil { - return err - } - sv.UpdatedAt = ptr.Time(t) - } - - case "userParameters": - if err := awsRestjson1_deserializeDocumentCustomParameterList(&sv.UserParameters, value); err != nil { + case "parameters": + if err := awsRestjson1_deserializeDocumentActionParameters(&sv.Parameters, value); err != nil { return err } @@ -2959,14 +2995,14 @@ func awsRestjson1_deserializeOpDocumentCreateEnvironmentProfileOutput(v **Create return nil } -type awsRestjson1_deserializeOpCreateFormType struct { +type awsRestjson1_deserializeOpCreateEnvironmentProfile struct { } -func (*awsRestjson1_deserializeOpCreateFormType) ID() string { +func (*awsRestjson1_deserializeOpCreateEnvironmentProfile) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpCreateFormType) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpCreateEnvironmentProfile) 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) @@ -2980,9 +3016,9 @@ func (m *awsRestjson1_deserializeOpCreateFormType) HandleDeserialize(ctx context } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorCreateFormType(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorCreateEnvironmentProfile(response, &metadata) } - output := &CreateFormTypeOutput{} + output := &CreateEnvironmentProfileOutput{} out.Result = output var buff [1024]byte @@ -3003,7 +3039,7 @@ func (m *awsRestjson1_deserializeOpCreateFormType) HandleDeserialize(ctx context return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentCreateFormTypeOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentCreateEnvironmentProfileOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -3016,7 +3052,7 @@ func (m *awsRestjson1_deserializeOpCreateFormType) HandleDeserialize(ctx context return out, metadata, err } -func awsRestjson1_deserializeOpErrorCreateFormType(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorCreateEnvironmentProfile(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)} @@ -3066,6 +3102,9 @@ func awsRestjson1_deserializeOpErrorCreateFormType(response *smithyhttp.Response case strings.EqualFold("InternalServerException", errorCode): return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + case strings.EqualFold("ServiceQuotaExceededException", errorCode): return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody) @@ -3088,7 +3127,7 @@ func awsRestjson1_deserializeOpErrorCreateFormType(response *smithyhttp.Response } } -func awsRestjson1_deserializeOpDocumentCreateFormTypeOutput(v **CreateFormTypeOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentCreateEnvironmentProfileOutput(v **CreateEnvironmentProfileOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -3101,95 +3140,144 @@ func awsRestjson1_deserializeOpDocumentCreateFormTypeOutput(v **CreateFormTypeOu return fmt.Errorf("unexpected JSON type %v", value) } - var sv *CreateFormTypeOutput + var sv *CreateEnvironmentProfileOutput if *v == nil { - sv = &CreateFormTypeOutput{} + sv = &CreateEnvironmentProfileOutput{} } else { sv = *v } for key, value := range shape { switch key { - case "description": + case "awsAccountId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected Description to be of type string, got %T instead", value) + return fmt.Errorf("expected AwsAccountId to be of type string, got %T instead", value) } - sv.Description = ptr.String(jtv) + sv.AwsAccountId = ptr.String(jtv) } - case "domainId": + case "awsAccountRegion": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected DomainId to be of type string, got %T instead", value) + return fmt.Errorf("expected AwsRegion to be of type string, got %T instead", value) } - sv.DomainId = ptr.String(jtv) + sv.AwsAccountRegion = ptr.String(jtv) } - case "name": + case "createdAt": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected FormTypeName to be of type string, got %T instead", value) + return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) } - sv.Name = ptr.String(jtv) + t, err := smithytime.ParseDateTime(jtv) + if err != nil { + return err + } + sv.CreatedAt = ptr.Time(t) } - case "originDomainId": + case "createdBy": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected DomainId to be of type string, got %T instead", value) + return fmt.Errorf("expected String to be of type string, got %T instead", value) } - sv.OriginDomainId = ptr.String(jtv) + sv.CreatedBy = ptr.String(jtv) } - case "originProjectId": + case "description": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected ProjectId to be of type string, got %T instead", value) + return fmt.Errorf("expected Description to be of type string, got %T instead", value) } - sv.OriginProjectId = ptr.String(jtv) + sv.Description = ptr.String(jtv) } - case "owningProjectId": + case "domainId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected ProjectId to be of type string, got %T instead", value) + return fmt.Errorf("expected DomainId to be of type string, got %T instead", value) } - sv.OwningProjectId = ptr.String(jtv) + sv.DomainId = ptr.String(jtv) } - case "revision": + case "environmentBlueprintId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected Revision to be of type string, got %T instead", value) + return fmt.Errorf("expected EnvironmentBlueprintId to be of type string, got %T instead", value) } - sv.Revision = ptr.String(jtv) + sv.EnvironmentBlueprintId = ptr.String(jtv) } - default: - _, _ = key, value - + case "id": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EnvironmentProfileId to be of type string, got %T instead", value) + } + sv.Id = ptr.String(jtv) + } + + case "name": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EnvironmentProfileName to be of type string, got %T instead", value) + } + sv.Name = ptr.String(jtv) + } + + case "projectId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ProjectId to be of type string, got %T instead", value) + } + sv.ProjectId = ptr.String(jtv) + } + + case "updatedAt": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) + } + t, err := smithytime.ParseDateTime(jtv) + if err != nil { + return err + } + sv.UpdatedAt = ptr.Time(t) + } + + case "userParameters": + if err := awsRestjson1_deserializeDocumentCustomParameterList(&sv.UserParameters, value); err != nil { + return err + } + + default: + _, _ = key, value + } } *v = sv return nil } -type awsRestjson1_deserializeOpCreateGlossary struct { +type awsRestjson1_deserializeOpCreateFormType struct { } -func (*awsRestjson1_deserializeOpCreateGlossary) ID() string { +func (*awsRestjson1_deserializeOpCreateFormType) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpCreateGlossary) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpCreateFormType) 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) @@ -3203,9 +3291,9 @@ func (m *awsRestjson1_deserializeOpCreateGlossary) HandleDeserialize(ctx context } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorCreateGlossary(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorCreateFormType(response, &metadata) } - output := &CreateGlossaryOutput{} + output := &CreateFormTypeOutput{} out.Result = output var buff [1024]byte @@ -3226,7 +3314,7 @@ func (m *awsRestjson1_deserializeOpCreateGlossary) HandleDeserialize(ctx context return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentCreateGlossaryOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentCreateFormTypeOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -3239,7 +3327,7 @@ func (m *awsRestjson1_deserializeOpCreateGlossary) HandleDeserialize(ctx context return out, metadata, err } -func awsRestjson1_deserializeOpErrorCreateGlossary(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorCreateFormType(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)} @@ -3311,7 +3399,7 @@ func awsRestjson1_deserializeOpErrorCreateGlossary(response *smithyhttp.Response } } -func awsRestjson1_deserializeOpDocumentCreateGlossaryOutput(v **CreateGlossaryOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentCreateFormTypeOutput(v **CreateFormTypeOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -3324,9 +3412,9 @@ func awsRestjson1_deserializeOpDocumentCreateGlossaryOutput(v **CreateGlossaryOu return fmt.Errorf("unexpected JSON type %v", value) } - var sv *CreateGlossaryOutput + var sv *CreateFormTypeOutput if *v == nil { - sv = &CreateGlossaryOutput{} + sv = &CreateFormTypeOutput{} } else { sv = *v } @@ -3337,7 +3425,7 @@ func awsRestjson1_deserializeOpDocumentCreateGlossaryOutput(v **CreateGlossaryOu if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected GlossaryDescription to be of type string, got %T instead", value) + return fmt.Errorf("expected Description to be of type string, got %T instead", value) } sv.Description = ptr.String(jtv) } @@ -3351,22 +3439,31 @@ func awsRestjson1_deserializeOpDocumentCreateGlossaryOutput(v **CreateGlossaryOu sv.DomainId = ptr.String(jtv) } - case "id": + case "name": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected GlossaryId to be of type string, got %T instead", value) + return fmt.Errorf("expected FormTypeName to be of type string, got %T instead", value) } - sv.Id = ptr.String(jtv) + sv.Name = ptr.String(jtv) } - case "name": + case "originDomainId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected GlossaryName to be of type string, got %T instead", value) + return fmt.Errorf("expected DomainId to be of type string, got %T instead", value) } - sv.Name = ptr.String(jtv) + sv.OriginDomainId = ptr.String(jtv) + } + + case "originProjectId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ProjectId to be of type string, got %T instead", value) + } + sv.OriginProjectId = ptr.String(jtv) } case "owningProjectId": @@ -3378,13 +3475,13 @@ func awsRestjson1_deserializeOpDocumentCreateGlossaryOutput(v **CreateGlossaryOu sv.OwningProjectId = ptr.String(jtv) } - case "status": + case "revision": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected GlossaryStatus to be of type string, got %T instead", value) + return fmt.Errorf("expected Revision to be of type string, got %T instead", value) } - sv.Status = types.GlossaryStatus(jtv) + sv.Revision = ptr.String(jtv) } default: @@ -3396,14 +3493,14 @@ func awsRestjson1_deserializeOpDocumentCreateGlossaryOutput(v **CreateGlossaryOu return nil } -type awsRestjson1_deserializeOpCreateGlossaryTerm struct { +type awsRestjson1_deserializeOpCreateGlossary struct { } -func (*awsRestjson1_deserializeOpCreateGlossaryTerm) ID() string { +func (*awsRestjson1_deserializeOpCreateGlossary) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpCreateGlossaryTerm) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpCreateGlossary) 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) @@ -3417,9 +3514,9 @@ func (m *awsRestjson1_deserializeOpCreateGlossaryTerm) HandleDeserialize(ctx con } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorCreateGlossaryTerm(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorCreateGlossary(response, &metadata) } - output := &CreateGlossaryTermOutput{} + output := &CreateGlossaryOutput{} out.Result = output var buff [1024]byte @@ -3440,7 +3537,7 @@ func (m *awsRestjson1_deserializeOpCreateGlossaryTerm) HandleDeserialize(ctx con return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentCreateGlossaryTermOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentCreateGlossaryOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -3453,7 +3550,7 @@ func (m *awsRestjson1_deserializeOpCreateGlossaryTerm) HandleDeserialize(ctx con return out, metadata, err } -func awsRestjson1_deserializeOpErrorCreateGlossaryTerm(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorCreateGlossary(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)} @@ -3503,9 +3600,6 @@ func awsRestjson1_deserializeOpErrorCreateGlossaryTerm(response *smithyhttp.Resp case strings.EqualFold("InternalServerException", errorCode): return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) - case strings.EqualFold("ResourceNotFoundException", errorCode): - return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) - case strings.EqualFold("ServiceQuotaExceededException", errorCode): return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody) @@ -3528,7 +3622,7 @@ func awsRestjson1_deserializeOpErrorCreateGlossaryTerm(response *smithyhttp.Resp } } -func awsRestjson1_deserializeOpDocumentCreateGlossaryTermOutput(v **CreateGlossaryTermOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentCreateGlossaryOutput(v **CreateGlossaryOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -3541,81 +3635,67 @@ func awsRestjson1_deserializeOpDocumentCreateGlossaryTermOutput(v **CreateGlossa return fmt.Errorf("unexpected JSON type %v", value) } - var sv *CreateGlossaryTermOutput + var sv *CreateGlossaryOutput if *v == nil { - sv = &CreateGlossaryTermOutput{} + sv = &CreateGlossaryOutput{} } else { sv = *v } for key, value := range shape { switch key { - case "domainId": + case "description": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected DomainId to be of type string, got %T instead", value) + return fmt.Errorf("expected GlossaryDescription to be of type string, got %T instead", value) } - sv.DomainId = ptr.String(jtv) + sv.Description = ptr.String(jtv) } - case "glossaryId": + case "domainId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected GlossaryId to be of type string, got %T instead", value) + return fmt.Errorf("expected DomainId to be of type string, got %T instead", value) } - sv.GlossaryId = ptr.String(jtv) + sv.DomainId = ptr.String(jtv) } case "id": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected GlossaryTermId to be of type string, got %T instead", value) + return fmt.Errorf("expected GlossaryId to be of type string, got %T instead", value) } sv.Id = ptr.String(jtv) } - case "longDescription": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected LongDescription to be of type string, got %T instead", value) - } - sv.LongDescription = ptr.String(jtv) - } - case "name": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected GlossaryTermName to be of type string, got %T instead", value) + return fmt.Errorf("expected GlossaryName to be of type string, got %T instead", value) } sv.Name = ptr.String(jtv) } - case "shortDescription": + case "owningProjectId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected ShortDescription to be of type string, got %T instead", value) + return fmt.Errorf("expected ProjectId to be of type string, got %T instead", value) } - sv.ShortDescription = ptr.String(jtv) + sv.OwningProjectId = ptr.String(jtv) } case "status": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected GlossaryTermStatus to be of type string, got %T instead", value) + return fmt.Errorf("expected GlossaryStatus to be of type string, got %T instead", value) } - sv.Status = types.GlossaryTermStatus(jtv) - } - - case "termRelations": - if err := awsRestjson1_deserializeDocumentTermRelations(&sv.TermRelations, value); err != nil { - return err + sv.Status = types.GlossaryStatus(jtv) } default: @@ -3627,14 +3707,14 @@ func awsRestjson1_deserializeOpDocumentCreateGlossaryTermOutput(v **CreateGlossa return nil } -type awsRestjson1_deserializeOpCreateGroupProfile struct { +type awsRestjson1_deserializeOpCreateGlossaryTerm struct { } -func (*awsRestjson1_deserializeOpCreateGroupProfile) ID() string { +func (*awsRestjson1_deserializeOpCreateGlossaryTerm) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpCreateGroupProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpCreateGlossaryTerm) 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) @@ -3648,9 +3728,9 @@ func (m *awsRestjson1_deserializeOpCreateGroupProfile) HandleDeserialize(ctx con } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorCreateGroupProfile(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorCreateGlossaryTerm(response, &metadata) } - output := &CreateGroupProfileOutput{} + output := &CreateGlossaryTermOutput{} out.Result = output var buff [1024]byte @@ -3671,7 +3751,7 @@ func (m *awsRestjson1_deserializeOpCreateGroupProfile) HandleDeserialize(ctx con return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentCreateGroupProfileOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentCreateGlossaryTermOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -3684,7 +3764,7 @@ func (m *awsRestjson1_deserializeOpCreateGroupProfile) HandleDeserialize(ctx con return out, metadata, err } -func awsRestjson1_deserializeOpErrorCreateGroupProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorCreateGlossaryTerm(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)} @@ -3728,12 +3808,18 @@ func awsRestjson1_deserializeOpErrorCreateGroupProfile(response *smithyhttp.Resp case strings.EqualFold("AccessDeniedException", errorCode): return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + case strings.EqualFold("ConflictException", errorCode): + return awsRestjson1_deserializeErrorConflictException(response, errorBody) + case strings.EqualFold("InternalServerException", errorCode): return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) case strings.EqualFold("ResourceNotFoundException", errorCode): return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + case strings.EqualFold("ServiceQuotaExceededException", errorCode): + return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody) + case strings.EqualFold("ThrottlingException", errorCode): return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) @@ -3753,7 +3839,7 @@ func awsRestjson1_deserializeOpErrorCreateGroupProfile(response *smithyhttp.Resp } } -func awsRestjson1_deserializeOpDocumentCreateGroupProfileOutput(v **CreateGroupProfileOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentCreateGlossaryTermOutput(v **CreateGlossaryTermOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -3766,9 +3852,9 @@ func awsRestjson1_deserializeOpDocumentCreateGroupProfileOutput(v **CreateGroupP return fmt.Errorf("unexpected JSON type %v", value) } - var sv *CreateGroupProfileOutput + var sv *CreateGlossaryTermOutput if *v == nil { - sv = &CreateGroupProfileOutput{} + sv = &CreateGlossaryTermOutput{} } else { sv = *v } @@ -3784,31 +3870,63 @@ func awsRestjson1_deserializeOpDocumentCreateGroupProfileOutput(v **CreateGroupP sv.DomainId = ptr.String(jtv) } - case "groupName": + case "glossaryId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected GroupProfileName to be of type string, got %T instead", value) + return fmt.Errorf("expected GlossaryId to be of type string, got %T instead", value) } - sv.GroupName = ptr.String(jtv) + sv.GlossaryId = ptr.String(jtv) } case "id": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected GroupProfileId to be of type string, got %T instead", value) + return fmt.Errorf("expected GlossaryTermId to be of type string, got %T instead", value) } sv.Id = ptr.String(jtv) } + case "longDescription": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected LongDescription to be of type string, got %T instead", value) + } + sv.LongDescription = ptr.String(jtv) + } + + case "name": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected GlossaryTermName to be of type string, got %T instead", value) + } + sv.Name = ptr.String(jtv) + } + + case "shortDescription": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ShortDescription to be of type string, got %T instead", value) + } + sv.ShortDescription = ptr.String(jtv) + } + case "status": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected GroupProfileStatus to be of type string, got %T instead", value) + return fmt.Errorf("expected GlossaryTermStatus to be of type string, got %T instead", value) } - sv.Status = types.GroupProfileStatus(jtv) + sv.Status = types.GlossaryTermStatus(jtv) + } + + case "termRelations": + if err := awsRestjson1_deserializeDocumentTermRelations(&sv.TermRelations, value); err != nil { + return err } default: @@ -3820,14 +3938,14 @@ func awsRestjson1_deserializeOpDocumentCreateGroupProfileOutput(v **CreateGroupP return nil } -type awsRestjson1_deserializeOpCreateListingChangeSet struct { +type awsRestjson1_deserializeOpCreateGroupProfile struct { } -func (*awsRestjson1_deserializeOpCreateListingChangeSet) ID() string { +func (*awsRestjson1_deserializeOpCreateGroupProfile) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpCreateListingChangeSet) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpCreateGroupProfile) 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) @@ -3841,9 +3959,9 @@ func (m *awsRestjson1_deserializeOpCreateListingChangeSet) HandleDeserialize(ctx } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorCreateListingChangeSet(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorCreateGroupProfile(response, &metadata) } - output := &CreateListingChangeSetOutput{} + output := &CreateGroupProfileOutput{} out.Result = output var buff [1024]byte @@ -3864,7 +3982,7 @@ func (m *awsRestjson1_deserializeOpCreateListingChangeSet) HandleDeserialize(ctx return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentCreateListingChangeSetOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentCreateGroupProfileOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -3877,7 +3995,7 @@ func (m *awsRestjson1_deserializeOpCreateListingChangeSet) HandleDeserialize(ctx return out, metadata, err } -func awsRestjson1_deserializeOpErrorCreateListingChangeSet(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorCreateGroupProfile(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)} @@ -3921,18 +4039,12 @@ func awsRestjson1_deserializeOpErrorCreateListingChangeSet(response *smithyhttp. case strings.EqualFold("AccessDeniedException", errorCode): return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) - case strings.EqualFold("ConflictException", errorCode): - return awsRestjson1_deserializeErrorConflictException(response, errorBody) - case strings.EqualFold("InternalServerException", errorCode): return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) case strings.EqualFold("ResourceNotFoundException", errorCode): return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) - case strings.EqualFold("ServiceQuotaExceededException", errorCode): - return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody) - case strings.EqualFold("ThrottlingException", errorCode): return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) @@ -3952,7 +4064,7 @@ func awsRestjson1_deserializeOpErrorCreateListingChangeSet(response *smithyhttp. } } -func awsRestjson1_deserializeOpDocumentCreateListingChangeSetOutput(v **CreateListingChangeSetOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentCreateGroupProfileOutput(v **CreateGroupProfileOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -3965,9 +4077,208 @@ func awsRestjson1_deserializeOpDocumentCreateListingChangeSetOutput(v **CreateLi return fmt.Errorf("unexpected JSON type %v", value) } - var sv *CreateListingChangeSetOutput + var sv *CreateGroupProfileOutput if *v == nil { - sv = &CreateListingChangeSetOutput{} + sv = &CreateGroupProfileOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "domainId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected DomainId to be of type string, got %T instead", value) + } + sv.DomainId = ptr.String(jtv) + } + + case "groupName": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected GroupProfileName to be of type string, got %T instead", value) + } + sv.GroupName = ptr.String(jtv) + } + + case "id": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected GroupProfileId to be of type string, got %T instead", value) + } + sv.Id = ptr.String(jtv) + } + + case "status": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected GroupProfileStatus to be of type string, got %T instead", value) + } + sv.Status = types.GroupProfileStatus(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +type awsRestjson1_deserializeOpCreateListingChangeSet struct { +} + +func (*awsRestjson1_deserializeOpCreateListingChangeSet) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpCreateListingChangeSet) 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 + } + + 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, awsRestjson1_deserializeOpErrorCreateListingChangeSet(response, &metadata) + } + output := &CreateListingChangeSetOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + 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 + } + + err = awsRestjson1_deserializeOpDocumentCreateListingChangeSetOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorCreateListingChangeSet(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 + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(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 err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("ConflictException", errorCode): + return awsRestjson1_deserializeErrorConflictException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ServiceQuotaExceededException", errorCode): + return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("UnauthorizedException", errorCode): + return awsRestjson1_deserializeErrorUnauthorizedException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentCreateListingChangeSetOutput(v **CreateListingChangeSetOutput, 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 *CreateListingChangeSetOutput + if *v == nil { + sv = &CreateListingChangeSetOutput{} } else { sv = *v } @@ -5875,11 +6186,25 @@ func awsRestjson1_deserializeOpDocumentDeleteDataSourceOutput(v **DeleteDataSour sv.PublishOnImport = ptr.Bool(jtv) } + case "retainPermissionsOnRevokeFailure": + if value != nil { + jtv, ok := value.(bool) + if !ok { + return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value) + } + sv.RetainPermissionsOnRevokeFailure = ptr.Bool(jtv) + } + case "schedule": if err := awsRestjson1_deserializeDocumentScheduleConfiguration(&sv.Schedule, value); err != nil { return err } + case "selfGrantStatus": + if err := awsRestjson1_deserializeDocumentSelfGrantStatusOutput(&sv.SelfGrantStatus, value); err != nil { + return err + } + case "status": if value != nil { jtv, ok := value.(string) @@ -6193,14 +6518,14 @@ func awsRestjson1_deserializeOpErrorDeleteEnvironment(response *smithyhttp.Respo } } -type awsRestjson1_deserializeOpDeleteEnvironmentBlueprintConfiguration struct { +type awsRestjson1_deserializeOpDeleteEnvironmentAction struct { } -func (*awsRestjson1_deserializeOpDeleteEnvironmentBlueprintConfiguration) ID() string { +func (*awsRestjson1_deserializeOpDeleteEnvironmentAction) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpDeleteEnvironmentBlueprintConfiguration) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpDeleteEnvironmentAction) 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) @@ -6214,15 +6539,21 @@ func (m *awsRestjson1_deserializeOpDeleteEnvironmentBlueprintConfiguration) Hand } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorDeleteEnvironmentBlueprintConfiguration(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorDeleteEnvironmentAction(response, &metadata) } - output := &DeleteEnvironmentBlueprintConfigurationOutput{} + output := &DeleteEnvironmentActionOutput{} 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 awsRestjson1_deserializeOpErrorDeleteEnvironmentBlueprintConfiguration(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorDeleteEnvironmentAction(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)} @@ -6266,9 +6597,15 @@ func awsRestjson1_deserializeOpErrorDeleteEnvironmentBlueprintConfiguration(resp case strings.EqualFold("AccessDeniedException", errorCode): return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + case strings.EqualFold("ConflictException", errorCode): + return awsRestjson1_deserializeErrorConflictException(response, errorBody) + case strings.EqualFold("InternalServerException", errorCode): return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + case strings.EqualFold("ThrottlingException", errorCode): return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) @@ -6288,14 +6625,14 @@ func awsRestjson1_deserializeOpErrorDeleteEnvironmentBlueprintConfiguration(resp } } -type awsRestjson1_deserializeOpDeleteEnvironmentProfile struct { +type awsRestjson1_deserializeOpDeleteEnvironmentBlueprintConfiguration struct { } -func (*awsRestjson1_deserializeOpDeleteEnvironmentProfile) ID() string { +func (*awsRestjson1_deserializeOpDeleteEnvironmentBlueprintConfiguration) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpDeleteEnvironmentProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpDeleteEnvironmentBlueprintConfiguration) 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) @@ -6309,21 +6646,15 @@ func (m *awsRestjson1_deserializeOpDeleteEnvironmentProfile) HandleDeserialize(c } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorDeleteEnvironmentProfile(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorDeleteEnvironmentBlueprintConfiguration(response, &metadata) } - output := &DeleteEnvironmentProfileOutput{} + output := &DeleteEnvironmentBlueprintConfigurationOutput{} 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 awsRestjson1_deserializeOpErrorDeleteEnvironmentProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorDeleteEnvironmentBlueprintConfiguration(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)} @@ -6370,9 +6701,6 @@ func awsRestjson1_deserializeOpErrorDeleteEnvironmentProfile(response *smithyhtt case strings.EqualFold("InternalServerException", errorCode): return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) - case strings.EqualFold("ResourceNotFoundException", errorCode): - return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) - case strings.EqualFold("ThrottlingException", errorCode): return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) @@ -6392,14 +6720,14 @@ func awsRestjson1_deserializeOpErrorDeleteEnvironmentProfile(response *smithyhtt } } -type awsRestjson1_deserializeOpDeleteFormType struct { +type awsRestjson1_deserializeOpDeleteEnvironmentProfile struct { } -func (*awsRestjson1_deserializeOpDeleteFormType) ID() string { +func (*awsRestjson1_deserializeOpDeleteEnvironmentProfile) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpDeleteFormType) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpDeleteEnvironmentProfile) 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) @@ -6413,7 +6741,111 @@ func (m *awsRestjson1_deserializeOpDeleteFormType) HandleDeserialize(ctx context } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorDeleteFormType(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorDeleteEnvironmentProfile(response, &metadata) + } + output := &DeleteEnvironmentProfileOutput{} + 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 awsRestjson1_deserializeOpErrorDeleteEnvironmentProfile(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 + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(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 err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("UnauthorizedException", errorCode): + return awsRestjson1_deserializeErrorUnauthorizedException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +type awsRestjson1_deserializeOpDeleteFormType struct { +} + +func (*awsRestjson1_deserializeOpDeleteFormType) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpDeleteFormType) 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 + } + + 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, awsRestjson1_deserializeOpErrorDeleteFormType(response, &metadata) } output := &DeleteFormTypeOutput{} out.Result = output @@ -7572,6 +8004,107 @@ func awsRestjson1_deserializeOpErrorDeleteTimeSeriesDataPoints(response *smithyh } } +type awsRestjson1_deserializeOpDisassociateEnvironmentRole struct { +} + +func (*awsRestjson1_deserializeOpDisassociateEnvironmentRole) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpDisassociateEnvironmentRole) 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 + } + + 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, awsRestjson1_deserializeOpErrorDisassociateEnvironmentRole(response, &metadata) + } + output := &DisassociateEnvironmentRoleOutput{} + out.Result = output + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorDisassociateEnvironmentRole(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 + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(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 err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("ConflictException", errorCode): + return awsRestjson1_deserializeErrorConflictException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("UnauthorizedException", errorCode): + return awsRestjson1_deserializeErrorUnauthorizedException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsRestjson1_deserializeOpGetAsset struct { } @@ -8464,6 +8997,11 @@ func awsRestjson1_deserializeOpDocumentGetDataSourceOutput(v **GetDataSourceOutp return err } + case "selfGrantStatus": + if err := awsRestjson1_deserializeDocumentSelfGrantStatusOutput(&sv.SelfGrantStatus, value); err != nil { + return err + } + case "status": if value != nil { jtv, ok := value.(string) @@ -9392,14 +9930,14 @@ func awsRestjson1_deserializeOpDocumentGetEnvironmentOutput(v **GetEnvironmentOu return nil } -type awsRestjson1_deserializeOpGetEnvironmentBlueprint struct { +type awsRestjson1_deserializeOpGetEnvironmentAction struct { } -func (*awsRestjson1_deserializeOpGetEnvironmentBlueprint) ID() string { +func (*awsRestjson1_deserializeOpGetEnvironmentAction) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpGetEnvironmentBlueprint) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpGetEnvironmentAction) 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) @@ -9413,9 +9951,9 @@ func (m *awsRestjson1_deserializeOpGetEnvironmentBlueprint) HandleDeserialize(ct } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorGetEnvironmentBlueprint(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorGetEnvironmentAction(response, &metadata) } - output := &GetEnvironmentBlueprintOutput{} + output := &GetEnvironmentActionOutput{} out.Result = output var buff [1024]byte @@ -9436,7 +9974,7 @@ func (m *awsRestjson1_deserializeOpGetEnvironmentBlueprint) HandleDeserialize(ct return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentGetEnvironmentBlueprintOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentGetEnvironmentActionOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -9449,7 +9987,7 @@ func (m *awsRestjson1_deserializeOpGetEnvironmentBlueprint) HandleDeserialize(ct return out, metadata, err } -func awsRestjson1_deserializeOpErrorGetEnvironmentBlueprint(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorGetEnvironmentAction(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)} @@ -9518,7 +10056,7 @@ func awsRestjson1_deserializeOpErrorGetEnvironmentBlueprint(response *smithyhttp } } -func awsRestjson1_deserializeOpDocumentGetEnvironmentBlueprintOutput(v **GetEnvironmentBlueprintOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentGetEnvironmentActionOutput(v **GetEnvironmentActionOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -9531,76 +10069,283 @@ func awsRestjson1_deserializeOpDocumentGetEnvironmentBlueprintOutput(v **GetEnvi return fmt.Errorf("unexpected JSON type %v", value) } - var sv *GetEnvironmentBlueprintOutput + var sv *GetEnvironmentActionOutput if *v == nil { - sv = &GetEnvironmentBlueprintOutput{} + sv = &GetEnvironmentActionOutput{} } else { sv = *v } for key, value := range shape { switch key { - case "createdAt": + case "description": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) - } - t, err := smithytime.ParseDateTime(jtv) - if err != nil { - return err + return fmt.Errorf("expected String to be of type string, got %T instead", value) } - sv.CreatedAt = ptr.Time(t) - } - - case "deploymentProperties": - if err := awsRestjson1_deserializeDocumentDeploymentProperties(&sv.DeploymentProperties, value); err != nil { - return err + sv.Description = ptr.String(jtv) } - case "description": + case "domainId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected Description to be of type string, got %T instead", value) + return fmt.Errorf("expected DomainId to be of type string, got %T instead", value) } - sv.Description = ptr.String(jtv) - } - - case "glossaryTerms": - if err := awsRestjson1_deserializeDocumentGlossaryTerms(&sv.GlossaryTerms, value); err != nil { - return err + sv.DomainId = ptr.String(jtv) } - case "id": + case "environmentId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected EnvironmentBlueprintId to be of type string, got %T instead", value) + return fmt.Errorf("expected EnvironmentId to be of type string, got %T instead", value) } - sv.Id = ptr.String(jtv) + sv.EnvironmentId = ptr.String(jtv) } - case "name": + case "id": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected EnvironmentBlueprintName to be of type string, got %T instead", value) + return fmt.Errorf("expected EnvironmentActionId to be of type string, got %T instead", value) } - sv.Name = ptr.String(jtv) + sv.Id = ptr.String(jtv) } - case "provider": + case "name": if value != nil { jtv, ok := value.(string) if !ok { return fmt.Errorf("expected String to be of type string, got %T instead", value) } - sv.Provider = ptr.String(jtv) + sv.Name = ptr.String(jtv) } - case "provisioningProperties": - if err := awsRestjson1_deserializeDocumentProvisioningProperties(&sv.ProvisioningProperties, value); err != nil { + case "parameters": + if err := awsRestjson1_deserializeDocumentActionParameters(&sv.Parameters, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +type awsRestjson1_deserializeOpGetEnvironmentBlueprint struct { +} + +func (*awsRestjson1_deserializeOpGetEnvironmentBlueprint) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpGetEnvironmentBlueprint) 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 + } + + 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, awsRestjson1_deserializeOpErrorGetEnvironmentBlueprint(response, &metadata) + } + output := &GetEnvironmentBlueprintOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + 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 + } + + err = awsRestjson1_deserializeOpDocumentGetEnvironmentBlueprintOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorGetEnvironmentBlueprint(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 + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(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 err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("UnauthorizedException", errorCode): + return awsRestjson1_deserializeErrorUnauthorizedException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentGetEnvironmentBlueprintOutput(v **GetEnvironmentBlueprintOutput, 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 *GetEnvironmentBlueprintOutput + if *v == nil { + sv = &GetEnvironmentBlueprintOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "createdAt": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) + } + t, err := smithytime.ParseDateTime(jtv) + if err != nil { + return err + } + sv.CreatedAt = ptr.Time(t) + } + + case "deploymentProperties": + if err := awsRestjson1_deserializeDocumentDeploymentProperties(&sv.DeploymentProperties, value); err != nil { + return err + } + + case "description": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Description to be of type string, got %T instead", value) + } + sv.Description = ptr.String(jtv) + } + + case "glossaryTerms": + if err := awsRestjson1_deserializeDocumentGlossaryTerms(&sv.GlossaryTerms, value); err != nil { + return err + } + + case "id": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EnvironmentBlueprintId to be of type string, got %T instead", value) + } + sv.Id = ptr.String(jtv) + } + + case "name": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EnvironmentBlueprintName to be of type string, got %T instead", value) + } + sv.Name = ptr.String(jtv) + } + + case "provider": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Provider = ptr.String(jtv) + } + + case "provisioningProperties": + if err := awsRestjson1_deserializeDocumentProvisioningProperties(&sv.ProvisioningProperties, value); err != nil { return err } @@ -14409,14 +15154,14 @@ func awsRestjson1_deserializeOpDocumentListDomainsOutput(v **ListDomainsOutput, return nil } -type awsRestjson1_deserializeOpListEnvironmentBlueprintConfigurations struct { +type awsRestjson1_deserializeOpListEnvironmentActions struct { } -func (*awsRestjson1_deserializeOpListEnvironmentBlueprintConfigurations) ID() string { +func (*awsRestjson1_deserializeOpListEnvironmentActions) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpListEnvironmentBlueprintConfigurations) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpListEnvironmentActions) 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) @@ -14430,9 +15175,9 @@ func (m *awsRestjson1_deserializeOpListEnvironmentBlueprintConfigurations) Handl } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorListEnvironmentBlueprintConfigurations(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorListEnvironmentActions(response, &metadata) } - output := &ListEnvironmentBlueprintConfigurationsOutput{} + output := &ListEnvironmentActionsOutput{} out.Result = output var buff [1024]byte @@ -14453,7 +15198,7 @@ func (m *awsRestjson1_deserializeOpListEnvironmentBlueprintConfigurations) Handl return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintConfigurationsOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentListEnvironmentActionsOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -14466,7 +15211,7 @@ func (m *awsRestjson1_deserializeOpListEnvironmentBlueprintConfigurations) Handl return out, metadata, err } -func awsRestjson1_deserializeOpErrorListEnvironmentBlueprintConfigurations(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorListEnvironmentActions(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)} @@ -14513,9 +15258,6 @@ func awsRestjson1_deserializeOpErrorListEnvironmentBlueprintConfigurations(respo case strings.EqualFold("InternalServerException", errorCode): return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) - case strings.EqualFold("ResourceNotFoundException", errorCode): - return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) - case strings.EqualFold("ThrottlingException", errorCode): return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) @@ -14535,7 +15277,7 @@ func awsRestjson1_deserializeOpErrorListEnvironmentBlueprintConfigurations(respo } } -func awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintConfigurationsOutput(v **ListEnvironmentBlueprintConfigurationsOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentListEnvironmentActionsOutput(v **ListEnvironmentActionsOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -14548,9 +15290,9 @@ func awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintConfigurationsOut return fmt.Errorf("unexpected JSON type %v", value) } - var sv *ListEnvironmentBlueprintConfigurationsOutput + var sv *ListEnvironmentActionsOutput if *v == nil { - sv = &ListEnvironmentBlueprintConfigurationsOutput{} + sv = &ListEnvironmentActionsOutput{} } else { sv = *v } @@ -14558,7 +15300,7 @@ func awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintConfigurationsOut for key, value := range shape { switch key { case "items": - if err := awsRestjson1_deserializeDocumentEnvironmentBlueprintConfigurations(&sv.Items, value); err != nil { + if err := awsRestjson1_deserializeDocumentListEnvironmentActionSummaries(&sv.Items, value); err != nil { return err } @@ -14580,14 +15322,14 @@ func awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintConfigurationsOut return nil } -type awsRestjson1_deserializeOpListEnvironmentBlueprints struct { +type awsRestjson1_deserializeOpListEnvironmentBlueprintConfigurations struct { } -func (*awsRestjson1_deserializeOpListEnvironmentBlueprints) ID() string { +func (*awsRestjson1_deserializeOpListEnvironmentBlueprintConfigurations) ID() string { return "OperationDeserializer" } -func (m *awsRestjson1_deserializeOpListEnvironmentBlueprints) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( +func (m *awsRestjson1_deserializeOpListEnvironmentBlueprintConfigurations) 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) @@ -14601,9 +15343,9 @@ func (m *awsRestjson1_deserializeOpListEnvironmentBlueprints) HandleDeserialize( } if response.StatusCode < 200 || response.StatusCode >= 300 { - return out, metadata, awsRestjson1_deserializeOpErrorListEnvironmentBlueprints(response, &metadata) + return out, metadata, awsRestjson1_deserializeOpErrorListEnvironmentBlueprintConfigurations(response, &metadata) } - output := &ListEnvironmentBlueprintsOutput{} + output := &ListEnvironmentBlueprintConfigurationsOutput{} out.Result = output var buff [1024]byte @@ -14624,7 +15366,7 @@ func (m *awsRestjson1_deserializeOpListEnvironmentBlueprints) HandleDeserialize( return out, metadata, err } - err = awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintsOutput(&output, shape) + err = awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintConfigurationsOutput(&output, shape) if err != nil { var snapshot bytes.Buffer io.Copy(&snapshot, ringBuffer) @@ -14637,7 +15379,7 @@ func (m *awsRestjson1_deserializeOpListEnvironmentBlueprints) HandleDeserialize( return out, metadata, err } -func awsRestjson1_deserializeOpErrorListEnvironmentBlueprints(response *smithyhttp.Response, metadata *middleware.Metadata) error { +func awsRestjson1_deserializeOpErrorListEnvironmentBlueprintConfigurations(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)} @@ -14706,7 +15448,7 @@ func awsRestjson1_deserializeOpErrorListEnvironmentBlueprints(response *smithyht } } -func awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintsOutput(v **ListEnvironmentBlueprintsOutput, value interface{}) error { +func awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintConfigurationsOutput(v **ListEnvironmentBlueprintConfigurationsOutput, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) } @@ -14719,9 +15461,9 @@ func awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintsOutput(v **ListE return fmt.Errorf("unexpected JSON type %v", value) } - var sv *ListEnvironmentBlueprintsOutput + var sv *ListEnvironmentBlueprintConfigurationsOutput if *v == nil { - sv = &ListEnvironmentBlueprintsOutput{} + sv = &ListEnvironmentBlueprintConfigurationsOutput{} } else { sv = *v } @@ -14729,7 +15471,178 @@ func awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintsOutput(v **ListE for key, value := range shape { switch key { case "items": - if err := awsRestjson1_deserializeDocumentEnvironmentBlueprintSummaries(&sv.Items, value); err != nil { + if err := awsRestjson1_deserializeDocumentEnvironmentBlueprintConfigurations(&sv.Items, value); err != nil { + return err + } + + case "nextToken": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected PaginationToken to be of type string, got %T instead", value) + } + sv.NextToken = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +type awsRestjson1_deserializeOpListEnvironmentBlueprints struct { +} + +func (*awsRestjson1_deserializeOpListEnvironmentBlueprints) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpListEnvironmentBlueprints) 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 + } + + 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, awsRestjson1_deserializeOpErrorListEnvironmentBlueprints(response, &metadata) + } + output := &ListEnvironmentBlueprintsOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + 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 + } + + err = awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintsOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorListEnvironmentBlueprints(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 + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(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 err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("UnauthorizedException", errorCode): + return awsRestjson1_deserializeErrorUnauthorizedException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentListEnvironmentBlueprintsOutput(v **ListEnvironmentBlueprintsOutput, 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 *ListEnvironmentBlueprintsOutput + if *v == nil { + sv = &ListEnvironmentBlueprintsOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "items": + if err := awsRestjson1_deserializeDocumentEnvironmentBlueprintSummaries(&sv.Items, value); err != nil { return err } @@ -19823,11 +20736,25 @@ func awsRestjson1_deserializeOpDocumentUpdateDataSourceOutput(v **UpdateDataSour return err } + case "retainPermissionsOnRevokeFailure": + if value != nil { + jtv, ok := value.(bool) + if !ok { + return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value) + } + sv.RetainPermissionsOnRevokeFailure = ptr.Bool(jtv) + } + case "schedule": if err := awsRestjson1_deserializeDocumentScheduleConfiguration(&sv.Schedule, value); err != nil { return err } + case "selfGrantStatus": + if err := awsRestjson1_deserializeDocumentSelfGrantStatusOutput(&sv.SelfGrantStatus, value); err != nil { + return err + } + case "status": if value != nil { jtv, ok := value.(string) @@ -20279,16 +21206,300 @@ func awsRestjson1_deserializeOpDocumentUpdateEnvironmentOutput(v **UpdateEnviron sv.CreatedBy = ptr.String(jtv) } - case "deploymentProperties": - if err := awsRestjson1_deserializeDocumentDeploymentProperties(&sv.DeploymentProperties, value); err != nil { - return err - } + case "deploymentProperties": + if err := awsRestjson1_deserializeDocumentDeploymentProperties(&sv.DeploymentProperties, value); err != nil { + return err + } + + case "description": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Description to be of type string, got %T instead", value) + } + sv.Description = ptr.String(jtv) + } + + case "domainId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected DomainId to be of type string, got %T instead", value) + } + sv.DomainId = ptr.String(jtv) + } + + case "environmentActions": + if err := awsRestjson1_deserializeDocumentEnvironmentActionList(&sv.EnvironmentActions, value); err != nil { + return err + } + + case "environmentBlueprintId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EnvironmentBlueprintId to be of type string, got %T instead", value) + } + sv.EnvironmentBlueprintId = ptr.String(jtv) + } + + case "environmentProfileId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EnvironmentProfileId to be of type string, got %T instead", value) + } + sv.EnvironmentProfileId = ptr.String(jtv) + } + + case "glossaryTerms": + if err := awsRestjson1_deserializeDocumentGlossaryTerms(&sv.GlossaryTerms, value); err != nil { + return err + } + + case "id": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EnvironmentId to be of type string, got %T instead", value) + } + sv.Id = ptr.String(jtv) + } + + case "lastDeployment": + if err := awsRestjson1_deserializeDocumentDeployment(&sv.LastDeployment, value); err != nil { + return err + } + + case "name": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EnvironmentName to be of type string, got %T instead", value) + } + sv.Name = ptr.String(jtv) + } + + case "projectId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ProjectId to be of type string, got %T instead", value) + } + sv.ProjectId = ptr.String(jtv) + } + + case "provider": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Provider = ptr.String(jtv) + } + + case "provisionedResources": + if err := awsRestjson1_deserializeDocumentResourceList(&sv.ProvisionedResources, value); err != nil { + return err + } + + case "provisioningProperties": + if err := awsRestjson1_deserializeDocumentProvisioningProperties(&sv.ProvisioningProperties, value); err != nil { + return err + } + + case "status": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EnvironmentStatus to be of type string, got %T instead", value) + } + sv.Status = types.EnvironmentStatus(jtv) + } + + case "updatedAt": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) + } + t, err := smithytime.ParseDateTime(jtv) + if err != nil { + return err + } + sv.UpdatedAt = ptr.Time(t) + } + + case "userParameters": + if err := awsRestjson1_deserializeDocumentCustomParameterList(&sv.UserParameters, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +type awsRestjson1_deserializeOpUpdateEnvironmentAction struct { +} + +func (*awsRestjson1_deserializeOpUpdateEnvironmentAction) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpUpdateEnvironmentAction) 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 + } + + 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, awsRestjson1_deserializeOpErrorUpdateEnvironmentAction(response, &metadata) + } + output := &UpdateEnvironmentActionOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + 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 + } + + err = awsRestjson1_deserializeOpDocumentUpdateEnvironmentActionOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorUpdateEnvironmentAction(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 + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(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 err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("ConflictException", errorCode): + return awsRestjson1_deserializeErrorConflictException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("UnauthorizedException", errorCode): + return awsRestjson1_deserializeErrorUnauthorizedException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentUpdateEnvironmentActionOutput(v **UpdateEnvironmentActionOutput, 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 *UpdateEnvironmentActionOutput + if *v == nil { + sv = &UpdateEnvironmentActionOutput{} + } else { + sv = *v + } + for key, value := range shape { + switch key { case "description": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected Description to be of type string, got %T instead", value) + return fmt.Errorf("expected String to be of type string, got %T instead", value) } sv.Description = ptr.String(jtv) } @@ -20302,109 +21513,35 @@ func awsRestjson1_deserializeOpDocumentUpdateEnvironmentOutput(v **UpdateEnviron sv.DomainId = ptr.String(jtv) } - case "environmentActions": - if err := awsRestjson1_deserializeDocumentEnvironmentActionList(&sv.EnvironmentActions, value); err != nil { - return err - } - - case "environmentBlueprintId": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected EnvironmentBlueprintId to be of type string, got %T instead", value) - } - sv.EnvironmentBlueprintId = ptr.String(jtv) - } - - case "environmentProfileId": + case "environmentId": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected EnvironmentProfileId to be of type string, got %T instead", value) + return fmt.Errorf("expected EnvironmentId to be of type string, got %T instead", value) } - sv.EnvironmentProfileId = ptr.String(jtv) - } - - case "glossaryTerms": - if err := awsRestjson1_deserializeDocumentGlossaryTerms(&sv.GlossaryTerms, value); err != nil { - return err + sv.EnvironmentId = ptr.String(jtv) } case "id": if value != nil { jtv, ok := value.(string) if !ok { - return fmt.Errorf("expected EnvironmentId to be of type string, got %T instead", value) + return fmt.Errorf("expected EnvironmentActionId to be of type string, got %T instead", value) } sv.Id = ptr.String(jtv) } - case "lastDeployment": - if err := awsRestjson1_deserializeDocumentDeployment(&sv.LastDeployment, value); err != nil { - return err - } - case "name": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected EnvironmentName to be of type string, got %T instead", value) - } - sv.Name = ptr.String(jtv) - } - - case "projectId": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected ProjectId to be of type string, got %T instead", value) - } - sv.ProjectId = ptr.String(jtv) - } - - case "provider": if value != nil { jtv, ok := value.(string) if !ok { return fmt.Errorf("expected String to be of type string, got %T instead", value) } - sv.Provider = ptr.String(jtv) - } - - case "provisionedResources": - if err := awsRestjson1_deserializeDocumentResourceList(&sv.ProvisionedResources, value); err != nil { - return err - } - - case "provisioningProperties": - if err := awsRestjson1_deserializeDocumentProvisioningProperties(&sv.ProvisioningProperties, value); err != nil { - return err - } - - case "status": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected EnvironmentStatus to be of type string, got %T instead", value) - } - sv.Status = types.EnvironmentStatus(jtv) - } - - case "updatedAt": - if value != nil { - jtv, ok := value.(string) - if !ok { - return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value) - } - t, err := smithytime.ParseDateTime(jtv) - if err != nil { - return err - } - sv.UpdatedAt = ptr.Time(t) + sv.Name = ptr.String(jtv) } - case "userParameters": - if err := awsRestjson1_deserializeDocumentCustomParameterList(&sv.UserParameters, value); err != nil { + case "parameters": + if err := awsRestjson1_deserializeDocumentActionParameters(&sv.Parameters, value); err != nil { return err } @@ -22942,6 +24079,46 @@ func awsRestjson1_deserializeDocumentAccessDeniedException(v **types.AccessDenie return nil } +func awsRestjson1_deserializeDocumentActionParameters(v *types.ActionParameters, 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 uv types.ActionParameters +loop: + for key, value := range shape { + if value == nil { + continue + } + switch key { + case "awsConsoleLink": + var mv types.AwsConsoleLinkParameters + destAddr := &mv + if err := awsRestjson1_deserializeDocumentAwsConsoleLinkParameters(&destAddr, value); err != nil { + return err + } + mv = *destAddr + uv = &types.ActionParametersMemberAwsConsoleLink{Value: mv} + break loop + + default: + uv = &types.UnknownUnionMember{Tag: key} + break loop + + } + } + *v = uv + return nil +} + func awsRestjson1_deserializeDocumentApplicableAssetTypes(v *[]string, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -23832,6 +25009,46 @@ func awsRestjson1_deserializeDocumentAuthorizedPrincipalIdentifiers(v *[]string, return nil } +func awsRestjson1_deserializeDocumentAwsConsoleLinkParameters(v **types.AwsConsoleLinkParameters, 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.AwsConsoleLinkParameters + if *v == nil { + sv = &types.AwsConsoleLinkParameters{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "uri": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Uri = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsRestjson1_deserializeDocumentBusinessNameGenerationConfiguration(v **types.BusinessNameGenerationConfiguration, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -25513,29 +26730,110 @@ func awsRestjson1_deserializeDocumentEnvironmentActionList(v *[]types.Configurab return nil } - shape, ok := value.([]interface{}) - if !ok { - return fmt.Errorf("unexpected JSON type %v", value) - } + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []types.ConfigurableEnvironmentAction + if *v == nil { + cv = []types.ConfigurableEnvironmentAction{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.ConfigurableEnvironmentAction + destAddr := &col + if err := awsRestjson1_deserializeDocumentConfigurableEnvironmentAction(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsRestjson1_deserializeDocumentEnvironmentActionSummary(v **types.EnvironmentActionSummary, 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.EnvironmentActionSummary + if *v == nil { + sv = &types.EnvironmentActionSummary{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "description": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Description = ptr.String(jtv) + } + + case "domainId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected DomainId to be of type string, got %T instead", value) + } + sv.DomainId = ptr.String(jtv) + } + + case "environmentId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EnvironmentId to be of type string, got %T instead", value) + } + sv.EnvironmentId = ptr.String(jtv) + } + + case "id": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EnvironmentActionId to be of type string, got %T instead", value) + } + sv.Id = ptr.String(jtv) + } + + case "name": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Name = ptr.String(jtv) + } - var cv []types.ConfigurableEnvironmentAction - if *v == nil { - cv = []types.ConfigurableEnvironmentAction{} - } else { - cv = *v - } + case "parameters": + if err := awsRestjson1_deserializeDocumentActionParameters(&sv.Parameters, value); err != nil { + return err + } - for _, value := range shape { - var col types.ConfigurableEnvironmentAction - destAddr := &col - if err := awsRestjson1_deserializeDocumentConfigurableEnvironmentAction(&destAddr, value); err != nil { - return err - } - col = *destAddr - cv = append(cv, col) + default: + _, _ = key, value + } } - *v = cv + *v = sv return nil } @@ -27100,6 +28398,42 @@ func awsRestjson1_deserializeDocumentGlueRunConfigurationOutput(v **types.GlueRu return nil } +func awsRestjson1_deserializeDocumentGlueSelfGrantStatusOutput(v **types.GlueSelfGrantStatusOutput, 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.GlueSelfGrantStatusOutput + if *v == nil { + sv = &types.GlueSelfGrantStatusOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "selfGrantStatusDetails": + if err := awsRestjson1_deserializeDocumentSelfGrantStatusDetails(&sv.SelfGrantStatusDetails, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsRestjson1_deserializeDocumentGrantedEntity(v *types.GrantedEntity, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -27444,6 +28778,40 @@ func awsRestjson1_deserializeDocumentInternalServerException(v **types.InternalS return nil } +func awsRestjson1_deserializeDocumentListEnvironmentActionSummaries(v *[]types.EnvironmentActionSummary, 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.EnvironmentActionSummary + if *v == nil { + cv = []types.EnvironmentActionSummary{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.EnvironmentActionSummary + destAddr := &col + if err := awsRestjson1_deserializeDocumentEnvironmentActionSummary(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocumentListingItem(v *types.ListingItem, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -28634,6 +30002,42 @@ func awsRestjson1_deserializeDocumentRedshiftRunConfigurationOutput(v **types.Re return nil } +func awsRestjson1_deserializeDocumentRedshiftSelfGrantStatusOutput(v **types.RedshiftSelfGrantStatusOutput, 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.RedshiftSelfGrantStatusOutput + if *v == nil { + sv = &types.RedshiftSelfGrantStatusOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "selfGrantStatusDetails": + if err := awsRestjson1_deserializeDocumentSelfGrantStatusDetails(&sv.SelfGrantStatusDetails, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsRestjson1_deserializeDocumentRedshiftServerlessStorage(v **types.RedshiftServerlessStorage, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -29424,6 +30828,157 @@ func awsRestjson1_deserializeDocumentSearchTypesResultItems(v *[]types.SearchTyp return nil } +func awsRestjson1_deserializeDocumentSelfGrantStatusDetail(v **types.SelfGrantStatusDetail, 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.SelfGrantStatusDetail + if *v == nil { + sv = &types.SelfGrantStatusDetail{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "databaseName": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.DatabaseName = ptr.String(jtv) + } + + case "failureCause": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.FailureCause = ptr.String(jtv) + } + + case "schemaName": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.SchemaName = ptr.String(jtv) + } + + case "status": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected SelfGrantStatus to be of type string, got %T instead", value) + } + sv.Status = types.SelfGrantStatus(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentSelfGrantStatusDetails(v *[]types.SelfGrantStatusDetail, 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.SelfGrantStatusDetail + if *v == nil { + cv = []types.SelfGrantStatusDetail{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.SelfGrantStatusDetail + destAddr := &col + if err := awsRestjson1_deserializeDocumentSelfGrantStatusDetail(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsRestjson1_deserializeDocumentSelfGrantStatusOutput(v *types.SelfGrantStatusOutput, 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 uv types.SelfGrantStatusOutput +loop: + for key, value := range shape { + if value == nil { + continue + } + switch key { + case "glueSelfGrantStatus": + var mv types.GlueSelfGrantStatusOutput + destAddr := &mv + if err := awsRestjson1_deserializeDocumentGlueSelfGrantStatusOutput(&destAddr, value); err != nil { + return err + } + mv = *destAddr + uv = &types.SelfGrantStatusOutputMemberGlueSelfGrantStatus{Value: mv} + break loop + + case "redshiftSelfGrantStatus": + var mv types.RedshiftSelfGrantStatusOutput + destAddr := &mv + if err := awsRestjson1_deserializeDocumentRedshiftSelfGrantStatusOutput(&destAddr, value); err != nil { + return err + } + mv = *destAddr + uv = &types.SelfGrantStatusOutputMemberRedshiftSelfGrantStatus{Value: mv} + break loop + + default: + uv = &types.UnknownUnionMember{Tag: key} + break loop + + } + } + *v = uv + return nil +} + func awsRestjson1_deserializeDocumentServiceQuotaExceededException(v **types.ServiceQuotaExceededException, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/datazone/generated.json b/service/datazone/generated.json index 4ca316bf38e..aa49de14bc2 100644 --- a/service/datazone/generated.json +++ b/service/datazone/generated.json @@ -10,6 +10,7 @@ "api_client_test.go", "api_op_AcceptPredictions.go", "api_op_AcceptSubscriptionRequest.go", + "api_op_AssociateEnvironmentRole.go", "api_op_CancelMetadataGenerationRun.go", "api_op_CancelSubscription.go", "api_op_CreateAsset.go", @@ -18,6 +19,7 @@ "api_op_CreateDataSource.go", "api_op_CreateDomain.go", "api_op_CreateEnvironment.go", + "api_op_CreateEnvironmentAction.go", "api_op_CreateEnvironmentProfile.go", "api_op_CreateFormType.go", "api_op_CreateGlossary.go", @@ -35,6 +37,7 @@ "api_op_DeleteDataSource.go", "api_op_DeleteDomain.go", "api_op_DeleteEnvironment.go", + "api_op_DeleteEnvironmentAction.go", "api_op_DeleteEnvironmentBlueprintConfiguration.go", "api_op_DeleteEnvironmentProfile.go", "api_op_DeleteFormType.go", @@ -47,12 +50,14 @@ "api_op_DeleteSubscriptionRequest.go", "api_op_DeleteSubscriptionTarget.go", "api_op_DeleteTimeSeriesDataPoints.go", + "api_op_DisassociateEnvironmentRole.go", "api_op_GetAsset.go", "api_op_GetAssetType.go", "api_op_GetDataSource.go", "api_op_GetDataSourceRun.go", "api_op_GetDomain.go", "api_op_GetEnvironment.go", + "api_op_GetEnvironmentAction.go", "api_op_GetEnvironmentBlueprint.go", "api_op_GetEnvironmentBlueprintConfiguration.go", "api_op_GetEnvironmentProfile.go", @@ -75,6 +80,7 @@ "api_op_ListDataSourceRuns.go", "api_op_ListDataSources.go", "api_op_ListDomains.go", + "api_op_ListEnvironmentActions.go", "api_op_ListEnvironmentBlueprintConfigurations.go", "api_op_ListEnvironmentBlueprints.go", "api_op_ListEnvironmentProfiles.go", @@ -106,6 +112,7 @@ "api_op_UpdateDataSource.go", "api_op_UpdateDomain.go", "api_op_UpdateEnvironment.go", + "api_op_UpdateEnvironmentAction.go", "api_op_UpdateEnvironmentProfile.go", "api_op_UpdateGlossary.go", "api_op_UpdateGlossaryTerm.go", diff --git a/service/datazone/serializers.go b/service/datazone/serializers.go index 077fbbe9b83..89da84eba5d 100644 --- a/service/datazone/serializers.go +++ b/service/datazone/serializers.go @@ -228,6 +228,89 @@ func awsRestjson1_serializeOpDocumentAcceptSubscriptionRequestInput(v *AcceptSub return nil } +type awsRestjson1_serializeOpAssociateEnvironmentRole struct { +} + +func (*awsRestjson1_serializeOpAssociateEnvironmentRole) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpAssociateEnvironmentRole) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + 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.(*AssociateEnvironmentRoleInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/roles/{environmentRoleArn}") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "PUT" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsAssociateEnvironmentRoleInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsAssociateEnvironmentRoleInput(v *AssociateEnvironmentRoleInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.DomainIdentifier == nil || len(*v.DomainIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member domainIdentifier must not be empty")} + } + if v.DomainIdentifier != nil { + if err := encoder.SetURI("domainIdentifier").String(*v.DomainIdentifier); err != nil { + return err + } + } + + if v.EnvironmentIdentifier == nil || len(*v.EnvironmentIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member environmentIdentifier must not be empty")} + } + if v.EnvironmentIdentifier != nil { + if err := encoder.SetURI("environmentIdentifier").String(*v.EnvironmentIdentifier); err != nil { + return err + } + } + + if v.EnvironmentRoleArn == nil || len(*v.EnvironmentRoleArn) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member environmentRoleArn must not be empty")} + } + if v.EnvironmentRoleArn != nil { + if err := encoder.SetURI("environmentRoleArn").String(*v.EnvironmentRoleArn); err != nil { + return err + } + } + + return nil +} + type awsRestjson1_serializeOpCancelMetadataGenerationRun struct { } @@ -1098,6 +1181,21 @@ func awsRestjson1_serializeOpDocumentCreateEnvironmentInput(v *CreateEnvironment ok.String(*v.Description) } + if v.EnvironmentAccountIdentifier != nil { + ok := object.Key("environmentAccountIdentifier") + ok.String(*v.EnvironmentAccountIdentifier) + } + + if v.EnvironmentAccountRegion != nil { + ok := object.Key("environmentAccountRegion") + ok.String(*v.EnvironmentAccountRegion) + } + + if v.EnvironmentBlueprintIdentifier != nil { + ok := object.Key("environmentBlueprintIdentifier") + ok.String(*v.EnvironmentBlueprintIdentifier) + } + if v.EnvironmentProfileIdentifier != nil { ok := object.Key("environmentProfileIdentifier") ok.String(*v.EnvironmentProfileIdentifier) @@ -1130,6 +1228,115 @@ func awsRestjson1_serializeOpDocumentCreateEnvironmentInput(v *CreateEnvironment return nil } +type awsRestjson1_serializeOpCreateEnvironmentAction struct { +} + +func (*awsRestjson1_serializeOpCreateEnvironmentAction) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpCreateEnvironmentAction) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + 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.(*CreateEnvironmentActionInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/actions") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "POST" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsCreateEnvironmentActionInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + restEncoder.SetHeader("Content-Type").String("application/json") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsRestjson1_serializeOpDocumentCreateEnvironmentActionInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsCreateEnvironmentActionInput(v *CreateEnvironmentActionInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.DomainIdentifier == nil || len(*v.DomainIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member domainIdentifier must not be empty")} + } + if v.DomainIdentifier != nil { + if err := encoder.SetURI("domainIdentifier").String(*v.DomainIdentifier); err != nil { + return err + } + } + + if v.EnvironmentIdentifier == nil || len(*v.EnvironmentIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member environmentIdentifier must not be empty")} + } + if v.EnvironmentIdentifier != nil { + if err := encoder.SetURI("environmentIdentifier").String(*v.EnvironmentIdentifier); err != nil { + return err + } + } + + return nil +} + +func awsRestjson1_serializeOpDocumentCreateEnvironmentActionInput(v *CreateEnvironmentActionInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Description != nil { + ok := object.Key("description") + ok.String(*v.Description) + } + + if v.Name != nil { + ok := object.Key("name") + ok.String(*v.Name) + } + + if v.Parameters != nil { + ok := object.Key("parameters") + if err := awsRestjson1_serializeDocumentActionParameters(v.Parameters, ok); err != nil { + return err + } + } + + return nil +} + type awsRestjson1_serializeOpCreateEnvironmentProfile struct { } @@ -2671,6 +2878,10 @@ func awsRestjson1_serializeOpHttpBindingsDeleteDataSourceInput(v *DeleteDataSour } } + if v.RetainPermissionsOnRevokeFailure != nil { + encoder.SetQuery("retainPermissionsOnRevokeFailure").Boolean(*v.RetainPermissionsOnRevokeFailure) + } + return nil } @@ -2821,6 +3032,89 @@ func awsRestjson1_serializeOpHttpBindingsDeleteEnvironmentInput(v *DeleteEnviron return nil } +type awsRestjson1_serializeOpDeleteEnvironmentAction struct { +} + +func (*awsRestjson1_serializeOpDeleteEnvironmentAction) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpDeleteEnvironmentAction) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + 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.(*DeleteEnvironmentActionInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/actions/{identifier}") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "DELETE" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsDeleteEnvironmentActionInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsDeleteEnvironmentActionInput(v *DeleteEnvironmentActionInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.DomainIdentifier == nil || len(*v.DomainIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member domainIdentifier must not be empty")} + } + if v.DomainIdentifier != nil { + if err := encoder.SetURI("domainIdentifier").String(*v.DomainIdentifier); err != nil { + return err + } + } + + if v.EnvironmentIdentifier == nil || len(*v.EnvironmentIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member environmentIdentifier must not be empty")} + } + if v.EnvironmentIdentifier != nil { + if err := encoder.SetURI("environmentIdentifier").String(*v.EnvironmentIdentifier); err != nil { + return err + } + } + + if v.Identifier == nil || len(*v.Identifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member identifier must not be empty")} + } + if v.Identifier != nil { + if err := encoder.SetURI("identifier").String(*v.Identifier); err != nil { + return err + } + } + + return nil +} + type awsRestjson1_serializeOpDeleteEnvironmentBlueprintConfiguration struct { } @@ -3764,6 +4058,89 @@ func awsRestjson1_serializeOpHttpBindingsDeleteTimeSeriesDataPointsInput(v *Dele return nil } +type awsRestjson1_serializeOpDisassociateEnvironmentRole struct { +} + +func (*awsRestjson1_serializeOpDisassociateEnvironmentRole) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpDisassociateEnvironmentRole) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + 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.(*DisassociateEnvironmentRoleInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/roles/{environmentRoleArn}") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "DELETE" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsDisassociateEnvironmentRoleInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsDisassociateEnvironmentRoleInput(v *DisassociateEnvironmentRoleInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.DomainIdentifier == nil || len(*v.DomainIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member domainIdentifier must not be empty")} + } + if v.DomainIdentifier != nil { + if err := encoder.SetURI("domainIdentifier").String(*v.DomainIdentifier); err != nil { + return err + } + } + + if v.EnvironmentIdentifier == nil || len(*v.EnvironmentIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member environmentIdentifier must not be empty")} + } + if v.EnvironmentIdentifier != nil { + if err := encoder.SetURI("environmentIdentifier").String(*v.EnvironmentIdentifier); err != nil { + return err + } + } + + if v.EnvironmentRoleArn == nil || len(*v.EnvironmentRoleArn) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member environmentRoleArn must not be empty")} + } + if v.EnvironmentRoleArn != nil { + if err := encoder.SetURI("environmentRoleArn").String(*v.EnvironmentRoleArn); err != nil { + return err + } + } + + return nil +} + type awsRestjson1_serializeOpGetAsset struct { } @@ -4042,20 +4419,85 @@ func (m *awsRestjson1_serializeOpGetDataSourceRun) HandleSerialize(ctx context.C return next.HandleSerialize(ctx, in) } -func awsRestjson1_serializeOpHttpBindingsGetDataSourceRunInput(v *GetDataSourceRunInput, encoder *httpbinding.Encoder) error { +func awsRestjson1_serializeOpHttpBindingsGetDataSourceRunInput(v *GetDataSourceRunInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.DomainIdentifier == nil || len(*v.DomainIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member domainIdentifier must not be empty")} + } + if v.DomainIdentifier != nil { + if err := encoder.SetURI("domainIdentifier").String(*v.DomainIdentifier); err != nil { + return err + } + } + + if v.Identifier == nil || len(*v.Identifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member identifier must not be empty")} + } + if v.Identifier != nil { + if err := encoder.SetURI("identifier").String(*v.Identifier); err != nil { + return err + } + } + + return nil +} + +type awsRestjson1_serializeOpGetDomain struct { +} + +func (*awsRestjson1_serializeOpGetDomain) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpGetDomain) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + 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.(*GetDomainInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/v2/domains/{identifier}") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "GET" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsGetDomainInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsGetDomainInput(v *GetDomainInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } - if v.DomainIdentifier == nil || len(*v.DomainIdentifier) == 0 { - return &smithy.SerializationError{Err: fmt.Errorf("input member domainIdentifier must not be empty")} - } - if v.DomainIdentifier != nil { - if err := encoder.SetURI("domainIdentifier").String(*v.DomainIdentifier); err != nil { - return err - } - } - if v.Identifier == nil || len(*v.Identifier) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member identifier must not be empty")} } @@ -4068,14 +4510,14 @@ func awsRestjson1_serializeOpHttpBindingsGetDataSourceRunInput(v *GetDataSourceR return nil } -type awsRestjson1_serializeOpGetDomain struct { +type awsRestjson1_serializeOpGetEnvironment struct { } -func (*awsRestjson1_serializeOpGetDomain) ID() string { +func (*awsRestjson1_serializeOpGetEnvironment) ID() string { return "OperationSerializer" } -func (m *awsRestjson1_serializeOpGetDomain) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( +func (m *awsRestjson1_serializeOpGetEnvironment) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) @@ -4083,13 +4525,13 @@ func (m *awsRestjson1_serializeOpGetDomain) HandleSerialize(ctx context.Context, return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } - input, ok := in.Parameters.(*GetDomainInput) + input, ok := in.Parameters.(*GetEnvironmentInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } - opPath, opQuery := httpbinding.SplitURI("/v2/domains/{identifier}") + opPath, opQuery := httpbinding.SplitURI("/v2/domains/{domainIdentifier}/environments/{identifier}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" @@ -4105,7 +4547,7 @@ func (m *awsRestjson1_serializeOpGetDomain) HandleSerialize(ctx context.Context, return out, metadata, &smithy.SerializationError{Err: err} } - if err := awsRestjson1_serializeOpHttpBindingsGetDomainInput(input, restEncoder); err != nil { + if err := awsRestjson1_serializeOpHttpBindingsGetEnvironmentInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } @@ -4116,11 +4558,20 @@ func (m *awsRestjson1_serializeOpGetDomain) HandleSerialize(ctx context.Context, return next.HandleSerialize(ctx, in) } -func awsRestjson1_serializeOpHttpBindingsGetDomainInput(v *GetDomainInput, encoder *httpbinding.Encoder) error { +func awsRestjson1_serializeOpHttpBindingsGetEnvironmentInput(v *GetEnvironmentInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } + if v.DomainIdentifier == nil || len(*v.DomainIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member domainIdentifier must not be empty")} + } + if v.DomainIdentifier != nil { + if err := encoder.SetURI("domainIdentifier").String(*v.DomainIdentifier); err != nil { + return err + } + } + if v.Identifier == nil || len(*v.Identifier) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member identifier must not be empty")} } @@ -4133,14 +4584,14 @@ func awsRestjson1_serializeOpHttpBindingsGetDomainInput(v *GetDomainInput, encod return nil } -type awsRestjson1_serializeOpGetEnvironment struct { +type awsRestjson1_serializeOpGetEnvironmentAction struct { } -func (*awsRestjson1_serializeOpGetEnvironment) ID() string { +func (*awsRestjson1_serializeOpGetEnvironmentAction) ID() string { return "OperationSerializer" } -func (m *awsRestjson1_serializeOpGetEnvironment) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( +func (m *awsRestjson1_serializeOpGetEnvironmentAction) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( out middleware.SerializeOutput, metadata middleware.Metadata, err error, ) { request, ok := in.Request.(*smithyhttp.Request) @@ -4148,13 +4599,13 @@ func (m *awsRestjson1_serializeOpGetEnvironment) HandleSerialize(ctx context.Con return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} } - input, ok := in.Parameters.(*GetEnvironmentInput) + input, ok := in.Parameters.(*GetEnvironmentActionInput) _ = input if !ok { return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} } - opPath, opQuery := httpbinding.SplitURI("/v2/domains/{domainIdentifier}/environments/{identifier}") + opPath, opQuery := httpbinding.SplitURI("/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/actions/{identifier}") request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) request.Method = "GET" @@ -4170,7 +4621,7 @@ func (m *awsRestjson1_serializeOpGetEnvironment) HandleSerialize(ctx context.Con return out, metadata, &smithy.SerializationError{Err: err} } - if err := awsRestjson1_serializeOpHttpBindingsGetEnvironmentInput(input, restEncoder); err != nil { + if err := awsRestjson1_serializeOpHttpBindingsGetEnvironmentActionInput(input, restEncoder); err != nil { return out, metadata, &smithy.SerializationError{Err: err} } @@ -4181,7 +4632,7 @@ func (m *awsRestjson1_serializeOpGetEnvironment) HandleSerialize(ctx context.Con return next.HandleSerialize(ctx, in) } -func awsRestjson1_serializeOpHttpBindingsGetEnvironmentInput(v *GetEnvironmentInput, encoder *httpbinding.Encoder) error { +func awsRestjson1_serializeOpHttpBindingsGetEnvironmentActionInput(v *GetEnvironmentActionInput, encoder *httpbinding.Encoder) error { if v == nil { return fmt.Errorf("unsupported serialization of nil %T", v) } @@ -4195,6 +4646,15 @@ func awsRestjson1_serializeOpHttpBindingsGetEnvironmentInput(v *GetEnvironmentIn } } + if v.EnvironmentIdentifier == nil || len(*v.EnvironmentIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member environmentIdentifier must not be empty")} + } + if v.EnvironmentIdentifier != nil { + if err := encoder.SetURI("environmentIdentifier").String(*v.EnvironmentIdentifier); err != nil { + return err + } + } + if v.Identifier == nil || len(*v.Identifier) == 0 { return &smithy.SerializationError{Err: fmt.Errorf("input member identifier must not be empty")} } @@ -5914,6 +6374,88 @@ func awsRestjson1_serializeOpHttpBindingsListDomainsInput(v *ListDomainsInput, e return nil } +type awsRestjson1_serializeOpListEnvironmentActions struct { +} + +func (*awsRestjson1_serializeOpListEnvironmentActions) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpListEnvironmentActions) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + 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.(*ListEnvironmentActionsInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/actions") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "GET" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsListEnvironmentActionsInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsListEnvironmentActionsInput(v *ListEnvironmentActionsInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.DomainIdentifier == nil || len(*v.DomainIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member domainIdentifier must not be empty")} + } + if v.DomainIdentifier != nil { + if err := encoder.SetURI("domainIdentifier").String(*v.DomainIdentifier); err != nil { + return err + } + } + + if v.EnvironmentIdentifier == nil || len(*v.EnvironmentIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member environmentIdentifier must not be empty")} + } + if v.EnvironmentIdentifier != nil { + if err := encoder.SetURI("environmentIdentifier").String(*v.EnvironmentIdentifier); err != nil { + return err + } + } + + if v.MaxResults != nil { + encoder.SetQuery("maxResults").Integer(*v.MaxResults) + } + + if v.NextToken != nil { + encoder.SetQuery("nextToken").String(*v.NextToken) + } + + return nil +} + type awsRestjson1_serializeOpListEnvironmentBlueprintConfigurations struct { } @@ -8798,6 +9340,11 @@ func awsRestjson1_serializeOpDocumentUpdateDataSourceInput(v *UpdateDataSourceIn } } + if v.RetainPermissionsOnRevokeFailure != nil { + ok := object.Key("retainPermissionsOnRevokeFailure") + ok.Boolean(*v.RetainPermissionsOnRevokeFailure) + } + if v.Schedule != nil { ok := object.Key("schedule") if err := awsRestjson1_serializeDocumentScheduleConfiguration(v.Schedule, ok); err != nil { @@ -9026,6 +9573,124 @@ func awsRestjson1_serializeOpDocumentUpdateEnvironmentInput(v *UpdateEnvironment return nil } +type awsRestjson1_serializeOpUpdateEnvironmentAction struct { +} + +func (*awsRestjson1_serializeOpUpdateEnvironmentAction) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpUpdateEnvironmentAction) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + 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.(*UpdateEnvironmentActionInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/v2/domains/{domainIdentifier}/environments/{environmentIdentifier}/actions/{identifier}") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "PATCH" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsUpdateEnvironmentActionInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + restEncoder.SetHeader("Content-Type").String("application/json") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsRestjson1_serializeOpDocumentUpdateEnvironmentActionInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsUpdateEnvironmentActionInput(v *UpdateEnvironmentActionInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.DomainIdentifier == nil || len(*v.DomainIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member domainIdentifier must not be empty")} + } + if v.DomainIdentifier != nil { + if err := encoder.SetURI("domainIdentifier").String(*v.DomainIdentifier); err != nil { + return err + } + } + + if v.EnvironmentIdentifier == nil || len(*v.EnvironmentIdentifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member environmentIdentifier must not be empty")} + } + if v.EnvironmentIdentifier != nil { + if err := encoder.SetURI("environmentIdentifier").String(*v.EnvironmentIdentifier); err != nil { + return err + } + } + + if v.Identifier == nil || len(*v.Identifier) == 0 { + return &smithy.SerializationError{Err: fmt.Errorf("input member identifier must not be empty")} + } + if v.Identifier != nil { + if err := encoder.SetURI("identifier").String(*v.Identifier); err != nil { + return err + } + } + + return nil +} + +func awsRestjson1_serializeOpDocumentUpdateEnvironmentActionInput(v *UpdateEnvironmentActionInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Description != nil { + ok := object.Key("description") + ok.String(*v.Description) + } + + if v.Name != nil { + ok := object.Key("name") + ok.String(*v.Name) + } + + if v.Parameters != nil { + ok := object.Key("parameters") + if err := awsRestjson1_serializeDocumentActionParameters(v.Parameters, ok); err != nil { + return err + } + } + + return nil +} + type awsRestjson1_serializeOpUpdateEnvironmentProfile struct { } @@ -10106,6 +10771,24 @@ func awsRestjson1_serializeDocumentAcceptRule(v *types.AcceptRule, value smithyj return nil } +func awsRestjson1_serializeDocumentActionParameters(v types.ActionParameters, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + switch uv := v.(type) { + case *types.ActionParametersMemberAwsConsoleLink: + av := object.Key("awsConsoleLink") + if err := awsRestjson1_serializeDocumentAwsConsoleLinkParameters(&uv.Value, av); err != nil { + return err + } + + default: + return fmt.Errorf("attempted to serialize unknown member type %T for union %T", uv, v) + + } + return nil +} + func awsRestjson1_serializeDocumentApplicableAssetTypes(v []string, value smithyjson.Value) error { array := value.Array() defer array.Close() @@ -10158,6 +10841,18 @@ func awsRestjson1_serializeDocumentAuthorizedPrincipalIdentifiers(v []string, va return nil } +func awsRestjson1_serializeDocumentAwsConsoleLinkParameters(v *types.AwsConsoleLinkParameters, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Uri != nil { + ok := object.Key("uri") + ok.String(*v.Uri) + } + + return nil +} + func awsRestjson1_serializeDocumentBusinessNameGenerationConfiguration(v *types.BusinessNameGenerationConfiguration, value smithyjson.Value) error { object := value.Object() defer object.Close() diff --git a/service/datazone/snapshot/api_op_AssociateEnvironmentRole.go.snap b/service/datazone/snapshot/api_op_AssociateEnvironmentRole.go.snap new file mode 100644 index 00000000000..481dcb52df4 --- /dev/null +++ b/service/datazone/snapshot/api_op_AssociateEnvironmentRole.go.snap @@ -0,0 +1,36 @@ +AssociateEnvironmentRole + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/datazone/snapshot/api_op_CreateEnvironmentAction.go.snap b/service/datazone/snapshot/api_op_CreateEnvironmentAction.go.snap new file mode 100644 index 00000000000..15a479c78fd --- /dev/null +++ b/service/datazone/snapshot/api_op_CreateEnvironmentAction.go.snap @@ -0,0 +1,36 @@ +CreateEnvironmentAction + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/datazone/snapshot/api_op_DeleteEnvironmentAction.go.snap b/service/datazone/snapshot/api_op_DeleteEnvironmentAction.go.snap new file mode 100644 index 00000000000..9b1fa6e3cac --- /dev/null +++ b/service/datazone/snapshot/api_op_DeleteEnvironmentAction.go.snap @@ -0,0 +1,36 @@ +DeleteEnvironmentAction + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/datazone/snapshot/api_op_DisassociateEnvironmentRole.go.snap b/service/datazone/snapshot/api_op_DisassociateEnvironmentRole.go.snap new file mode 100644 index 00000000000..c2e40845f31 --- /dev/null +++ b/service/datazone/snapshot/api_op_DisassociateEnvironmentRole.go.snap @@ -0,0 +1,36 @@ +DisassociateEnvironmentRole + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/datazone/snapshot/api_op_GetEnvironmentAction.go.snap b/service/datazone/snapshot/api_op_GetEnvironmentAction.go.snap new file mode 100644 index 00000000000..ac606a2adc3 --- /dev/null +++ b/service/datazone/snapshot/api_op_GetEnvironmentAction.go.snap @@ -0,0 +1,36 @@ +GetEnvironmentAction + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/datazone/snapshot/api_op_ListEnvironmentActions.go.snap b/service/datazone/snapshot/api_op_ListEnvironmentActions.go.snap new file mode 100644 index 00000000000..e89ad4cb0ad --- /dev/null +++ b/service/datazone/snapshot/api_op_ListEnvironmentActions.go.snap @@ -0,0 +1,36 @@ +ListEnvironmentActions + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/datazone/snapshot/api_op_UpdateEnvironmentAction.go.snap b/service/datazone/snapshot/api_op_UpdateEnvironmentAction.go.snap new file mode 100644 index 00000000000..5541721c427 --- /dev/null +++ b/service/datazone/snapshot/api_op_UpdateEnvironmentAction.go.snap @@ -0,0 +1,36 @@ +UpdateEnvironmentAction + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/datazone/snapshot_test.go b/service/datazone/snapshot_test.go index ea317605427..1b5f579e51b 100644 --- a/service/datazone/snapshot_test.go +++ b/service/datazone/snapshot_test.go @@ -86,6 +86,18 @@ func TestCheckSnapshot_AcceptSubscriptionRequest(t *testing.T) { } } +func TestCheckSnapshot_AssociateEnvironmentRole(t *testing.T) { + svc := New(Options{}) + _, err := svc.AssociateEnvironmentRole(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "AssociateEnvironmentRole") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_CancelMetadataGenerationRun(t *testing.T) { svc := New(Options{}) _, err := svc.CancelMetadataGenerationRun(context.Background(), nil, func(o *Options) { @@ -182,6 +194,18 @@ func TestCheckSnapshot_CreateEnvironment(t *testing.T) { } } +func TestCheckSnapshot_CreateEnvironmentAction(t *testing.T) { + svc := New(Options{}) + _, err := svc.CreateEnvironmentAction(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "CreateEnvironmentAction") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_CreateEnvironmentProfile(t *testing.T) { svc := New(Options{}) _, err := svc.CreateEnvironmentProfile(context.Background(), nil, func(o *Options) { @@ -386,6 +410,18 @@ func TestCheckSnapshot_DeleteEnvironment(t *testing.T) { } } +func TestCheckSnapshot_DeleteEnvironmentAction(t *testing.T) { + svc := New(Options{}) + _, err := svc.DeleteEnvironmentAction(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "DeleteEnvironmentAction") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_DeleteEnvironmentBlueprintConfiguration(t *testing.T) { svc := New(Options{}) _, err := svc.DeleteEnvironmentBlueprintConfiguration(context.Background(), nil, func(o *Options) { @@ -530,6 +566,18 @@ func TestCheckSnapshot_DeleteTimeSeriesDataPoints(t *testing.T) { } } +func TestCheckSnapshot_DisassociateEnvironmentRole(t *testing.T) { + svc := New(Options{}) + _, err := svc.DisassociateEnvironmentRole(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "DisassociateEnvironmentRole") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_GetAsset(t *testing.T) { svc := New(Options{}) _, err := svc.GetAsset(context.Background(), nil, func(o *Options) { @@ -602,6 +650,18 @@ func TestCheckSnapshot_GetEnvironment(t *testing.T) { } } +func TestCheckSnapshot_GetEnvironmentAction(t *testing.T) { + svc := New(Options{}) + _, err := svc.GetEnvironmentAction(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "GetEnvironmentAction") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_GetEnvironmentBlueprint(t *testing.T) { svc := New(Options{}) _, err := svc.GetEnvironmentBlueprint(context.Background(), nil, func(o *Options) { @@ -866,6 +926,18 @@ func TestCheckSnapshot_ListDomains(t *testing.T) { } } +func TestCheckSnapshot_ListEnvironmentActions(t *testing.T) { + svc := New(Options{}) + _, err := svc.ListEnvironmentActions(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "ListEnvironmentActions") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_ListEnvironmentBlueprintConfigurations(t *testing.T) { svc := New(Options{}) _, err := svc.ListEnvironmentBlueprintConfigurations(context.Background(), nil, func(o *Options) { @@ -1238,6 +1310,18 @@ func TestCheckSnapshot_UpdateEnvironment(t *testing.T) { } } +func TestCheckSnapshot_UpdateEnvironmentAction(t *testing.T) { + svc := New(Options{}) + _, err := svc.UpdateEnvironmentAction(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "UpdateEnvironmentAction") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_UpdateEnvironmentProfile(t *testing.T) { svc := New(Options{}) _, err := svc.UpdateEnvironmentProfile(context.Background(), nil, func(o *Options) { @@ -1369,6 +1453,18 @@ func TestUpdateSnapshot_AcceptSubscriptionRequest(t *testing.T) { } } +func TestUpdateSnapshot_AssociateEnvironmentRole(t *testing.T) { + svc := New(Options{}) + _, err := svc.AssociateEnvironmentRole(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "AssociateEnvironmentRole") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_CancelMetadataGenerationRun(t *testing.T) { svc := New(Options{}) _, err := svc.CancelMetadataGenerationRun(context.Background(), nil, func(o *Options) { @@ -1465,6 +1561,18 @@ func TestUpdateSnapshot_CreateEnvironment(t *testing.T) { } } +func TestUpdateSnapshot_CreateEnvironmentAction(t *testing.T) { + svc := New(Options{}) + _, err := svc.CreateEnvironmentAction(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "CreateEnvironmentAction") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_CreateEnvironmentProfile(t *testing.T) { svc := New(Options{}) _, err := svc.CreateEnvironmentProfile(context.Background(), nil, func(o *Options) { @@ -1669,6 +1777,18 @@ func TestUpdateSnapshot_DeleteEnvironment(t *testing.T) { } } +func TestUpdateSnapshot_DeleteEnvironmentAction(t *testing.T) { + svc := New(Options{}) + _, err := svc.DeleteEnvironmentAction(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "DeleteEnvironmentAction") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_DeleteEnvironmentBlueprintConfiguration(t *testing.T) { svc := New(Options{}) _, err := svc.DeleteEnvironmentBlueprintConfiguration(context.Background(), nil, func(o *Options) { @@ -1813,6 +1933,18 @@ func TestUpdateSnapshot_DeleteTimeSeriesDataPoints(t *testing.T) { } } +func TestUpdateSnapshot_DisassociateEnvironmentRole(t *testing.T) { + svc := New(Options{}) + _, err := svc.DisassociateEnvironmentRole(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "DisassociateEnvironmentRole") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_GetAsset(t *testing.T) { svc := New(Options{}) _, err := svc.GetAsset(context.Background(), nil, func(o *Options) { @@ -1885,6 +2017,18 @@ func TestUpdateSnapshot_GetEnvironment(t *testing.T) { } } +func TestUpdateSnapshot_GetEnvironmentAction(t *testing.T) { + svc := New(Options{}) + _, err := svc.GetEnvironmentAction(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "GetEnvironmentAction") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_GetEnvironmentBlueprint(t *testing.T) { svc := New(Options{}) _, err := svc.GetEnvironmentBlueprint(context.Background(), nil, func(o *Options) { @@ -2149,6 +2293,18 @@ func TestUpdateSnapshot_ListDomains(t *testing.T) { } } +func TestUpdateSnapshot_ListEnvironmentActions(t *testing.T) { + svc := New(Options{}) + _, err := svc.ListEnvironmentActions(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "ListEnvironmentActions") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_ListEnvironmentBlueprintConfigurations(t *testing.T) { svc := New(Options{}) _, err := svc.ListEnvironmentBlueprintConfigurations(context.Background(), nil, func(o *Options) { @@ -2521,6 +2677,18 @@ func TestUpdateSnapshot_UpdateEnvironment(t *testing.T) { } } +func TestUpdateSnapshot_UpdateEnvironmentAction(t *testing.T) { + svc := New(Options{}) + _, err := svc.UpdateEnvironmentAction(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "UpdateEnvironmentAction") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_UpdateEnvironmentProfile(t *testing.T) { svc := New(Options{}) _, err := svc.UpdateEnvironmentProfile(context.Background(), nil, func(o *Options) { diff --git a/service/datazone/types/enums.go b/service/datazone/types/enums.go index 237c1c89c63..c5ec589d0ad 100644 --- a/service/datazone/types/enums.go +++ b/service/datazone/types/enums.go @@ -699,6 +699,35 @@ func (SearchOutputAdditionalAttribute) Values() []SearchOutputAdditionalAttribut } } +type SelfGrantStatus string + +// Enum values for SelfGrantStatus +const ( + SelfGrantStatusGrantPending SelfGrantStatus = "GRANT_PENDING" + SelfGrantStatusRevokePending SelfGrantStatus = "REVOKE_PENDING" + SelfGrantStatusGrantInProgress SelfGrantStatus = "GRANT_IN_PROGRESS" + SelfGrantStatusRevokeInProgress SelfGrantStatus = "REVOKE_IN_PROGRESS" + SelfGrantStatusGranted SelfGrantStatus = "GRANTED" + SelfGrantStatusGrantFailed SelfGrantStatus = "GRANT_FAILED" + SelfGrantStatusRevokeFailed SelfGrantStatus = "REVOKE_FAILED" +) + +// Values returns all known values for SelfGrantStatus. 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 (SelfGrantStatus) Values() []SelfGrantStatus { + return []SelfGrantStatus{ + "GRANT_PENDING", + "REVOKE_PENDING", + "GRANT_IN_PROGRESS", + "REVOKE_IN_PROGRESS", + "GRANTED", + "GRANT_FAILED", + "REVOKE_FAILED", + } +} + type SortFieldProject string // Enum values for SortFieldProject diff --git a/service/datazone/types/types.go b/service/datazone/types/types.go index 587018a3e7d..d7972bafa74 100644 --- a/service/datazone/types/types.go +++ b/service/datazone/types/types.go @@ -40,6 +40,24 @@ type AcceptRule struct { noSmithyDocumentSerde } +// The parameters of the environment action. +// +// The following types satisfy this interface: +// +// ActionParametersMemberAwsConsoleLink +type ActionParameters interface { + isActionParameters() +} + +// The console link specified as part of the environment action. +type ActionParametersMemberAwsConsoleLink struct { + Value AwsConsoleLinkParameters + + noSmithyDocumentSerde +} + +func (*ActionParametersMemberAwsConsoleLink) isActionParameters() {} + // A Amazon DataZone inventory asset. type AssetItem struct { @@ -318,6 +336,15 @@ type AssetTypeItem struct { noSmithyDocumentSerde } +// The parameters of the console link specified as part of the environment action. +type AwsConsoleLinkParameters struct { + + // The URI of the console link specified as part of the environment action. + Uri *string + + noSmithyDocumentSerde +} + // The configuration of the business name generation. type BusinessNameGenerationConfiguration struct { @@ -789,6 +816,42 @@ type DomainSummary struct { noSmithyDocumentSerde } +// The details about the specified action configured for an environment. For +// example, the details of the specified console links for an analytics tool that +// is available in this environment. +type EnvironmentActionSummary struct { + + // The Amazon DataZone domain ID of the environment action. + // + // This member is required. + DomainId *string + + // The environment ID of the environment action. + // + // This member is required. + EnvironmentId *string + + // The ID of the environment action. + // + // This member is required. + Id *string + + // The name of the environment action. + // + // This member is required. + Name *string + + // The parameters of the environment action. + // + // This member is required. + Parameters ActionParameters + + // The environment action description. + Description *string + + noSmithyDocumentSerde +} + // The configuration details of an environment blueprint. type EnvironmentBlueprintConfigurationItem struct { @@ -951,12 +1014,6 @@ type EnvironmentSummary struct { // This member is required. DomainId *string - // The identifier of the environment profile with which the environment was - // created. - // - // This member is required. - EnvironmentProfileId *string - // The name of the environment. // // This member is required. @@ -985,6 +1042,10 @@ type EnvironmentSummary struct { // The description of the environment. Description *string + // The identifier of the environment profile with which the environment was + // created. + EnvironmentProfileId *string + // The identifier of the environment. Id *string @@ -1352,6 +1413,17 @@ type GlueRunConfigurationOutput struct { noSmithyDocumentSerde } +// The details of the self granting status. +type GlueSelfGrantStatusOutput struct { + + // The details for the self granting status for a Glue data source. + // + // This member is required. + SelfGrantStatusDetails []SelfGrantStatusDetail + + noSmithyDocumentSerde +} + // The details of a listing for which a subscription is granted. // // The following types satisfy this interface: @@ -1894,6 +1966,17 @@ type RedshiftRunConfigurationOutput struct { noSmithyDocumentSerde } +// The details for the self granting status for an Amazon Redshift data source. +type RedshiftSelfGrantStatusOutput struct { + + // The details for the self granting status for an Amazon Redshift data source. + // + // This member is required. + SelfGrantStatusDetails []SelfGrantStatusDetail + + noSmithyDocumentSerde +} + // The details of the Amazon Redshift Serverless workgroup storage. type RedshiftServerlessStorage struct { @@ -2157,6 +2240,56 @@ type SearchTypesResultItemMemberFormTypeItem struct { func (*SearchTypesResultItemMemberFormTypeItem) isSearchTypesResultItem() {} +// The details for the self granting status. +type SelfGrantStatusDetail struct { + + // The name of the database used for the data source. + // + // This member is required. + DatabaseName *string + + // The self granting status of the data source. + // + // This member is required. + Status SelfGrantStatus + + // The reason for why the operation failed. + FailureCause *string + + // The name of the schema used in the data source. + SchemaName *string + + noSmithyDocumentSerde +} + +// The details for the self granting status for a data source. +// +// The following types satisfy this interface: +// +// SelfGrantStatusOutputMemberGlueSelfGrantStatus +// SelfGrantStatusOutputMemberRedshiftSelfGrantStatus +type SelfGrantStatusOutput interface { + isSelfGrantStatusOutput() +} + +// The details for the self granting status for a Glue data source. +type SelfGrantStatusOutputMemberGlueSelfGrantStatus struct { + Value GlueSelfGrantStatusOutput + + noSmithyDocumentSerde +} + +func (*SelfGrantStatusOutputMemberGlueSelfGrantStatus) isSelfGrantStatusOutput() {} + +// The details for the self granting status for an Amazon Redshift data source. +type SelfGrantStatusOutputMemberRedshiftSelfGrantStatus struct { + Value RedshiftSelfGrantStatusOutput + + noSmithyDocumentSerde +} + +func (*SelfGrantStatusOutputMemberRedshiftSelfGrantStatus) isSelfGrantStatusOutput() {} + // The single sign-on details in Amazon DataZone. type SingleSignOn struct { @@ -2828,6 +2961,7 @@ type UnknownUnionMember struct { noSmithyDocumentSerde } +func (*UnknownUnionMember) isActionParameters() {} func (*UnknownUnionMember) isDataSourceConfigurationInput() {} func (*UnknownUnionMember) isDataSourceConfigurationOutput() {} func (*UnknownUnionMember) isFilterClause() {} @@ -2842,6 +2976,7 @@ func (*UnknownUnionMember) isRedshiftStorage() {} func (*UnknownUnionMember) isSearchInventoryResultItem() {} func (*UnknownUnionMember) isSearchResultItem() {} func (*UnknownUnionMember) isSearchTypesResultItem() {} +func (*UnknownUnionMember) isSelfGrantStatusOutput() {} func (*UnknownUnionMember) isSubscribedListingItem() {} func (*UnknownUnionMember) isSubscribedPrincipal() {} func (*UnknownUnionMember) isSubscribedPrincipalInput() {} diff --git a/service/datazone/types/types_exported_test.go b/service/datazone/types/types_exported_test.go index ed1d87b7525..b97e48d1e5c 100644 --- a/service/datazone/types/types_exported_test.go +++ b/service/datazone/types/types_exported_test.go @@ -7,6 +7,24 @@ import ( "github.com/aws/aws-sdk-go-v2/service/datazone/types" ) +func ExampleActionParameters_outputUsage() { + var union types.ActionParameters + // type switches can be used to check the union value + switch v := union.(type) { + case *types.ActionParametersMemberAwsConsoleLink: + _ = v.Value // Value is types.AwsConsoleLinkParameters + + case *types.UnknownUnionMember: + fmt.Println("unknown tag:", v.Tag) + + default: + fmt.Println("union is nil or unknown type") + + } +} + +var _ *types.AwsConsoleLinkParameters + func ExampleDataSourceConfigurationInput_outputUsage() { var union types.DataSourceConfigurationInput // type switches can be used to check the union value @@ -301,6 +319,28 @@ func ExampleSearchTypesResultItem_outputUsage() { var _ *types.FormTypeData var _ *types.AssetTypeItem +func ExampleSelfGrantStatusOutput_outputUsage() { + var union types.SelfGrantStatusOutput + // type switches can be used to check the union value + switch v := union.(type) { + case *types.SelfGrantStatusOutputMemberGlueSelfGrantStatus: + _ = v.Value // Value is types.GlueSelfGrantStatusOutput + + case *types.SelfGrantStatusOutputMemberRedshiftSelfGrantStatus: + _ = v.Value // Value is types.RedshiftSelfGrantStatusOutput + + case *types.UnknownUnionMember: + fmt.Println("unknown tag:", v.Tag) + + default: + fmt.Println("union is nil or unknown type") + + } +} + +var _ *types.RedshiftSelfGrantStatusOutput +var _ *types.GlueSelfGrantStatusOutput + func ExampleSubscribedListingItem_outputUsage() { var union types.SubscribedListingItem // type switches can be used to check the union value diff --git a/service/datazone/validators.go b/service/datazone/validators.go index 8b7308497a4..4a46065b8fe 100644 --- a/service/datazone/validators.go +++ b/service/datazone/validators.go @@ -50,6 +50,26 @@ func (m *validateOpAcceptSubscriptionRequest) HandleInitialize(ctx context.Conte return next.HandleInitialize(ctx, in) } +type validateOpAssociateEnvironmentRole struct { +} + +func (*validateOpAssociateEnvironmentRole) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpAssociateEnvironmentRole) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*AssociateEnvironmentRoleInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpAssociateEnvironmentRoleInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpCancelMetadataGenerationRun struct { } @@ -190,6 +210,26 @@ func (m *validateOpCreateDomain) HandleInitialize(ctx context.Context, in middle return next.HandleInitialize(ctx, in) } +type validateOpCreateEnvironmentAction struct { +} + +func (*validateOpCreateEnvironmentAction) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpCreateEnvironmentAction) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*CreateEnvironmentActionInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpCreateEnvironmentActionInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpCreateEnvironment struct { } @@ -530,6 +570,26 @@ func (m *validateOpDeleteDomain) HandleInitialize(ctx context.Context, in middle return next.HandleInitialize(ctx, in) } +type validateOpDeleteEnvironmentAction struct { +} + +func (*validateOpDeleteEnvironmentAction) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpDeleteEnvironmentAction) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*DeleteEnvironmentActionInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpDeleteEnvironmentActionInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpDeleteEnvironmentBlueprintConfiguration struct { } @@ -790,6 +850,26 @@ func (m *validateOpDeleteTimeSeriesDataPoints) HandleInitialize(ctx context.Cont return next.HandleInitialize(ctx, in) } +type validateOpDisassociateEnvironmentRole struct { +} + +func (*validateOpDisassociateEnvironmentRole) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpDisassociateEnvironmentRole) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*DisassociateEnvironmentRoleInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpDisassociateEnvironmentRoleInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpGetAsset struct { } @@ -890,6 +970,26 @@ func (m *validateOpGetDomain) HandleInitialize(ctx context.Context, in middlewar return next.HandleInitialize(ctx, in) } +type validateOpGetEnvironmentAction struct { +} + +func (*validateOpGetEnvironmentAction) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpGetEnvironmentAction) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*GetEnvironmentActionInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpGetEnvironmentActionInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpGetEnvironmentBlueprintConfiguration struct { } @@ -1330,6 +1430,26 @@ func (m *validateOpListDataSources) HandleInitialize(ctx context.Context, in mid return next.HandleInitialize(ctx, in) } +type validateOpListEnvironmentActions struct { +} + +func (*validateOpListEnvironmentActions) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpListEnvironmentActions) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*ListEnvironmentActionsInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpListEnvironmentActionsInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpListEnvironmentBlueprintConfigurations struct { } @@ -1930,6 +2050,26 @@ func (m *validateOpUpdateDomain) HandleInitialize(ctx context.Context, in middle return next.HandleInitialize(ctx, in) } +type validateOpUpdateEnvironmentAction struct { +} + +func (*validateOpUpdateEnvironmentAction) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpUpdateEnvironmentAction) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*UpdateEnvironmentActionInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpUpdateEnvironmentActionInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpUpdateEnvironment struct { } @@ -2138,6 +2278,10 @@ func addOpAcceptSubscriptionRequestValidationMiddleware(stack *middleware.Stack) return stack.Initialize.Add(&validateOpAcceptSubscriptionRequest{}, middleware.After) } +func addOpAssociateEnvironmentRoleValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpAssociateEnvironmentRole{}, middleware.After) +} + func addOpCancelMetadataGenerationRunValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpCancelMetadataGenerationRun{}, middleware.After) } @@ -2166,6 +2310,10 @@ func addOpCreateDomainValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpCreateDomain{}, middleware.After) } +func addOpCreateEnvironmentActionValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpCreateEnvironmentAction{}, middleware.After) +} + func addOpCreateEnvironmentValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpCreateEnvironment{}, middleware.After) } @@ -2234,6 +2382,10 @@ func addOpDeleteDomainValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDeleteDomain{}, middleware.After) } +func addOpDeleteEnvironmentActionValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpDeleteEnvironmentAction{}, middleware.After) +} + func addOpDeleteEnvironmentBlueprintConfigurationValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDeleteEnvironmentBlueprintConfiguration{}, middleware.After) } @@ -2286,6 +2438,10 @@ func addOpDeleteTimeSeriesDataPointsValidationMiddleware(stack *middleware.Stack return stack.Initialize.Add(&validateOpDeleteTimeSeriesDataPoints{}, middleware.After) } +func addOpDisassociateEnvironmentRoleValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpDisassociateEnvironmentRole{}, middleware.After) +} + func addOpGetAssetValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpGetAsset{}, middleware.After) } @@ -2306,6 +2462,10 @@ func addOpGetDomainValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpGetDomain{}, middleware.After) } +func addOpGetEnvironmentActionValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpGetEnvironmentAction{}, middleware.After) +} + func addOpGetEnvironmentBlueprintConfigurationValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpGetEnvironmentBlueprintConfiguration{}, middleware.After) } @@ -2394,6 +2554,10 @@ func addOpListDataSourcesValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpListDataSources{}, middleware.After) } +func addOpListEnvironmentActionsValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpListEnvironmentActions{}, middleware.After) +} + func addOpListEnvironmentBlueprintConfigurationsValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpListEnvironmentBlueprintConfigurations{}, middleware.After) } @@ -2514,6 +2678,10 @@ func addOpUpdateDomainValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpUpdateDomain{}, middleware.After) } +func addOpUpdateEnvironmentActionValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpUpdateEnvironmentAction{}, middleware.After) +} + func addOpUpdateEnvironmentValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpUpdateEnvironment{}, middleware.After) } @@ -3250,6 +3418,27 @@ func validateOpAcceptSubscriptionRequestInput(v *AcceptSubscriptionRequestInput) } } +func validateOpAssociateEnvironmentRoleInput(v *AssociateEnvironmentRoleInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "AssociateEnvironmentRoleInput"} + if v.DomainIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("DomainIdentifier")) + } + if v.EnvironmentIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("EnvironmentIdentifier")) + } + if v.EnvironmentRoleArn == nil { + invalidParams.Add(smithy.NewErrParamRequired("EnvironmentRoleArn")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpCancelMetadataGenerationRunInput(v *CancelMetadataGenerationRunInput) error { if v == nil { return nil @@ -3424,6 +3613,30 @@ func validateOpCreateDomainInput(v *CreateDomainInput) error { } } +func validateOpCreateEnvironmentActionInput(v *CreateEnvironmentActionInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "CreateEnvironmentActionInput"} + if v.DomainIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("DomainIdentifier")) + } + if v.EnvironmentIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("EnvironmentIdentifier")) + } + if v.Name == nil { + invalidParams.Add(smithy.NewErrParamRequired("Name")) + } + if v.Parameters == nil { + invalidParams.Add(smithy.NewErrParamRequired("Parameters")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpCreateEnvironmentInput(v *CreateEnvironmentInput) error { if v == nil { return nil @@ -3810,6 +4023,27 @@ func validateOpDeleteDomainInput(v *DeleteDomainInput) error { } } +func validateOpDeleteEnvironmentActionInput(v *DeleteEnvironmentActionInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DeleteEnvironmentActionInput"} + if v.DomainIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("DomainIdentifier")) + } + if v.EnvironmentIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("EnvironmentIdentifier")) + } + if v.Identifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("Identifier")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpDeleteEnvironmentBlueprintConfigurationInput(v *DeleteEnvironmentBlueprintConfigurationInput) error { if v == nil { return nil @@ -4056,6 +4290,27 @@ func validateOpDeleteTimeSeriesDataPointsInput(v *DeleteTimeSeriesDataPointsInpu } } +func validateOpDisassociateEnvironmentRoleInput(v *DisassociateEnvironmentRoleInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "DisassociateEnvironmentRoleInput"} + if v.DomainIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("DomainIdentifier")) + } + if v.EnvironmentIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("EnvironmentIdentifier")) + } + if v.EnvironmentRoleArn == nil { + invalidParams.Add(smithy.NewErrParamRequired("EnvironmentRoleArn")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpGetAssetInput(v *GetAssetInput) error { if v == nil { return nil @@ -4143,6 +4398,27 @@ func validateOpGetDomainInput(v *GetDomainInput) error { } } +func validateOpGetEnvironmentActionInput(v *GetEnvironmentActionInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "GetEnvironmentActionInput"} + if v.DomainIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("DomainIdentifier")) + } + if v.EnvironmentIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("EnvironmentIdentifier")) + } + if v.Identifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("Identifier")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpGetEnvironmentBlueprintConfigurationInput(v *GetEnvironmentBlueprintConfigurationInput) error { if v == nil { return nil @@ -4548,6 +4824,24 @@ func validateOpListDataSourcesInput(v *ListDataSourcesInput) error { } } +func validateOpListEnvironmentActionsInput(v *ListEnvironmentActionsInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "ListEnvironmentActionsInput"} + if v.DomainIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("DomainIdentifier")) + } + if v.EnvironmentIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("EnvironmentIdentifier")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpListEnvironmentBlueprintConfigurationsInput(v *ListEnvironmentBlueprintConfigurationsInput) error { if v == nil { return nil @@ -5147,6 +5441,27 @@ func validateOpUpdateDomainInput(v *UpdateDomainInput) error { } } +func validateOpUpdateEnvironmentActionInput(v *UpdateEnvironmentActionInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "UpdateEnvironmentActionInput"} + if v.DomainIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("DomainIdentifier")) + } + if v.EnvironmentIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("EnvironmentIdentifier")) + } + if v.Identifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("Identifier")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpUpdateEnvironmentInput(v *UpdateEnvironmentInput) error { if v == nil { return nil diff --git a/service/ec2/api_op_AcceptAddressTransfer.go b/service/ec2/api_op_AcceptAddressTransfer.go index 6838cc80064..5624498c732 100644 --- a/service/ec2/api_op_AcceptAddressTransfer.go +++ b/service/ec2/api_op_AcceptAddressTransfer.go @@ -12,7 +12,7 @@ import ( ) // Accepts an Elastic IP address transfer. For more information, see [Accept a transferred Elastic IP address] in the -// Amazon Virtual Private Cloud User Guide. +// Amazon VPC User Guide. // // [Accept a transferred Elastic IP address]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#using-instance-addressing-eips-transfer-accept func (c *Client) AcceptAddressTransfer(ctx context.Context, params *AcceptAddressTransferInput, optFns ...func(*Options)) (*AcceptAddressTransferOutput, error) { diff --git a/service/ec2/api_op_AllocateAddress.go b/service/ec2/api_op_AllocateAddress.go index c3bb3eafbbb..473bf3dbac2 100644 --- a/service/ec2/api_op_AllocateAddress.go +++ b/service/ec2/api_op_AllocateAddress.go @@ -20,14 +20,14 @@ import ( // Services or from an address pool created from a public IPv4 address range that // you have brought to Amazon Web Services for use with your Amazon Web Services // resources using bring your own IP addresses (BYOIP). For more information, see [Bring Your Own IP Addresses (BYOIP)] -// in the Amazon Elastic Compute Cloud User Guide. +// in the Amazon EC2 User Guide. // // If you release an Elastic IP address, you might be able to recover it. You // cannot recover an Elastic IP address that you released after it is allocated to // another Amazon Web Services account. To attempt to recover an Elastic IP address // that you released, specify it in this operation. // -// For more information, see [Elastic IP Addresses] in the Amazon Elastic Compute Cloud User Guide. +// For more information, see [Elastic IP Addresses] in the Amazon EC2 User Guide. // // You can allocate a carrier IP address which is a public IP address from a // telecommunication carrier, to a network interface which resides in a subnet in a @@ -73,10 +73,6 @@ type AllocateAddressInput struct { // which Amazon Web Services advertises IP addresses. Use this parameter to limit // the IP address to this location. IP addresses cannot move between network border // groups. - // - // Use [DescribeAvailabilityZones] to view the network border groups. - // - // [DescribeAvailabilityZones]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html NetworkBorderGroup *string // The ID of an address pool that you own. Use this parameter to let Amazon EC2 diff --git a/service/ec2/api_op_AllocateHosts.go b/service/ec2/api_op_AllocateHosts.go index cc768e22147..d5226b646d6 100644 --- a/service/ec2/api_op_AllocateHosts.go +++ b/service/ec2/api_op_AllocateHosts.go @@ -54,7 +54,7 @@ type AllocateHostsInput struct { // launches that specify its unique host ID. For more information, see [Understanding auto-placement and affinity]in the // Amazon EC2 User Guide. // - // Default: on + // Default: off // // [Understanding auto-placement and affinity]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/how-dedicated-hosts-work.html#dedicated-hosts-understanding AutoPlacement types.AutoPlacement diff --git a/service/ec2/api_op_AllocateIpamPoolCidr.go b/service/ec2/api_op_AllocateIpamPoolCidr.go index d6626b61e59..df40f646e09 100644 --- a/service/ec2/api_op_AllocateIpamPoolCidr.go +++ b/service/ec2/api_op_AllocateIpamPoolCidr.go @@ -62,9 +62,9 @@ type AllocateIpamPoolCidrInput struct { Cidr *string // A unique, case-sensitive identifier that you provide to ensure the idempotency - // of the request. For more information, see [Ensuring Idempotency]. + // of the request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the allocation. diff --git a/service/ec2/api_op_AssignIpv6Addresses.go b/service/ec2/api_op_AssignIpv6Addresses.go index 0288d2f411e..f6982051a18 100644 --- a/service/ec2/api_op_AssignIpv6Addresses.go +++ b/service/ec2/api_op_AssignIpv6Addresses.go @@ -14,19 +14,16 @@ import ( // specify one or more specific IPv6 addresses, or you can specify the number of // IPv6 addresses to be automatically assigned from within the subnet's IPv6 CIDR // block range. You can assign as many IPv6 addresses to a network interface as you -// can assign private IPv4 addresses, and the limit varies per instance type. For -// information, see [IP Addresses Per Network Interface Per Instance Type]in the Amazon Elastic Compute Cloud User Guide. +// can assign private IPv4 addresses, and the limit varies per instance type. // // You must specify either the IPv6 addresses or the IPv6 address count in the // request. // // You can optionally use Prefix Delegation on the network interface. You must // specify either the IPV6 Prefix Delegation prefixes, or the IPv6 Prefix -// Delegation count. For information, see [Assigning prefixes to Amazon EC2 network interfaces]in the Amazon Elastic Compute Cloud User -// Guide. +// Delegation count. For information, see [Assigning prefixes to network interfaces]in the Amazon EC2 User Guide. // -// [Assigning prefixes to Amazon EC2 network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html -// [IP Addresses Per Network Interface Per Instance Type]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI +// [Assigning prefixes to network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html func (c *Client) AssignIpv6Addresses(ctx context.Context, params *AssignIpv6AddressesInput, optFns ...func(*Options)) (*AssignIpv6AddressesOutput, error) { if params == nil { params = &AssignIpv6AddressesInput{} diff --git a/service/ec2/api_op_AssignPrivateIpAddresses.go b/service/ec2/api_op_AssignPrivateIpAddresses.go index 83c49b8bc02..58f7d5cff20 100644 --- a/service/ec2/api_op_AssignPrivateIpAddresses.go +++ b/service/ec2/api_op_AssignPrivateIpAddresses.go @@ -17,9 +17,8 @@ import ( // You can specify one or more specific secondary IP addresses, or you can specify // the number of secondary IP addresses to be automatically assigned within the // subnet's CIDR block range. The number of secondary IP addresses that you can -// assign to an instance varies by instance type. For information about instance -// types, see [Instance Types]in the Amazon Elastic Compute Cloud User Guide. For more information -// about Elastic IP addresses, see [Elastic IP Addresses]in the Amazon Elastic Compute Cloud User Guide. +// assign to an instance varies by instance type. For more information about +// Elastic IP addresses, see [Elastic IP Addresses]in the Amazon EC2 User Guide. // // When you move a secondary private IP address to another network interface, any // Elastic IP address that is associated with the IP address is also moved. @@ -33,12 +32,10 @@ import ( // // You can optionally use Prefix Delegation on the network interface. You must // specify either the IPv4 Prefix Delegation prefixes, or the IPv4 Prefix -// Delegation count. For information, see [Assigning prefixes to Amazon EC2 network interfaces]in the Amazon Elastic Compute Cloud User -// Guide. +// Delegation count. For information, see [Assigning prefixes to network interfaces]in the Amazon EC2 User Guide. // -// [Assigning prefixes to Amazon EC2 network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html // [Elastic IP Addresses]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html -// [Instance Types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html +// [Assigning prefixes to network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html func (c *Client) AssignPrivateIpAddresses(ctx context.Context, params *AssignPrivateIpAddressesInput, optFns ...func(*Options)) (*AssignPrivateIpAddressesOutput, error) { if params == nil { params = &AssignPrivateIpAddressesInput{} diff --git a/service/ec2/api_op_AssignPrivateNatGatewayAddress.go b/service/ec2/api_op_AssignPrivateNatGatewayAddress.go index ac5eaca682c..1acc4edd342 100644 --- a/service/ec2/api_op_AssignPrivateNatGatewayAddress.go +++ b/service/ec2/api_op_AssignPrivateNatGatewayAddress.go @@ -11,8 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Assigns one or more private IPv4 addresses to a private NAT gateway. For more -// information, see [Work with NAT gateways]in the Amazon VPC User Guide. +// Assigns private IPv4 addresses to a private NAT gateway. For more information, +// see [Work with NAT gateways]in the Amazon VPC User Guide. // // [Work with NAT gateways]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-working-with func (c *Client) AssignPrivateNatGatewayAddress(ctx context.Context, params *AssignPrivateNatGatewayAddressInput, optFns ...func(*Options)) (*AssignPrivateNatGatewayAddressOutput, error) { diff --git a/service/ec2/api_op_AssociateClientVpnTargetNetwork.go b/service/ec2/api_op_AssociateClientVpnTargetNetwork.go index 1458f90421b..08dfeb60f49 100644 --- a/service/ec2/api_op_AssociateClientVpnTargetNetwork.go +++ b/service/ec2/api_op_AssociateClientVpnTargetNetwork.go @@ -49,9 +49,9 @@ type AssociateClientVpnTargetNetworkInput struct { SubnetId *string // Unique, case-sensitive identifier that you provide to ensure the idempotency of - // the request. For more information, see [How to ensure idempotency]. + // the request. For more information, see [Ensuring idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_AssociateDhcpOptions.go b/service/ec2/api_op_AssociateDhcpOptions.go index d3e3ff8b3af..50a6a40218b 100644 --- a/service/ec2/api_op_AssociateDhcpOptions.go +++ b/service/ec2/api_op_AssociateDhcpOptions.go @@ -19,9 +19,9 @@ import ( // a few hours, depending on how frequently the instance renews its DHCP lease. You // can explicitly renew the lease using the operating system on the instance. // -// For more information, see [DHCP options sets] in the Amazon VPC User Guide. +// For more information, see [DHCP option sets] in the Amazon VPC User Guide. // -// [DHCP options sets]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html +// [DHCP option sets]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html func (c *Client) AssociateDhcpOptions(ctx context.Context, params *AssociateDhcpOptionsInput, optFns ...func(*Options)) (*AssociateDhcpOptionsOutput, error) { if params == nil { params = &AssociateDhcpOptionsInput{} diff --git a/service/ec2/api_op_AssociateTrunkInterface.go b/service/ec2/api_op_AssociateTrunkInterface.go index 75c91704501..2f1a9097a61 100644 --- a/service/ec2/api_op_AssociateTrunkInterface.go +++ b/service/ec2/api_op_AssociateTrunkInterface.go @@ -13,11 +13,11 @@ import ( // Associates a branch network interface with a trunk network interface. // -// Before you create the association, run the [create-network-interface] command and set --interface-type to +// Before you create the association, use [CreateNetworkInterface] command and set the interface type to // trunk . You must also create a network interface for each branch network // interface that you want to associate with the trunk network interface. // -// [create-network-interface]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateNetworkInterface.html +// [CreateNetworkInterface]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateNetworkInterface.html func (c *Client) AssociateTrunkInterface(ctx context.Context, params *AssociateTrunkInterfaceInput, optFns ...func(*Options)) (*AssociateTrunkInterfaceOutput, error) { if params == nil { params = &AssociateTrunkInterfaceInput{} @@ -46,9 +46,9 @@ type AssociateTrunkInterfaceInput struct { TrunkInterfaceId *string // Unique, case-sensitive identifier that you provide to ensure the idempotency of - // the request. For more information, see [How to Ensure Idempotency]. + // the request. For more information, see [Ensuring idempotency]. // - // [How to Ensure Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without @@ -69,9 +69,9 @@ type AssociateTrunkInterfaceInput struct { type AssociateTrunkInterfaceOutput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of - // the request. For more information, see [How to Ensure Idempotency]. + // the request. For more information, see [Ensuring idempotency]. // - // [How to Ensure Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Information about the association between the trunk network interface and diff --git a/service/ec2/api_op_AttachVerifiedAccessTrustProvider.go b/service/ec2/api_op_AttachVerifiedAccessTrustProvider.go index 84497729402..5512f6c6e39 100644 --- a/service/ec2/api_op_AttachVerifiedAccessTrustProvider.go +++ b/service/ec2/api_op_AttachVerifiedAccessTrustProvider.go @@ -41,9 +41,9 @@ type AttachVerifiedAccessTrustProviderInput struct { VerifiedAccessTrustProviderId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_AuthorizeClientVpnIngress.go b/service/ec2/api_op_AuthorizeClientVpnIngress.go index 8befc76f69c..72dda7220c6 100644 --- a/service/ec2/api_op_AuthorizeClientVpnIngress.go +++ b/service/ec2/api_op_AuthorizeClientVpnIngress.go @@ -54,9 +54,9 @@ type AuthorizeClientVpnIngressInput struct { AuthorizeAllGroups *bool // Unique, case-sensitive identifier that you provide to ensure the idempotency of - // the request. For more information, see [How to ensure idempotency]. + // the request. For more information, see [Ensuring idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A brief description of the authorization rule. diff --git a/service/ec2/api_op_CancelReservedInstancesListing.go b/service/ec2/api_op_CancelReservedInstancesListing.go index 8b43e995420..922f0bdc0da 100644 --- a/service/ec2/api_op_CancelReservedInstancesListing.go +++ b/service/ec2/api_op_CancelReservedInstancesListing.go @@ -14,9 +14,9 @@ import ( // Cancels the specified Reserved Instance listing in the Reserved Instance // Marketplace. // -// For more information, see [Reserved Instance Marketplace] in the Amazon EC2 User Guide. +// For more information, see [Sell in the Reserved Instance Marketplace] in the Amazon EC2 User Guide. // -// [Reserved Instance Marketplace]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html +// [Sell in the Reserved Instance Marketplace]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html func (c *Client) CancelReservedInstancesListing(ctx context.Context, params *CancelReservedInstancesListingInput, optFns ...func(*Options)) (*CancelReservedInstancesListingOutput, error) { if params == nil { params = &CancelReservedInstancesListingInput{} diff --git a/service/ec2/api_op_CopyFpgaImage.go b/service/ec2/api_op_CopyFpgaImage.go index f6cbf879c08..84d51c37cca 100644 --- a/service/ec2/api_op_CopyFpgaImage.go +++ b/service/ec2/api_op_CopyFpgaImage.go @@ -41,7 +41,7 @@ type CopyFpgaImageInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [Ensuring idempotency]. // - // [Ensuring idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // The description for the new AFI. diff --git a/service/ec2/api_op_CopySnapshot.go b/service/ec2/api_op_CopySnapshot.go index 53607c7acf2..b949d6af2c4 100644 --- a/service/ec2/api_op_CopySnapshot.go +++ b/service/ec2/api_op_CopySnapshot.go @@ -23,10 +23,9 @@ import ( // When copying snapshots to a Region, copies of encrypted EBS snapshots remain // encrypted. Copies of unencrypted snapshots remain unencrypted, unless you enable // encryption for the snapshot copy operation. By default, encrypted snapshot -// copies use the default Key Management Service (KMS) KMS key; however, you can -// specify a different KMS key. To copy an encrypted snapshot that has been shared -// from another account, you must have permissions for the KMS key used to encrypt -// the snapshot. +// copies use the default KMS key; however, you can specify a different KMS key. To +// copy an encrypted snapshot that has been shared from another account, you must +// have permissions for the KMS key used to encrypt the snapshot. // // Snapshots copied to an Outpost are encrypted by default using the default // encryption key for the Region, or a different key that you specify in the @@ -96,9 +95,9 @@ type CopySnapshotInput struct { // [Amazon EBS encryption]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html Encrypted *bool - // The identifier of the Key Management Service (KMS) KMS key to use for Amazon - // EBS encryption. If this parameter is not specified, your KMS key for Amazon EBS - // is used. If KmsKeyId is specified, the encrypted state must be true . + // The identifier of the KMS key to use for Amazon EBS encryption. If this + // parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is + // specified, the encrypted state must be true . // // You can specify the KMS key using any of the following: // @@ -125,10 +124,9 @@ type CopySnapshotInput struct { // action, and include the SourceRegion , SourceSnapshotId , and DestinationRegion // parameters. The PresignedUrl must be signed using Amazon Web Services Signature // Version 4. Because EBS snapshots are stored in Amazon S3, the signing algorithm - // for this parameter uses the same logic that is described in [Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4)]in the Amazon - // Simple Storage Service API Reference. An invalid or improperly signed - // PresignedUrl will cause the copy operation to fail asynchronously, and the - // snapshot will move to an error state. + // for this parameter uses the same logic that is described in [Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4)]in the Amazon S3 + // API Reference. An invalid or improperly signed PresignedUrl will cause the copy + // operation to fail asynchronously, and the snapshot will move to an error state. // // [Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4)]: https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html // [Query requests]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html diff --git a/service/ec2/api_op_CreateCarrierGateway.go b/service/ec2/api_op_CreateCarrierGateway.go index 4192b0baa8c..5331533b99d 100644 --- a/service/ec2/api_op_CreateCarrierGateway.go +++ b/service/ec2/api_op_CreateCarrierGateway.go @@ -40,7 +40,7 @@ type CreateCarrierGatewayInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [How to ensure idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [How to ensure idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_CreateClientVpnEndpoint.go b/service/ec2/api_op_CreateClientVpnEndpoint.go index 877cb912346..ca0933569a0 100644 --- a/service/ec2/api_op_CreateClientVpnEndpoint.go +++ b/service/ec2/api_op_CreateClientVpnEndpoint.go @@ -77,9 +77,9 @@ type CreateClientVpnEndpointInput struct { ClientLoginBannerOptions *types.ClientLoginBannerOptions // Unique, case-sensitive identifier that you provide to ensure the idempotency of - // the request. For more information, see [How to ensure idempotency]. + // the request. For more information, see [Ensuring idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A brief description of the Client VPN endpoint. diff --git a/service/ec2/api_op_CreateClientVpnRoute.go b/service/ec2/api_op_CreateClientVpnRoute.go index 99c5259e536..f831948ecc2 100644 --- a/service/ec2/api_op_CreateClientVpnRoute.go +++ b/service/ec2/api_op_CreateClientVpnRoute.go @@ -60,9 +60,9 @@ type CreateClientVpnRouteInput struct { TargetVpcSubnetId *string // Unique, case-sensitive identifier that you provide to ensure the idempotency of - // the request. For more information, see [How to ensure idempotency]. + // the request. For more information, see [Ensuring idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A brief description of the route. diff --git a/service/ec2/api_op_CreateDhcpOptions.go b/service/ec2/api_op_CreateDhcpOptions.go index e5d5e4ded31..87ea1f5c345 100644 --- a/service/ec2/api_op_CreateDhcpOptions.go +++ b/service/ec2/api_op_CreateDhcpOptions.go @@ -16,7 +16,7 @@ import ( // existing and newly launched instances in the VPC use this set of DHCP options. // // The following are the individual DHCP options you can specify. For more -// information, see [DHCP options sets]in the Amazon VPC User Guide. +// information, see [DHCP option sets]in the Amazon VPC User Guide. // // - domain-name - If you're using AmazonProvidedDNS in us-east-1 , specify // ec2.internal . If you're using AmazonProvidedDNS in any other Region, specify @@ -53,9 +53,9 @@ import ( // increase the lease time and avoid frequent lease renewal requests. Lease renewal // typically occurs when half of the lease time has elapsed. // -// [DHCP options sets]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html +// [DHCP option sets]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html // -// [RFC 2132]: http://www.ietf.org/rfc/rfc2132.txt +// [RFC 2132]: https://www.ietf.org/rfc/rfc2132.txt func (c *Client) CreateDhcpOptions(ctx context.Context, params *CreateDhcpOptionsInput, optFns ...func(*Options)) (*CreateDhcpOptionsOutput, error) { if params == nil { params = &CreateDhcpOptionsInput{} diff --git a/service/ec2/api_op_CreateEgressOnlyInternetGateway.go b/service/ec2/api_op_CreateEgressOnlyInternetGateway.go index 767f687936f..cf59d1978f7 100644 --- a/service/ec2/api_op_CreateEgressOnlyInternetGateway.go +++ b/service/ec2/api_op_CreateEgressOnlyInternetGateway.go @@ -40,7 +40,7 @@ type CreateEgressOnlyInternetGatewayInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [Ensuring idempotency]. // - // [Ensuring idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_CreateFlowLogs.go b/service/ec2/api_op_CreateFlowLogs.go index 7d488b1967e..63c49c4553e 100644 --- a/service/ec2/api_op_CreateFlowLogs.go +++ b/service/ec2/api_op_CreateFlowLogs.go @@ -16,7 +16,7 @@ import ( // // Flow log data for a monitored network interface is recorded as flow log // records, which are log events consisting of fields that describe the traffic -// flow. For more information, see [Flow log records]in the Amazon Virtual Private Cloud User Guide. +// flow. For more information, see [Flow log records]in the Amazon VPC User Guide. // // When publishing to CloudWatch Logs, flow log records are published to a log // group, and each network interface has a unique log stream in the log group. When @@ -24,7 +24,7 @@ import ( // interfaces are published to a single log file object that is stored in the // specified bucket. // -// For more information, see [VPC Flow Logs] in the Amazon Virtual Private Cloud User Guide. +// For more information, see [VPC Flow Logs] in the Amazon VPC User Guide. // // [Flow log records]: https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html#flow-log-records // [VPC Flow Logs]: https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html @@ -62,7 +62,7 @@ type CreateFlowLogsInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [How to ensure idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [How to ensure idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // The ARN of the IAM role that allows Amazon EC2 to publish flow logs across @@ -141,7 +141,7 @@ type CreateFlowLogsInput struct { // // Default: 600 // - // [Nitro-based instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances + // [Nitro-based instance]: https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html MaxAggregationInterval *int32 // The tags to apply to the flow logs. diff --git a/service/ec2/api_op_CreateFpgaImage.go b/service/ec2/api_op_CreateFpgaImage.go index fb15450dfde..f32bbfdd429 100644 --- a/service/ec2/api_op_CreateFpgaImage.go +++ b/service/ec2/api_op_CreateFpgaImage.go @@ -47,7 +47,7 @@ type CreateFpgaImageInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [Ensuring Idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [Ensuring Idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the AFI. diff --git a/service/ec2/api_op_CreateIpam.go b/service/ec2/api_op_CreateIpam.go index 122f1fabb5f..425b24c597b 100644 --- a/service/ec2/api_op_CreateIpam.go +++ b/service/ec2/api_op_CreateIpam.go @@ -37,9 +37,9 @@ func (c *Client) CreateIpam(ctx context.Context, params *CreateIpamInput, optFns type CreateIpamInput struct { // A unique, case-sensitive identifier that you provide to ensure the idempotency - // of the request. For more information, see [Ensuring Idempotency]. + // of the request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the IPAM. diff --git a/service/ec2/api_op_CreateIpamPool.go b/service/ec2/api_op_CreateIpamPool.go index 15db15def48..dc926a3f251 100644 --- a/service/ec2/api_op_CreateIpamPool.go +++ b/service/ec2/api_op_CreateIpamPool.go @@ -90,9 +90,9 @@ type CreateIpamPoolInput struct { AwsService types.IpamPoolAwsService // A unique, case-sensitive identifier that you provide to ensure the idempotency - // of the request. For more information, see [Ensuring Idempotency]. + // of the request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the IPAM pool. diff --git a/service/ec2/api_op_CreateIpamScope.go b/service/ec2/api_op_CreateIpamScope.go index bb002254a75..98298af8d56 100644 --- a/service/ec2/api_op_CreateIpamScope.go +++ b/service/ec2/api_op_CreateIpamScope.go @@ -44,9 +44,9 @@ type CreateIpamScopeInput struct { IpamId *string // A unique, case-sensitive identifier that you provide to ensure the idempotency - // of the request. For more information, see [Ensuring Idempotency]. + // of the request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the scope you're creating. diff --git a/service/ec2/api_op_CreateLaunchTemplate.go b/service/ec2/api_op_CreateLaunchTemplate.go index 70d30b568ae..ea9c43329e8 100644 --- a/service/ec2/api_op_CreateLaunchTemplate.go +++ b/service/ec2/api_op_CreateLaunchTemplate.go @@ -16,12 +16,11 @@ import ( // A launch template contains the parameters to launch an instance. When you // launch an instance using RunInstances, you can specify a launch template instead of // providing the launch parameters in the request. For more information, see [Launch an instance from a launch template]in -// the Amazon Elastic Compute Cloud User Guide. +// the Amazon EC2 User Guide. // // To clone an existing launch template as the basis for a new launch template, // use the Amazon EC2 console. The API, SDKs, and CLI do not support cloning a -// template. For more information, see [Create a launch template from an existing launch template]in the Amazon Elastic Compute Cloud User -// Guide. +// template. For more information, see [Create a launch template from an existing launch template]in the Amazon EC2 User Guide. // // [Create a launch template from an existing launch template]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template-from-existing-launch-template // [Launch an instance from a launch template]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html diff --git a/service/ec2/api_op_CreateLaunchTemplateVersion.go b/service/ec2/api_op_CreateLaunchTemplateVersion.go index 671d3434b82..257c6c65a2f 100644 --- a/service/ec2/api_op_CreateLaunchTemplateVersion.go +++ b/service/ec2/api_op_CreateLaunchTemplateVersion.go @@ -23,7 +23,7 @@ import ( // modify it. Instead, you can create a new version of the launch template that // includes the changes that you require. // -// For more information, see [Modify a launch template (manage launch template versions)] in the Amazon Elastic Compute Cloud User Guide. +// For more information, see [Modify a launch template (manage launch template versions)] in the Amazon EC2 User Guide. // // [Modify a launch template (manage launch template versions)]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#manage-launch-template-versions func (c *Client) CreateLaunchTemplateVersion(ctx context.Context, params *CreateLaunchTemplateVersionInput, optFns ...func(*Options)) (*CreateLaunchTemplateVersionOutput, error) { @@ -76,7 +76,7 @@ type CreateLaunchTemplateVersionInput struct { // If true , and if a Systems Manager parameter is specified for ImageId , the AMI // ID is displayed in the response for imageID . For more information, see [Use a Systems Manager parameter instead of an AMI ID] in the - // Amazon Elastic Compute Cloud User Guide. + // Amazon EC2 User Guide. // // Default: false // diff --git a/service/ec2/api_op_CreateManagedPrefixList.go b/service/ec2/api_op_CreateManagedPrefixList.go index 53f3a4310c6..f2612b06c7f 100644 --- a/service/ec2/api_op_CreateManagedPrefixList.go +++ b/service/ec2/api_op_CreateManagedPrefixList.go @@ -51,11 +51,11 @@ type CreateManagedPrefixListInput struct { PrefixListName *string // Unique, case-sensitive identifier you provide to ensure the idempotency of the - // request. For more information, see [Ensuring Idempotency]. + // request. For more information, see [Ensuring idempotency]. // // Constraints: Up to 255 UTF-8 characters in length. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_CreateNatGateway.go b/service/ec2/api_op_CreateNatGateway.go index a7a2b54089f..e8e2b5e867f 100644 --- a/service/ec2/api_op_CreateNatGateway.go +++ b/service/ec2/api_op_CreateNatGateway.go @@ -72,7 +72,7 @@ type CreateNatGatewayInput struct { // // Constraint: Maximum 64 ASCII characters. // - // [Ensuring idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Indicates whether the NAT gateway supports public or private connectivity. The diff --git a/service/ec2/api_op_CreateNetworkAcl.go b/service/ec2/api_op_CreateNetworkAcl.go index 9ad6f9047eb..f4e785e15b7 100644 --- a/service/ec2/api_op_CreateNetworkAcl.go +++ b/service/ec2/api_op_CreateNetworkAcl.go @@ -42,7 +42,7 @@ type CreateNetworkAclInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [Ensuring idempotency]. // - // [Ensuring idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_CreateNetworkInsightsAccessScope.go b/service/ec2/api_op_CreateNetworkInsightsAccessScope.go index d7708208254..b0ebe5c9c3a 100644 --- a/service/ec2/api_op_CreateNetworkInsightsAccessScope.go +++ b/service/ec2/api_op_CreateNetworkInsightsAccessScope.go @@ -39,7 +39,7 @@ type CreateNetworkInsightsAccessScopeInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [How to ensure idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [How to ensure idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html // // This member is required. ClientToken *string diff --git a/service/ec2/api_op_CreateNetworkInsightsPath.go b/service/ec2/api_op_CreateNetworkInsightsPath.go index 130cb7b22bb..4b9c3d05dc6 100644 --- a/service/ec2/api_op_CreateNetworkInsightsPath.go +++ b/service/ec2/api_op_CreateNetworkInsightsPath.go @@ -38,7 +38,7 @@ type CreateNetworkInsightsPathInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [How to ensure idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [How to ensure idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html // // This member is required. ClientToken *string diff --git a/service/ec2/api_op_CreateNetworkInterface.go b/service/ec2/api_op_CreateNetworkInterface.go index 673c4f90897..f0e666bd6ff 100644 --- a/service/ec2/api_op_CreateNetworkInterface.go +++ b/service/ec2/api_op_CreateNetworkInterface.go @@ -14,14 +14,12 @@ import ( // Creates a network interface in the specified subnet. // // The number of IP addresses you can assign to a network interface varies by -// instance type. For more information, see [IP Addresses Per ENI Per Instance Type]in the Amazon Virtual Private Cloud -// User Guide. +// instance type. // -// For more information about network interfaces, see [Elastic network interfaces] in the Amazon Elastic -// Compute Cloud User Guide. +// For more information about network interfaces, see [Elastic network interfaces] in the Amazon EC2 User +// Guide. // // [Elastic network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html -// [IP Addresses Per ENI Per Instance Type]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI func (c *Client) CreateNetworkInterface(ctx context.Context, params *CreateNetworkInterfaceInput, optFns ...func(*Options)) (*CreateNetworkInterfaceOutput, error) { if params == nil { params = &CreateNetworkInterfaceInput{} @@ -45,9 +43,9 @@ type CreateNetworkInterfaceInput struct { SubnetId *string // Unique, case-sensitive identifier that you provide to ensure the idempotency of - // the request. For more information, see [Ensuring Idempotency]. + // the request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A connection tracking specification for the network interface. diff --git a/service/ec2/api_op_CreateReplaceRootVolumeTask.go b/service/ec2/api_op_CreateReplaceRootVolumeTask.go index a2ac3dea93b..d24ff7e01e6 100644 --- a/service/ec2/api_op_CreateReplaceRootVolumeTask.go +++ b/service/ec2/api_op_CreateReplaceRootVolumeTask.go @@ -16,7 +16,7 @@ import ( // a specific snapshot taken from the original root volume, or that is restored // from an AMI that has the same key characteristics as that of the instance. // -// For more information, see [Replace a root volume] in the Amazon Elastic Compute Cloud User Guide. +// For more information, see [Replace a root volume] in the Amazon EC2 User Guide. // // [Replace a root volume]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/replace-root.html func (c *Client) CreateReplaceRootVolumeTask(ctx context.Context, params *CreateReplaceRootVolumeTaskInput, optFns ...func(*Options)) (*CreateReplaceRootVolumeTaskOutput, error) { @@ -45,7 +45,7 @@ type CreateReplaceRootVolumeTaskInput struct { // request. If you do not specify a client token, a randomly generated token is // used for the request to ensure idempotency. For more information, see [Ensuring idempotency]. // - // [Ensuring idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Indicates whether to automatically delete the original root volume after the diff --git a/service/ec2/api_op_CreateReservedInstancesListing.go b/service/ec2/api_op_CreateReservedInstancesListing.go index c07b654639e..aa51b096fd1 100644 --- a/service/ec2/api_op_CreateReservedInstancesListing.go +++ b/service/ec2/api_op_CreateReservedInstancesListing.go @@ -32,9 +32,9 @@ import ( // view the details of your Standard Reserved Instance listing, you can use the DescribeReservedInstancesListings // operation. // -// For more information, see [Reserved Instance Marketplace] in the Amazon EC2 User Guide. +// For more information, see [Sell in the Reserved Instance Marketplace] in the Amazon EC2 User Guide. // -// [Reserved Instance Marketplace]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html +// [Sell in the Reserved Instance Marketplace]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html func (c *Client) CreateReservedInstancesListing(ctx context.Context, params *CreateReservedInstancesListingInput, optFns ...func(*Options)) (*CreateReservedInstancesListingOutput, error) { if params == nil { params = &CreateReservedInstancesListingInput{} diff --git a/service/ec2/api_op_CreateRouteTable.go b/service/ec2/api_op_CreateRouteTable.go index 8377809a7a4..b95b4d62303 100644 --- a/service/ec2/api_op_CreateRouteTable.go +++ b/service/ec2/api_op_CreateRouteTable.go @@ -42,7 +42,7 @@ type CreateRouteTableInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [Ensuring idempotency]. // - // [Ensuring idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_CreateSnapshot.go b/service/ec2/api_op_CreateSnapshot.go index 1d096c8a93f..1a19e78ffdd 100644 --- a/service/ec2/api_op_CreateSnapshot.go +++ b/service/ec2/api_op_CreateSnapshot.go @@ -44,13 +44,13 @@ import ( // protected. // // You can tag your snapshots during creation. For more information, see [Tag your Amazon EC2 resources] in the -// Amazon Elastic Compute Cloud User Guide. +// Amazon EC2 User Guide. // -// For more information, see [Amazon Elastic Block Store] and [Amazon EBS encryption] in the Amazon EBS User Guide. +// For more information, see [Amazon EBS] and [Amazon EBS encryption] in the Amazon EBS User Guide. // +// [Amazon EBS]: https://docs.aws.amazon.com/ebs/latest/userguide/what-is-ebs.html // [Amazon EBS encryption]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html // [Tag your Amazon EC2 resources]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html -// [Amazon Elastic Block Store]: https://docs.aws.amazon.com/ebs/latest/userguide/what-is-ebs.html func (c *Client) CreateSnapshot(ctx context.Context, params *CreateSnapshotInput, optFns ...func(*Options)) (*CreateSnapshotOutput, error) { if params == nil { params = &CreateSnapshotInput{} @@ -124,8 +124,8 @@ type CreateSnapshotOutput struct { // Indicates whether the snapshot is encrypted. Encrypted *bool - // The Amazon Resource Name (ARN) of the Key Management Service (KMS) KMS key that - // was used to protect the volume encryption key for the parent volume. + // The Amazon Resource Name (ARN) of the KMS key that was used to protect the + // volume encryption key for the parent volume. KmsKeyId *string // The ARN of the Outpost on which the snapshot is stored. For more information, @@ -163,9 +163,9 @@ type CreateSnapshotOutput struct { State types.SnapshotState // Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy - // operation fails (for example, if the proper Key Management Service (KMS) - // permissions are not obtained) this field displays error state details to help - // you diagnose why the error occurred. This parameter is only returned by DescribeSnapshots. + // operation fails (for example, if the proper KMS permissions are not obtained) + // this field displays error state details to help you diagnose why the error + // occurred. This parameter is only returned by DescribeSnapshots. StateMessage *string // The storage tier in which the snapshot is stored. standard indicates that the diff --git a/service/ec2/api_op_CreateSpotDatafeedSubscription.go b/service/ec2/api_op_CreateSpotDatafeedSubscription.go index dd1d3d317ed..ea5bf8d8884 100644 --- a/service/ec2/api_op_CreateSpotDatafeedSubscription.go +++ b/service/ec2/api_op_CreateSpotDatafeedSubscription.go @@ -13,7 +13,7 @@ import ( // Creates a data feed for Spot Instances, enabling you to view Spot Instance // usage logs. You can create one data feed per Amazon Web Services account. For -// more information, see [Spot Instance data feed]in the Amazon EC2 User Guide for Linux Instances. +// more information, see [Spot Instance data feed]in the Amazon EC2 User Guide. // // [Spot Instance data feed]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-data-feeds.html func (c *Client) CreateSpotDatafeedSubscription(ctx context.Context, params *CreateSpotDatafeedSubscriptionInput, optFns ...func(*Options)) (*CreateSpotDatafeedSubscriptionOutput, error) { diff --git a/service/ec2/api_op_CreateSubnet.go b/service/ec2/api_op_CreateSubnet.go index 0313a300e40..aaa0949381d 100644 --- a/service/ec2/api_op_CreateSubnet.go +++ b/service/ec2/api_op_CreateSubnet.go @@ -68,12 +68,12 @@ type CreateSubnetInput struct { // // To create a subnet in a Local Zone, set this value to the Local Zone ID, for // example us-west-2-lax-1a . For information about the Regions that support Local - // Zones, see [Local Zones locations]. + // Zones, see [Available Local Zones]. // // To create a subnet in an Outpost, set this value to the Availability Zone for // the Outpost and specify the Outpost ARN. // - // [Local Zones locations]: http://aws.amazon.com/about-aws/global-infrastructure/localzones/locations/ + // [Available Local Zones]: https://docs.aws.amazon.com/local-zones/latest/ug/available-local-zones.html AvailabilityZone *string // The AZ ID or the Local Zone ID of the subnet. diff --git a/service/ec2/api_op_CreateSubnetCidrReservation.go b/service/ec2/api_op_CreateSubnetCidrReservation.go index c5e9fae6139..f6bb970e52e 100644 --- a/service/ec2/api_op_CreateSubnetCidrReservation.go +++ b/service/ec2/api_op_CreateSubnetCidrReservation.go @@ -11,9 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates a subnet CIDR reservation. For more information, see [Subnet CIDR reservations] in the Amazon -// Virtual Private Cloud User Guide and [Assign prefixes to network interfaces]in the Amazon Elastic Compute Cloud User -// Guide. +// Creates a subnet CIDR reservation. For more information, see [Subnet CIDR reservations] in the Amazon VPC +// User Guide and [Assign prefixes to network interfaces]in the Amazon EC2 User Guide. // // [Subnet CIDR reservations]: https://docs.aws.amazon.com/vpc/latest/userguide/subnet-cidr-reservation.html // [Assign prefixes to network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html diff --git a/service/ec2/api_op_CreateTransitGatewayConnectPeer.go b/service/ec2/api_op_CreateTransitGatewayConnectPeer.go index a885e3873fe..28f340fc23b 100644 --- a/service/ec2/api_op_CreateTransitGatewayConnectPeer.go +++ b/service/ec2/api_op_CreateTransitGatewayConnectPeer.go @@ -17,7 +17,7 @@ import ( // The peer address and transit gateway address must be the same IP address family // (IPv4 or IPv6). // -// For more information, see [Connect peers] in the Transit Gateways Guide. +// For more information, see [Connect peers] in the Amazon Web Services Transit Gateways Guide. // // [Connect peers]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-connect.html#tgw-connect-peer func (c *Client) CreateTransitGatewayConnectPeer(ctx context.Context, params *CreateTransitGatewayConnectPeerInput, optFns ...func(*Options)) (*CreateTransitGatewayConnectPeerOutput, error) { diff --git a/service/ec2/api_op_CreateVerifiedAccessEndpoint.go b/service/ec2/api_op_CreateVerifiedAccessEndpoint.go index b17a4a50ab0..933b9d0d11e 100644 --- a/service/ec2/api_op_CreateVerifiedAccessEndpoint.go +++ b/service/ec2/api_op_CreateVerifiedAccessEndpoint.go @@ -64,9 +64,9 @@ type CreateVerifiedAccessEndpointInput struct { VerifiedAccessGroupId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the Verified Access endpoint. diff --git a/service/ec2/api_op_CreateVerifiedAccessGroup.go b/service/ec2/api_op_CreateVerifiedAccessGroup.go index c50a652dc8f..ba56e8cc418 100644 --- a/service/ec2/api_op_CreateVerifiedAccessGroup.go +++ b/service/ec2/api_op_CreateVerifiedAccessGroup.go @@ -40,9 +40,9 @@ type CreateVerifiedAccessGroupInput struct { VerifiedAccessInstanceId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the Verified Access group. diff --git a/service/ec2/api_op_CreateVerifiedAccessInstance.go b/service/ec2/api_op_CreateVerifiedAccessInstance.go index c1e3b5a2c01..a42283f5539 100644 --- a/service/ec2/api_op_CreateVerifiedAccessInstance.go +++ b/service/ec2/api_op_CreateVerifiedAccessInstance.go @@ -32,9 +32,9 @@ func (c *Client) CreateVerifiedAccessInstance(ctx context.Context, params *Creat type CreateVerifiedAccessInstanceInput struct { // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the Verified Access instance. diff --git a/service/ec2/api_op_CreateVerifiedAccessTrustProvider.go b/service/ec2/api_op_CreateVerifiedAccessTrustProvider.go index ef533ee806a..47457c2628a 100644 --- a/service/ec2/api_op_CreateVerifiedAccessTrustProvider.go +++ b/service/ec2/api_op_CreateVerifiedAccessTrustProvider.go @@ -43,9 +43,9 @@ type CreateVerifiedAccessTrustProviderInput struct { TrustProviderType types.TrustProviderType // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the Verified Access trust provider. diff --git a/service/ec2/api_op_CreateVolume.go b/service/ec2/api_op_CreateVolume.go index 2704a8c5875..a7602385441 100644 --- a/service/ec2/api_op_CreateVolume.go +++ b/service/ec2/api_op_CreateVolume.go @@ -25,7 +25,7 @@ import ( // in the Amazon EBS User Guide. // // You can tag your volumes during creation. For more information, see [Tag your Amazon EC2 resources] in the -// Amazon Elastic Compute Cloud User Guide. +// Amazon EC2 User Guide. // // For more information, see [Create an Amazon EBS volume] in the Amazon EBS User Guide. // @@ -58,7 +58,7 @@ type CreateVolumeInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [Ensure Idempotency]. // - // [Ensure Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensure Idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without @@ -99,12 +99,12 @@ type CreateVolumeInput struct { // is 3,000 IOPS. This parameter is not supported for gp2 , st1 , sc1 , or standard // volumes. // - // [instances built on the Nitro System]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances + // [instances built on the Nitro System]: https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html Iops *int32 - // The identifier of the Key Management Service (KMS) KMS key to use for Amazon - // EBS encryption. If this parameter is not specified, your KMS key for Amazon EBS - // is used. If KmsKeyId is specified, the encrypted state must be true . + // The identifier of the KMS key to use for Amazon EBS encryption. If this + // parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is + // specified, the encrypted state must be true . // // You can specify the KMS key using any of the following: // @@ -128,7 +128,7 @@ type CreateVolumeInput struct { // Zone. This parameter is supported with io1 and io2 volumes only. For more // information, see [Amazon EBS Multi-Attach]in the Amazon EBS User Guide. // - // [Instances built on the Nitro System]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances + // [Instances built on the Nitro System]: https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html // [Amazon EBS Multi-Attach]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volumes-multi.html MultiAttachEnabled *bool @@ -219,8 +219,8 @@ type CreateVolumeOutput struct { // rate at which the volume accumulates I/O credits for bursting. Iops *int32 - // The Amazon Resource Name (ARN) of the Key Management Service (KMS) KMS key that - // was used to protect the volume encryption key for the volume. + // The Amazon Resource Name (ARN) of the KMS key that was used to protect the + // volume encryption key for the volume. KmsKeyId *string // Indicates whether Amazon EBS Multi-Attach is enabled. diff --git a/service/ec2/api_op_CreateVpcEndpoint.go b/service/ec2/api_op_CreateVpcEndpoint.go index 9b7add44a42..87b4141a6f7 100644 --- a/service/ec2/api_op_CreateVpcEndpoint.go +++ b/service/ec2/api_op_CreateVpcEndpoint.go @@ -47,7 +47,7 @@ type CreateVpcEndpointInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [How to ensure idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [How to ensure idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // The DNS options for the endpoint. diff --git a/service/ec2/api_op_CreateVpcEndpointConnectionNotification.go b/service/ec2/api_op_CreateVpcEndpointConnectionNotification.go index febc727dd3a..5fbb8a2cfb7 100644 --- a/service/ec2/api_op_CreateVpcEndpointConnectionNotification.go +++ b/service/ec2/api_op_CreateVpcEndpointConnectionNotification.go @@ -13,12 +13,12 @@ import ( // Creates a connection notification for a specified VPC endpoint or VPC endpoint // service. A connection notification notifies you of specific endpoint events. You -// must create an SNS topic to receive notifications. For more information, see [Create a Topic]in -// the Amazon Simple Notification Service Developer Guide. +// must create an SNS topic to receive notifications. For more information, see [Creating an Amazon SNS topic]in +// the Amazon SNS Developer Guide. // // You can create a connection notification for interface endpoints only. // -// [Create a Topic]: https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html +// [Creating an Amazon SNS topic]: https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html func (c *Client) CreateVpcEndpointConnectionNotification(ctx context.Context, params *CreateVpcEndpointConnectionNotificationInput, optFns ...func(*Options)) (*CreateVpcEndpointConnectionNotificationOutput, error) { if params == nil { params = &CreateVpcEndpointConnectionNotificationInput{} @@ -50,7 +50,7 @@ type CreateVpcEndpointConnectionNotificationInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [How to ensure idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [How to ensure idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_CreateVpcEndpointServiceConfiguration.go b/service/ec2/api_op_CreateVpcEndpointServiceConfiguration.go index 9c8af87bbef..1c3bc5208ec 100644 --- a/service/ec2/api_op_CreateVpcEndpointServiceConfiguration.go +++ b/service/ec2/api_op_CreateVpcEndpointServiceConfiguration.go @@ -54,7 +54,7 @@ type CreateVpcEndpointServiceConfigurationInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [How to ensure idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [How to ensure idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_CreateVpcPeeringConnection.go b/service/ec2/api_op_CreateVpcPeeringConnection.go index 96be8638524..7d93d8483eb 100644 --- a/service/ec2/api_op_CreateVpcPeeringConnection.go +++ b/service/ec2/api_op_CreateVpcPeeringConnection.go @@ -18,7 +18,7 @@ import ( // overlapping CIDR blocks. // // Limitations and rules apply to a VPC peering connection. For more information, -// see the [limitations]section in the VPC Peering Guide. +// see the [VPC peering limitations]in the VPC Peering Guide. // // The owner of the accepter VPC must accept the peering request to activate the // peering connection. The VPC peering connection request expires after 7 days, @@ -27,7 +27,7 @@ import ( // If you create a VPC peering connection request between VPCs with overlapping // CIDR blocks, the VPC peering connection has a status of failed . // -// [limitations]: https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-basics.html#vpc-peering-limitations +// [VPC peering limitations]: https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-basics.html#vpc-peering-limitations func (c *Client) CreateVpcPeeringConnection(ctx context.Context, params *CreateVpcPeeringConnectionInput, optFns ...func(*Options)) (*CreateVpcPeeringConnectionOutput, error) { if params == nil { params = &CreateVpcPeeringConnectionInput{} diff --git a/service/ec2/api_op_DeleteLaunchTemplateVersions.go b/service/ec2/api_op_DeleteLaunchTemplateVersions.go index 56e639aebce..4c37d1b717c 100644 --- a/service/ec2/api_op_DeleteLaunchTemplateVersions.go +++ b/service/ec2/api_op_DeleteLaunchTemplateVersions.go @@ -22,7 +22,7 @@ import ( // delete more than 200 versions in a single request, use DeleteLaunchTemplate, which deletes the // launch template and all of its versions. // -// For more information, see [Delete a launch template version] in the EC2 User Guide. +// For more information, see [Delete a launch template version] in the Amazon EC2 User Guide. // // [Delete a launch template version]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-launch-template-versions.html#delete-launch-template-version func (c *Client) DeleteLaunchTemplateVersions(ctx context.Context, params *DeleteLaunchTemplateVersionsInput, optFns ...func(*Options)) (*DeleteLaunchTemplateVersionsOutput, error) { diff --git a/service/ec2/api_op_DeleteVerifiedAccessEndpoint.go b/service/ec2/api_op_DeleteVerifiedAccessEndpoint.go index d851a19ef21..b14cab4c313 100644 --- a/service/ec2/api_op_DeleteVerifiedAccessEndpoint.go +++ b/service/ec2/api_op_DeleteVerifiedAccessEndpoint.go @@ -35,9 +35,9 @@ type DeleteVerifiedAccessEndpointInput struct { VerifiedAccessEndpointId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_DeleteVerifiedAccessGroup.go b/service/ec2/api_op_DeleteVerifiedAccessGroup.go index f01260e6e0a..b57569185ad 100644 --- a/service/ec2/api_op_DeleteVerifiedAccessGroup.go +++ b/service/ec2/api_op_DeleteVerifiedAccessGroup.go @@ -35,9 +35,9 @@ type DeleteVerifiedAccessGroupInput struct { VerifiedAccessGroupId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_DeleteVerifiedAccessInstance.go b/service/ec2/api_op_DeleteVerifiedAccessInstance.go index 8d4d9af865d..104087b37d7 100644 --- a/service/ec2/api_op_DeleteVerifiedAccessInstance.go +++ b/service/ec2/api_op_DeleteVerifiedAccessInstance.go @@ -35,9 +35,9 @@ type DeleteVerifiedAccessInstanceInput struct { VerifiedAccessInstanceId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_DeleteVerifiedAccessTrustProvider.go b/service/ec2/api_op_DeleteVerifiedAccessTrustProvider.go index 765320a54f1..c5b5364c1b9 100644 --- a/service/ec2/api_op_DeleteVerifiedAccessTrustProvider.go +++ b/service/ec2/api_op_DeleteVerifiedAccessTrustProvider.go @@ -35,9 +35,9 @@ type DeleteVerifiedAccessTrustProviderInput struct { VerifiedAccessTrustProviderId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_DescribeAddressTransfers.go b/service/ec2/api_op_DescribeAddressTransfers.go index 47e00067521..dcb673249f0 100644 --- a/service/ec2/api_op_DescribeAddressTransfers.go +++ b/service/ec2/api_op_DescribeAddressTransfers.go @@ -12,7 +12,7 @@ import ( ) // Describes an Elastic IP address transfer. For more information, see [Transfer Elastic IP addresses] in the -// Amazon Virtual Private Cloud User Guide. +// Amazon VPC User Guide. // // When you transfer an Elastic IP address, there is a two-step handshake between // the source and transfer Amazon Web Services accounts. When the source account diff --git a/service/ec2/api_op_DescribeAvailabilityZones.go b/service/ec2/api_op_DescribeAvailabilityZones.go index b9582890d8a..b422933eaf0 100644 --- a/service/ec2/api_op_DescribeAvailabilityZones.go +++ b/service/ec2/api_op_DescribeAvailabilityZones.go @@ -16,7 +16,7 @@ import ( // request to view the state and any provided messages for that zone. // // For more information about Availability Zones, Local Zones, and Wavelength -// Zones, see [Regions and zones]in the Amazon Elastic Compute Cloud User Guide. +// Zones, see [Regions and zones]in the Amazon EC2 User Guide. // // The order of the elements in the response, including those within nested // structures, might vary. Applications should not assume the elements appear in a diff --git a/service/ec2/api_op_DescribeClassicLinkInstances.go b/service/ec2/api_op_DescribeClassicLinkInstances.go index e9a95e78265..8d15cdc03ee 100644 --- a/service/ec2/api_op_DescribeClassicLinkInstances.go +++ b/service/ec2/api_op_DescribeClassicLinkInstances.go @@ -13,10 +13,9 @@ import ( // This action is deprecated. // -// Describes one or more of your linked EC2-Classic instances. This request only -// returns information about EC2-Classic instances linked to a VPC through -// ClassicLink. You cannot use this request to return information about other -// instances. +// Describes your linked EC2-Classic instances. This request only returns +// information about EC2-Classic instances linked to a VPC through ClassicLink. You +// cannot use this request to return information about other instances. func (c *Client) DescribeClassicLinkInstances(ctx context.Context, params *DescribeClassicLinkInstancesInput, optFns ...func(*Options)) (*DescribeClassicLinkInstancesOutput, error) { if params == nil { params = &DescribeClassicLinkInstancesInput{} diff --git a/service/ec2/api_op_DescribeDhcpOptions.go b/service/ec2/api_op_DescribeDhcpOptions.go index d889398f871..6497a866c8e 100644 --- a/service/ec2/api_op_DescribeDhcpOptions.go +++ b/service/ec2/api_op_DescribeDhcpOptions.go @@ -11,11 +11,14 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Describes one or more of your DHCP options sets. +// Describes your DHCP option sets. The default is to describe all your DHCP +// option sets. Alternatively, you can specify specific DHCP option set IDs or +// filter the results to include only the DHCP option sets that match specific +// criteria. // -// For more information, see [DHCP options sets] in the Amazon VPC User Guide. +// For more information, see [DHCP option sets] in the Amazon VPC User Guide. // -// [DHCP options sets]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html +// [DHCP option sets]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html func (c *Client) DescribeDhcpOptions(ctx context.Context, params *DescribeDhcpOptionsInput, optFns ...func(*Options)) (*DescribeDhcpOptionsOutput, error) { if params == nil { params = &DescribeDhcpOptionsInput{} @@ -33,9 +36,7 @@ func (c *Client) DescribeDhcpOptions(ctx context.Context, params *DescribeDhcpOp type DescribeDhcpOptionsInput struct { - // The IDs of one or more DHCP options sets. - // - // Default: Describes all your DHCP options sets. + // The IDs of DHCP option sets. DhcpOptionsIds []string // Checks whether you have the required permissions for the action, without @@ -80,7 +81,7 @@ type DescribeDhcpOptionsInput struct { type DescribeDhcpOptionsOutput struct { - // Information about one or more DHCP options sets. + // Information about the DHCP options sets. DhcpOptions []types.DhcpOptions // The token to include in another request to get the next page of items. This diff --git a/service/ec2/api_op_DescribeEgressOnlyInternetGateways.go b/service/ec2/api_op_DescribeEgressOnlyInternetGateways.go index 25b3a222b97..26865e6a711 100644 --- a/service/ec2/api_op_DescribeEgressOnlyInternetGateways.go +++ b/service/ec2/api_op_DescribeEgressOnlyInternetGateways.go @@ -11,7 +11,10 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Describes one or more of your egress-only internet gateways. +// Describes your egress-only internet gateways. The default is to describe all +// your egress-only internet gateways. Alternatively, you can specify specific +// egress-only internet gateway IDs or filter the results to include only the +// egress-only internet gateways that match specific criteria. func (c *Client) DescribeEgressOnlyInternetGateways(ctx context.Context, params *DescribeEgressOnlyInternetGatewaysInput, optFns ...func(*Options)) (*DescribeEgressOnlyInternetGatewaysOutput, error) { if params == nil { params = &DescribeEgressOnlyInternetGatewaysInput{} diff --git a/service/ec2/api_op_DescribeElasticGpus.go b/service/ec2/api_op_DescribeElasticGpus.go index 2aa84347a38..89260c38e1c 100644 --- a/service/ec2/api_op_DescribeElasticGpus.go +++ b/service/ec2/api_op_DescribeElasticGpus.go @@ -12,13 +12,10 @@ import ( ) // Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads -// that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, -// G4dn, or G5 instances. +// that require graphics acceleration, we recommend that you use Amazon EC2 G4, G5, +// or G6 instances. // -// Describes the Elastic Graphics accelerator associated with your instances. For -// more information about Elastic Graphics, see [Amazon Elastic Graphics]. -// -// [Amazon Elastic Graphics]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html +// Describes the Elastic Graphics accelerator associated with your instances. func (c *Client) DescribeElasticGpus(ctx context.Context, params *DescribeElasticGpusInput, optFns ...func(*Options)) (*DescribeElasticGpusOutput, error) { if params == nil { params = &DescribeElasticGpusInput{} diff --git a/service/ec2/api_op_DescribeInstances.go b/service/ec2/api_op_DescribeInstances.go index 2d39e105c2e..859409e84d8 100644 --- a/service/ec2/api_op_DescribeInstances.go +++ b/service/ec2/api_op_DescribeInstances.go @@ -381,7 +381,10 @@ type DescribeInstancesInput struct { // - private-dns-name-options.hostname-type - The type of hostname ( ip-name | // resource-name ). // - // - private-ip-address - The private IPv4 address of the instance. + // - private-ip-address - The private IPv4 address of the instance. This can only + // be used to filter by the primary IP address of the network interface attached to + // the instance. To filter by additional IP addresses assigned to the network + // interface, use the filter network-interface.addresses.private-ip-address . // // - product-code - The product code associated with the AMI used to launch the // instance. diff --git a/service/ec2/api_op_DescribeInternetGateways.go b/service/ec2/api_op_DescribeInternetGateways.go index 03348146b96..43422c04d0e 100644 --- a/service/ec2/api_op_DescribeInternetGateways.go +++ b/service/ec2/api_op_DescribeInternetGateways.go @@ -18,7 +18,9 @@ import ( "time" ) -// Describes one or more of your internet gateways. +// Describes your internet gateways. The default is to describe all your internet +// gateways. Alternatively, you can specify specific internet gateway IDs or filter +// the results to include only the internet gateways that match specific criteria. func (c *Client) DescribeInternetGateways(ctx context.Context, params *DescribeInternetGatewaysInput, optFns ...func(*Options)) (*DescribeInternetGatewaysOutput, error) { if params == nil { params = &DescribeInternetGatewaysInput{} @@ -84,7 +86,7 @@ type DescribeInternetGatewaysInput struct { type DescribeInternetGatewaysOutput struct { - // Information about one or more internet gateways. + // Information about the internet gateways. InternetGateways []types.InternetGateway // The token to include in another request to get the next page of items. This diff --git a/service/ec2/api_op_DescribeLaunchTemplateVersions.go b/service/ec2/api_op_DescribeLaunchTemplateVersions.go index 5798183eeac..a174a9e1a64 100644 --- a/service/ec2/api_op_DescribeLaunchTemplateVersions.go +++ b/service/ec2/api_op_DescribeLaunchTemplateVersions.go @@ -113,7 +113,7 @@ type DescribeLaunchTemplateVersionsInput struct { // If false , and if a Systems Manager parameter is specified for ImageId , the // parameter is displayed in the response for imageId . // - // For more information, see [Use a Systems Manager parameter instead of an AMI ID] in the Amazon Elastic Compute Cloud User Guide. + // For more information, see [Use a Systems Manager parameter instead of an AMI ID] in the Amazon EC2 User Guide. // // Default: false // diff --git a/service/ec2/api_op_DescribeNatGateways.go b/service/ec2/api_op_DescribeNatGateways.go index 7a37ec1a035..722f45cfd03 100644 --- a/service/ec2/api_op_DescribeNatGateways.go +++ b/service/ec2/api_op_DescribeNatGateways.go @@ -17,7 +17,9 @@ import ( "time" ) -// Describes one or more of your NAT gateways. +// Describes your NAT gateways. The default is to describe all your NAT gateways. +// Alternatively, you can specify specific NAT gateway IDs or filter the results to +// include only the NAT gateways that match specific criteria. func (c *Client) DescribeNatGateways(ctx context.Context, params *DescribeNatGatewaysInput, optFns ...func(*Options)) (*DescribeNatGatewaysOutput, error) { if params == nil { params = &DescribeNatGatewaysInput{} diff --git a/service/ec2/api_op_DescribeNetworkAcls.go b/service/ec2/api_op_DescribeNetworkAcls.go index c39f2c89b3d..0b2969d1cff 100644 --- a/service/ec2/api_op_DescribeNetworkAcls.go +++ b/service/ec2/api_op_DescribeNetworkAcls.go @@ -11,7 +11,9 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Describes one or more of your network ACLs. +// Describes your network ACLs. The default is to describe all your network ACLs. +// Alternatively, you can specify specific network ACL IDs or filter the results to +// include only the network ACLs that match specific criteria. // // For more information, see [Network ACLs] in the Amazon VPC User Guide. // @@ -97,8 +99,6 @@ type DescribeNetworkAclsInput struct { MaxResults *int32 // The IDs of the network ACLs. - // - // Default: Describes all your network ACLs. NetworkAclIds []string // The token returned from a previous paginated request. Pagination continues from @@ -110,7 +110,7 @@ type DescribeNetworkAclsInput struct { type DescribeNetworkAclsOutput struct { - // Information about one or more network ACLs. + // Information about the network ACLs. NetworkAcls []types.NetworkAcl // The token to include in another request to get the next page of items. This diff --git a/service/ec2/api_op_DescribeRegions.go b/service/ec2/api_op_DescribeRegions.go index 891a8ad3e3b..91613fc6909 100644 --- a/service/ec2/api_op_DescribeRegions.go +++ b/service/ec2/api_op_DescribeRegions.go @@ -13,17 +13,17 @@ import ( // Describes the Regions that are enabled for your account, or all Regions. // -// For a list of the Regions supported by Amazon EC2, see [Amazon Elastic Compute Cloud endpoints and quotas]. +// For a list of the Regions supported by Amazon EC2, see [Amazon EC2 service endpoints]. // -// For information about enabling and disabling Regions for your account, see [Managing Amazon Web Services Regions] in -// the Amazon Web Services General Reference. +// For information about enabling and disabling Regions for your account, see [Specify which Amazon Web Services Regions your account can use] in +// the Amazon Web Services Account Management Reference Guide. // // The order of the elements in the response, including those within nested // structures, might vary. Applications should not assume the elements appear in a // particular order. // -// [Managing Amazon Web Services Regions]: https://docs.aws.amazon.com/general/latest/gr/rande-manage.html -// [Amazon Elastic Compute Cloud endpoints and quotas]: https://docs.aws.amazon.com/general/latest/gr/ec2-service.html +// [Specify which Amazon Web Services Regions your account can use]: https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-regions.html +// [Amazon EC2 service endpoints]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-endpoints.html func (c *Client) DescribeRegions(ctx context.Context, params *DescribeRegionsInput, optFns ...func(*Options)) (*DescribeRegionsOutput, error) { if params == nil { params = &DescribeRegionsInput{} diff --git a/service/ec2/api_op_DescribeReplaceRootVolumeTasks.go b/service/ec2/api_op_DescribeReplaceRootVolumeTasks.go index d6ef404cf94..abd0f35f17b 100644 --- a/service/ec2/api_op_DescribeReplaceRootVolumeTasks.go +++ b/service/ec2/api_op_DescribeReplaceRootVolumeTasks.go @@ -12,7 +12,7 @@ import ( ) // Describes a root volume replacement task. For more information, see [Replace a root volume] in the -// Amazon Elastic Compute Cloud User Guide. +// Amazon EC2 User Guide. // // [Replace a root volume]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/replace-root.html func (c *Client) DescribeReplaceRootVolumeTasks(ctx context.Context, params *DescribeReplaceRootVolumeTasksInput, optFns ...func(*Options)) (*DescribeReplaceRootVolumeTasksOutput, error) { diff --git a/service/ec2/api_op_DescribeReservedInstancesListings.go b/service/ec2/api_op_DescribeReservedInstancesListings.go index d4bc447de40..a47db0646b0 100644 --- a/service/ec2/api_op_DescribeReservedInstancesListings.go +++ b/service/ec2/api_op_DescribeReservedInstancesListings.go @@ -30,13 +30,13 @@ import ( // is met. You are charged based on the total price of all of the listings that you // purchase. // -// For more information, see [Reserved Instance Marketplace] in the Amazon EC2 User Guide. +// For more information, see [Sell in the Reserved Instance Marketplace] in the Amazon EC2 User Guide. // // The order of the elements in the response, including those within nested // structures, might vary. Applications should not assume the elements appear in a // particular order. // -// [Reserved Instance Marketplace]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html +// [Sell in the Reserved Instance Marketplace]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html func (c *Client) DescribeReservedInstancesListings(ctx context.Context, params *DescribeReservedInstancesListingsInput, optFns ...func(*Options)) (*DescribeReservedInstancesListingsOutput, error) { if params == nil { params = &DescribeReservedInstancesListingsInput{} diff --git a/service/ec2/api_op_DescribeReservedInstancesModifications.go b/service/ec2/api_op_DescribeReservedInstancesModifications.go index 7adf5e93843..a3df7940b92 100644 --- a/service/ec2/api_op_DescribeReservedInstancesModifications.go +++ b/service/ec2/api_op_DescribeReservedInstancesModifications.go @@ -16,13 +16,13 @@ import ( // is returned. If a modification ID is specified, only information about the // specific modification is returned. // -// For more information, see [Modifying Reserved Instances] in the Amazon EC2 User Guide. +// For more information, see [Modify Reserved Instances] in the Amazon EC2 User Guide. // // The order of the elements in the response, including those within nested // structures, might vary. Applications should not assume the elements appear in a // particular order. // -// [Modifying Reserved Instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-modifying.html +// [Modify Reserved Instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-modifying.html func (c *Client) DescribeReservedInstancesModifications(ctx context.Context, params *DescribeReservedInstancesModificationsInput, optFns ...func(*Options)) (*DescribeReservedInstancesModificationsOutput, error) { if params == nil { params = &DescribeReservedInstancesModificationsInput{} diff --git a/service/ec2/api_op_DescribeReservedInstancesOfferings.go b/service/ec2/api_op_DescribeReservedInstancesOfferings.go index 65a9596c474..df577ff6f4a 100644 --- a/service/ec2/api_op_DescribeReservedInstancesOfferings.go +++ b/service/ec2/api_op_DescribeReservedInstancesOfferings.go @@ -21,13 +21,13 @@ import ( // Instance Marketplace, they will be excluded from these results. This is to // ensure that you do not purchase your own Reserved Instances. // -// For more information, see [Reserved Instance Marketplace] in the Amazon EC2 User Guide. +// For more information, see [Sell in the Reserved Instance Marketplace] in the Amazon EC2 User Guide. // // The order of the elements in the response, including those within nested // structures, might vary. Applications should not assume the elements appear in a // particular order. // -// [Reserved Instance Marketplace]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html +// [Sell in the Reserved Instance Marketplace]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html func (c *Client) DescribeReservedInstancesOfferings(ctx context.Context, params *DescribeReservedInstancesOfferingsInput, optFns ...func(*Options)) (*DescribeReservedInstancesOfferingsOutput, error) { if params == nil { params = &DescribeReservedInstancesOfferingsInput{} @@ -101,9 +101,9 @@ type DescribeReservedInstancesOfferingsInput struct { InstanceTenancy types.Tenancy // The instance type that the reservation will cover (for example, m1.small ). For - // more information, see [Instance types]in the Amazon EC2 User Guide. + // more information, see [Amazon EC2 instance types]in the Amazon EC2 User Guide. // - // [Instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html + // [Amazon EC2 instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html InstanceType types.InstanceType // The maximum duration (in seconds) to filter when searching for offerings. diff --git a/service/ec2/api_op_DescribeRouteTables.go b/service/ec2/api_op_DescribeRouteTables.go index e1afb63c89b..63770e6259b 100644 --- a/service/ec2/api_op_DescribeRouteTables.go +++ b/service/ec2/api_op_DescribeRouteTables.go @@ -11,7 +11,9 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Describes one or more of your route tables. +// Describes your route tables. The default is to describe all your route tables. +// Alternatively, you can specify specific route table IDs or filter the results to +// include only the route tables that match specific criteria. // // Each subnet in your VPC must be associated with a route table. If a subnet is // not explicitly associated with any route table, it is implicitly associated with @@ -122,8 +124,6 @@ type DescribeRouteTablesInput struct { NextToken *string // The IDs of the route tables. - // - // Default: Describes all your route tables. RouteTableIds []string noSmithyDocumentSerde @@ -136,7 +136,7 @@ type DescribeRouteTablesOutput struct { // value is null when there are no more items to return. NextToken *string - // Information about one or more route tables. + // Information about the route tables. RouteTables []types.RouteTable // Metadata pertaining to the operation's result. diff --git a/service/ec2/api_op_DescribeSnapshots.go b/service/ec2/api_op_DescribeSnapshots.go index 00cfe1f0e04..2feb5a2dfe4 100644 --- a/service/ec2/api_op_DescribeSnapshots.go +++ b/service/ec2/api_op_DescribeSnapshots.go @@ -127,11 +127,9 @@ type DescribeSnapshotsInput struct { // - volume-size - The size of the volume, in GiB. Filters []types.Filter - // The maximum number of snapshots to return for this request. This value can be - // between 5 and 1,000; if this value is larger than 1,000, only 1,000 results are - // returned. If this parameter is not used, then the request returns all snapshots. - // You cannot specify this parameter and the snapshot IDs parameter in the same - // request. For more information, see [Pagination]. + // The maximum number of items to return for this request. To get the next page of + // items, make another request with the token returned in the output. For more + // information, see [Pagination]. // // [Pagination]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination MaxResults *int32 @@ -158,8 +156,8 @@ type DescribeSnapshotsInput struct { type DescribeSnapshotsOutput struct { - // The token to include in another request to return the next page of snapshots. - // This value is null when there are no more snapshots to return. + // The token to include in another request to get the next page of items. This + // value is null when there are no more items to return. NextToken *string // Information about the snapshots. @@ -260,11 +258,9 @@ var _ DescribeSnapshotsAPIClient = (*Client)(nil) // DescribeSnapshotsPaginatorOptions is the paginator options for DescribeSnapshots type DescribeSnapshotsPaginatorOptions struct { - // The maximum number of snapshots to return for this request. This value can be - // between 5 and 1,000; if this value is larger than 1,000, only 1,000 results are - // returned. If this parameter is not used, then the request returns all snapshots. - // You cannot specify this parameter and the snapshot IDs parameter in the same - // request. For more information, see [Pagination]. + // The maximum number of items to return for this request. To get the next page of + // items, make another request with the token returned in the output. For more + // information, see [Pagination]. // // [Pagination]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination Limit int32 diff --git a/service/ec2/api_op_DescribeSpotDatafeedSubscription.go b/service/ec2/api_op_DescribeSpotDatafeedSubscription.go index 36f0dd4dff8..5abc67ca083 100644 --- a/service/ec2/api_op_DescribeSpotDatafeedSubscription.go +++ b/service/ec2/api_op_DescribeSpotDatafeedSubscription.go @@ -12,7 +12,7 @@ import ( ) // Describes the data feed for Spot Instances. For more information, see [Spot Instance data feed] in the -// Amazon EC2 User Guide for Linux Instances. +// Amazon EC2 User Guide. // // [Spot Instance data feed]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-data-feeds.html func (c *Client) DescribeSpotDatafeedSubscription(ctx context.Context, params *DescribeSpotDatafeedSubscriptionInput, optFns ...func(*Options)) (*DescribeSpotDatafeedSubscriptionOutput, error) { diff --git a/service/ec2/api_op_DescribeSpotInstanceRequests.go b/service/ec2/api_op_DescribeSpotInstanceRequests.go index 83c256f9fd4..f1db645b62f 100644 --- a/service/ec2/api_op_DescribeSpotInstanceRequests.go +++ b/service/ec2/api_op_DescribeSpotInstanceRequests.go @@ -141,7 +141,7 @@ type DescribeSpotInstanceRequestsInput struct { // - state - The state of the Spot Instance request ( open | active | closed | // cancelled | failed ). Spot request status information can help you track your // Amazon EC2 Spot Instance requests. For more information, see [Spot request status]in the Amazon - // EC2 User Guide for Linux Instances. + // EC2 User Guide. // // - status-code - The short code describing the most recent evaluation of your // Spot Instance request. diff --git a/service/ec2/api_op_DescribeSpotPriceHistory.go b/service/ec2/api_op_DescribeSpotPriceHistory.go index 8462d6675bb..05139ecde7b 100644 --- a/service/ec2/api_op_DescribeSpotPriceHistory.go +++ b/service/ec2/api_op_DescribeSpotPriceHistory.go @@ -13,7 +13,7 @@ import ( ) // Describes the Spot price history. For more information, see [Spot Instance pricing history] in the Amazon EC2 -// User Guide for Linux Instances. +// User Guide. // // When you specify a start and end time, the operation returns the prices of the // instance types within that time range. It also returns the last price change diff --git a/service/ec2/api_op_DescribeSubnets.go b/service/ec2/api_op_DescribeSubnets.go index 03d60d548b7..a811fdac3c8 100644 --- a/service/ec2/api_op_DescribeSubnets.go +++ b/service/ec2/api_op_DescribeSubnets.go @@ -15,7 +15,9 @@ import ( "time" ) -// Describes one or more of your subnets. +// Describes your subnets. The default is to describe all your subnets. +// Alternatively, you can specify specific subnet IDs or filter the results to +// include only the subnets that match specific criteria. // // For more information, see [Subnets] in the Amazon VPC User Guide. // @@ -151,7 +153,7 @@ type DescribeSubnetsOutput struct { // value is null when there are no more items to return. NextToken *string - // Information about one or more subnets. + // Information about the subnets. Subnets []types.Subnet // Metadata pertaining to the operation's result. diff --git a/service/ec2/api_op_DescribeVolumeStatus.go b/service/ec2/api_op_DescribeVolumeStatus.go index 2a3da652519..944676337a9 100644 --- a/service/ec2/api_op_DescribeVolumeStatus.go +++ b/service/ec2/api_op_DescribeVolumeStatus.go @@ -108,11 +108,8 @@ type DescribeVolumeStatusInput struct { Filters []types.Filter // The maximum number of items to return for this request. To get the next page of - // items, make another request with the token returned in the output. This value - // can be between 5 and 1,000; if the value is larger than 1,000, only 1,000 - // results are returned. If this parameter is not used, then all items are - // returned. You cannot specify this parameter and the volume IDs parameter in the - // same request. For more information, see [Pagination]. + // items, make another request with the token returned in the output. For more + // information, see [Pagination]. // // [Pagination]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination MaxResults *int32 @@ -235,11 +232,8 @@ var _ DescribeVolumeStatusAPIClient = (*Client)(nil) // DescribeVolumeStatus type DescribeVolumeStatusPaginatorOptions struct { // The maximum number of items to return for this request. To get the next page of - // items, make another request with the token returned in the output. This value - // can be between 5 and 1,000; if the value is larger than 1,000, only 1,000 - // results are returned. If this parameter is not used, then all items are - // returned. You cannot specify this parameter and the volume IDs parameter in the - // same request. For more information, see [Pagination]. + // items, make another request with the token returned in the output. For more + // information, see [Pagination]. // // [Pagination]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination Limit int32 diff --git a/service/ec2/api_op_DescribeVolumes.go b/service/ec2/api_op_DescribeVolumes.go index 7814741bc9e..60ee8f02aa4 100644 --- a/service/ec2/api_op_DescribeVolumes.go +++ b/service/ec2/api_op_DescribeVolumes.go @@ -104,17 +104,15 @@ type DescribeVolumesInput struct { // | standard ) Filters []types.Filter - // The maximum number of volumes to return for this request. This value can be - // between 5 and 500; if you specify a value larger than 500, only 500 items are - // returned. If this parameter is not used, then all items are returned. You cannot - // specify this parameter and the volume IDs parameter in the same request. For - // more information, see [Pagination]. + // The maximum number of items to return for this request. To get the next page of + // items, make another request with the token returned in the output. For more + // information, see [Pagination]. // // [Pagination]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination MaxResults *int32 // The token returned from a previous paginated request. Pagination continues from - // the end of the items returned from the previous request. + // the end of the items returned by the previous request. NextToken *string // The volume IDs. @@ -227,11 +225,9 @@ var _ DescribeVolumesAPIClient = (*Client)(nil) // DescribeVolumesPaginatorOptions is the paginator options for DescribeVolumes type DescribeVolumesPaginatorOptions struct { - // The maximum number of volumes to return for this request. This value can be - // between 5 and 500; if you specify a value larger than 500, only 500 items are - // returned. If this parameter is not used, then all items are returned. You cannot - // specify this parameter and the volume IDs parameter in the same request. For - // more information, see [Pagination]. + // The maximum number of items to return for this request. To get the next page of + // items, make another request with the token returned in the output. For more + // information, see [Pagination]. // // [Pagination]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination Limit int32 diff --git a/service/ec2/api_op_DescribeVolumesModifications.go b/service/ec2/api_op_DescribeVolumesModifications.go index 52be4515a12..978d6fe610d 100644 --- a/service/ec2/api_op_DescribeVolumesModifications.go +++ b/service/ec2/api_op_DescribeVolumesModifications.go @@ -18,12 +18,9 @@ import ( // null. If a volume has been modified more than once, the output includes only the // most recent modification request. // -// You can also use CloudWatch Events to check the status of a modification to an -// EBS volume. For information about CloudWatch Events, see the [Amazon CloudWatch Events User Guide]. For more -// information, see [Monitor the progress of volume modifications]in the Amazon EBS User Guide. +// For more information, see [Monitor the progress of volume modifications] in the Amazon EBS User Guide. // // [Monitor the progress of volume modifications]: https://docs.aws.amazon.com/ebs/latest/userguide/monitoring-volume-modifications.html -// [Amazon CloudWatch Events User Guide]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ func (c *Client) DescribeVolumesModifications(ctx context.Context, params *DescribeVolumesModificationsInput, optFns ...func(*Options)) (*DescribeVolumesModificationsOutput, error) { if params == nil { params = &DescribeVolumesModificationsInput{} @@ -83,7 +80,7 @@ type DescribeVolumesModificationsInput struct { // [Pagination]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination MaxResults *int32 - // The token returned by a previous paginated request. Pagination continues from + // The token returned from a previous paginated request. Pagination continues from // the end of the items returned by the previous request. NextToken *string @@ -96,7 +93,7 @@ type DescribeVolumesModificationsInput struct { type DescribeVolumesModificationsOutput struct { // The token to include in another request to get the next page of items. This - // value is null if there are no more items to return. + // value is null when there are no more items to return. NextToken *string // Information about the volume modifications. diff --git a/service/ec2/api_op_DescribeVpcEndpoints.go b/service/ec2/api_op_DescribeVpcEndpoints.go index d3910639778..2da93e804ca 100644 --- a/service/ec2/api_op_DescribeVpcEndpoints.go +++ b/service/ec2/api_op_DescribeVpcEndpoints.go @@ -11,7 +11,9 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Describes your VPC endpoints. +// Describes your VPC endpoints. The default is to describe all your VPC +// endpoints. Alternatively, you can specify specific VPC endpoint IDs or filter +// the results to include only the VPC endpoints that match specific criteria. func (c *Client) DescribeVpcEndpoints(ctx context.Context, params *DescribeVpcEndpointsInput, optFns ...func(*Options)) (*DescribeVpcEndpointsOutput, error) { if params == nil { params = &DescribeVpcEndpointsInput{} @@ -82,7 +84,7 @@ type DescribeVpcEndpointsOutput struct { // additional items to return, the string is empty. NextToken *string - // Information about the endpoints. + // Information about the VPC endpoints. VpcEndpoints []types.VpcEndpoint // Metadata pertaining to the operation's result. diff --git a/service/ec2/api_op_DescribeVpcPeeringConnections.go b/service/ec2/api_op_DescribeVpcPeeringConnections.go index 271aa3313ce..79247a0b2dc 100644 --- a/service/ec2/api_op_DescribeVpcPeeringConnections.go +++ b/service/ec2/api_op_DescribeVpcPeeringConnections.go @@ -17,7 +17,10 @@ import ( "time" ) -// Describes one or more of your VPC peering connections. +// Describes your VPC peering connections. The default is to describe all your VPC +// peering connections. Alternatively, you can specify specific VPC peering +// connection IDs or filter the results to include only the VPC peering connections +// that match specific criteria. func (c *Client) DescribeVpcPeeringConnections(ctx context.Context, params *DescribeVpcPeeringConnectionsInput, optFns ...func(*Options)) (*DescribeVpcPeeringConnectionsOutput, error) { if params == nil { params = &DescribeVpcPeeringConnectionsInput{} diff --git a/service/ec2/api_op_DescribeVpcs.go b/service/ec2/api_op_DescribeVpcs.go index ce8aecaf5e0..540f8c3e04a 100644 --- a/service/ec2/api_op_DescribeVpcs.go +++ b/service/ec2/api_op_DescribeVpcs.go @@ -17,7 +17,9 @@ import ( "time" ) -// Describes one or more of your VPCs. +// Describes your VPCs. The default is to describe all your VPCs. Alternatively, +// you can specify specific VPC IDs or filter the results to include only the VPCs +// that match specific criteria. func (c *Client) DescribeVpcs(ctx context.Context, params *DescribeVpcsInput, optFns ...func(*Options)) (*DescribeVpcsOutput, error) { if params == nil { params = &DescribeVpcsInput{} @@ -99,8 +101,6 @@ type DescribeVpcsInput struct { NextToken *string // The IDs of the VPCs. - // - // Default: Describes all your VPCs. VpcIds []string noSmithyDocumentSerde @@ -112,7 +112,7 @@ type DescribeVpcsOutput struct { // value is null when there are no more items to return. NextToken *string - // Information about one or more VPCs. + // Information about the VPCs. Vpcs []types.Vpc // Metadata pertaining to the operation's result. diff --git a/service/ec2/api_op_DetachVerifiedAccessTrustProvider.go b/service/ec2/api_op_DetachVerifiedAccessTrustProvider.go index 5052c69cc2e..7cfbedcc0ad 100644 --- a/service/ec2/api_op_DetachVerifiedAccessTrustProvider.go +++ b/service/ec2/api_op_DetachVerifiedAccessTrustProvider.go @@ -41,9 +41,9 @@ type DetachVerifiedAccessTrustProviderInput struct { VerifiedAccessTrustProviderId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_DisableAddressTransfer.go b/service/ec2/api_op_DisableAddressTransfer.go index 0e8bf1ecf2d..65d577b65e6 100644 --- a/service/ec2/api_op_DisableAddressTransfer.go +++ b/service/ec2/api_op_DisableAddressTransfer.go @@ -12,7 +12,7 @@ import ( ) // Disables Elastic IP address transfer. For more information, see [Transfer Elastic IP addresses] in the Amazon -// Virtual Private Cloud User Guide. +// VPC User Guide. // // [Transfer Elastic IP addresses]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#transfer-EIPs-intro func (c *Client) DisableAddressTransfer(ctx context.Context, params *DisableAddressTransferInput, optFns ...func(*Options)) (*DisableAddressTransferOutput, error) { diff --git a/service/ec2/api_op_DisassociateTrunkInterface.go b/service/ec2/api_op_DisassociateTrunkInterface.go index d169e7e4505..18ce1e787ae 100644 --- a/service/ec2/api_op_DisassociateTrunkInterface.go +++ b/service/ec2/api_op_DisassociateTrunkInterface.go @@ -35,9 +35,9 @@ type DisassociateTrunkInterfaceInput struct { AssociationId *string // Unique, case-sensitive identifier that you provide to ensure the idempotency of - // the request. For more information, see [How to Ensure Idempotency]. + // the request. For more information, see [Ensuring idempotency]. // - // [How to Ensure Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without @@ -52,9 +52,9 @@ type DisassociateTrunkInterfaceInput struct { type DisassociateTrunkInterfaceOutput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of - // the request. For more information, see [How to Ensure Idempotency]. + // the request. For more information, see [Ensuring idempotency]. // - // [How to Ensure Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Returns true if the request succeeds; otherwise, it returns an error. diff --git a/service/ec2/api_op_EnableAddressTransfer.go b/service/ec2/api_op_EnableAddressTransfer.go index 7909e9899b1..5a088a43ae3 100644 --- a/service/ec2/api_op_EnableAddressTransfer.go +++ b/service/ec2/api_op_EnableAddressTransfer.go @@ -12,7 +12,7 @@ import ( ) // Enables Elastic IP address transfer. For more information, see [Transfer Elastic IP addresses] in the Amazon -// Virtual Private Cloud User Guide. +// VPC User Guide. // // [Transfer Elastic IP addresses]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#transfer-EIPs-intro func (c *Client) EnableAddressTransfer(ctx context.Context, params *EnableAddressTransferInput, optFns ...func(*Options)) (*EnableAddressTransferOutput, error) { diff --git a/service/ec2/api_op_ExportTransitGatewayRoutes.go b/service/ec2/api_op_ExportTransitGatewayRoutes.go index bfb375c5e9a..8cb28e0c4a8 100644 --- a/service/ec2/api_op_ExportTransitGatewayRoutes.go +++ b/service/ec2/api_op_ExportTransitGatewayRoutes.go @@ -16,9 +16,9 @@ import ( // CIDR range. // // The routes are saved to the specified bucket in a JSON file. For more -// information, see [Export Route Tables to Amazon S3]in Transit Gateways. +// information, see [Export route tables to Amazon S3]in the Amazon Web Services Transit Gateways Guide. // -// [Export Route Tables to Amazon S3]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-route-tables.html#tgw-export-route-tables +// [Export route tables to Amazon S3]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-route-tables.html#tgw-export-route-tables func (c *Client) ExportTransitGatewayRoutes(ctx context.Context, params *ExportTransitGatewayRoutesInput, optFns ...func(*Options)) (*ExportTransitGatewayRoutesOutput, error) { if params == nil { params = &ExportTransitGatewayRoutesInput{} diff --git a/service/ec2/api_op_GetIpamPoolAllocations.go b/service/ec2/api_op_GetIpamPoolAllocations.go index 8d3c60b4009..a89f415214c 100644 --- a/service/ec2/api_op_GetIpamPoolAllocations.go +++ b/service/ec2/api_op_GetIpamPoolAllocations.go @@ -20,7 +20,7 @@ import ( // // [ReleaseIpamPoolAllocation]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ReleaseIpamPoolAllocation.html // [AllocateIpamPoolCidr]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AllocateIpamPoolCidr.html -// [eventual consistency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/query-api-troubleshooting.html#eventual-consistency +// [eventual consistency]: https://docs.aws.amazon.com/ec2/latest/devguide/eventual-consistency.html func (c *Client) GetIpamPoolAllocations(ctx context.Context, params *GetIpamPoolAllocationsInput, optFns ...func(*Options)) (*GetIpamPoolAllocationsOutput, error) { if params == nil { params = &GetIpamPoolAllocationsInput{} diff --git a/service/ec2/api_op_GetPasswordData.go b/service/ec2/api_op_GetPasswordData.go index 9ef68166e18..158c3448d1e 100644 --- a/service/ec2/api_op_GetPasswordData.go +++ b/service/ec2/api_op_GetPasswordData.go @@ -33,8 +33,8 @@ import ( // returns an empty string. We recommend that you wait up to 15 minutes after // launching an instance before trying to retrieve the generated password. // -// [EC2Launch]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2launch.html -// [EC2Config]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/UsingConfig_WinAMI.html +// [EC2Launch]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2launch.html +// [EC2Config]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UsingConfig_WinAMI.html func (c *Client) GetPasswordData(ctx context.Context, params *GetPasswordDataInput, optFns ...func(*Options)) (*GetPasswordDataOutput, error) { if params == nil { params = &GetPasswordDataInput{} diff --git a/service/ec2/api_op_ModifyAvailabilityZoneGroup.go b/service/ec2/api_op_ModifyAvailabilityZoneGroup.go index e1b6d1e92c8..fd5ea64dc4c 100644 --- a/service/ec2/api_op_ModifyAvailabilityZoneGroup.go +++ b/service/ec2/api_op_ModifyAvailabilityZoneGroup.go @@ -11,12 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Changes the opt-in status of the Local Zone and Wavelength Zone group for your -// account. -// -// Use [DescribeAvailabilityZones] to view the value for GroupName . -// -// [DescribeAvailabilityZones]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html +// Changes the opt-in status of the specified zone group for your account. func (c *Client) ModifyAvailabilityZoneGroup(ctx context.Context, params *ModifyAvailabilityZoneGroupInput, optFns ...func(*Options)) (*ModifyAvailabilityZoneGroupOutput, error) { if params == nil { params = &ModifyAvailabilityZoneGroupInput{} @@ -40,11 +35,9 @@ type ModifyAvailabilityZoneGroupInput struct { // This member is required. GroupName *string - // Indicates whether you are opted in to the Local Zone group or Wavelength Zone - // group. The only valid value is opted-in . You must contact [Amazon Web Services Support] to opt out of a - // Local Zone or Wavelength Zone group. - // - // [Amazon Web Services Support]: https://console.aws.amazon.com/support/home#/case/create%3FissueType=customer-service%26serviceCode=general-info%26getting-started%26categoryCode=using-aws%26services + // Indicates whether to opt in to the zone group. The only valid value is opted-in + // . You must contact Amazon Web Services Support to opt out of a Local Zone or + // Wavelength Zone group. // // This member is required. OptInStatus types.ModifyAvailabilityZoneOptInStatus diff --git a/service/ec2/api_op_ModifyEbsDefaultKmsKeyId.go b/service/ec2/api_op_ModifyEbsDefaultKmsKeyId.go index a49e0bc769e..959c9b15fc2 100644 --- a/service/ec2/api_op_ModifyEbsDefaultKmsKeyId.go +++ b/service/ec2/api_op_ModifyEbsDefaultKmsKeyId.go @@ -43,9 +43,9 @@ func (c *Client) ModifyEbsDefaultKmsKeyId(ctx context.Context, params *ModifyEbs type ModifyEbsDefaultKmsKeyIdInput struct { - // The identifier of the Key Management Service (KMS) KMS key to use for Amazon - // EBS encryption. If this parameter is not specified, your KMS key for Amazon EBS - // is used. If KmsKeyId is specified, the encrypted state must be true . + // The identifier of the KMS key to use for Amazon EBS encryption. If this + // parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is + // specified, the encrypted state must be true . // // You can specify the KMS key using any of the following: // diff --git a/service/ec2/api_op_ModifyInstanceAttribute.go b/service/ec2/api_op_ModifyInstanceAttribute.go index e9fef83a261..d1e9b968090 100644 --- a/service/ec2/api_op_ModifyInstanceAttribute.go +++ b/service/ec2/api_op_ModifyInstanceAttribute.go @@ -68,9 +68,9 @@ type ModifyInstanceAttributeInput struct { BlockDeviceMappings []types.InstanceBlockDeviceMappingSpecification // Indicates whether an instance is enabled for stop protection. For more - // information, see [Stop Protection]. + // information, see [Enable stop protection for your instance]. // - // [Stop Protection]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection + // [Enable stop protection for your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-stop-protection.html DisableApiStop *types.AttributeBooleanValue // If the value is true , you can't terminate the instance using the Amazon EC2 diff --git a/service/ec2/api_op_ModifyReservedInstances.go b/service/ec2/api_op_ModifyReservedInstances.go index 5a9d24a4692..12bd303f8ce 100644 --- a/service/ec2/api_op_ModifyReservedInstances.go +++ b/service/ec2/api_op_ModifyReservedInstances.go @@ -16,9 +16,9 @@ import ( // must be identical, except for Availability Zone, network platform, and instance // type. // -// For more information, see [Modifying Reserved Instances] in the Amazon EC2 User Guide. +// For more information, see [Modify Reserved Instances] in the Amazon EC2 User Guide. // -// [Modifying Reserved Instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-modifying.html +// [Modify Reserved Instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-modifying.html func (c *Client) ModifyReservedInstances(ctx context.Context, params *ModifyReservedInstancesInput, optFns ...func(*Options)) (*ModifyReservedInstancesOutput, error) { if params == nil { params = &ModifyReservedInstancesInput{} diff --git a/service/ec2/api_op_ModifyVerifiedAccessEndpoint.go b/service/ec2/api_op_ModifyVerifiedAccessEndpoint.go index 1a9ec1084a7..dcb4f31a2a1 100644 --- a/service/ec2/api_op_ModifyVerifiedAccessEndpoint.go +++ b/service/ec2/api_op_ModifyVerifiedAccessEndpoint.go @@ -36,9 +36,9 @@ type ModifyVerifiedAccessEndpointInput struct { VerifiedAccessEndpointId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the Verified Access endpoint. diff --git a/service/ec2/api_op_ModifyVerifiedAccessEndpointPolicy.go b/service/ec2/api_op_ModifyVerifiedAccessEndpointPolicy.go index cff55e3883f..e147d2ed723 100644 --- a/service/ec2/api_op_ModifyVerifiedAccessEndpointPolicy.go +++ b/service/ec2/api_op_ModifyVerifiedAccessEndpointPolicy.go @@ -35,9 +35,9 @@ type ModifyVerifiedAccessEndpointPolicyInput struct { VerifiedAccessEndpointId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_ModifyVerifiedAccessGroup.go b/service/ec2/api_op_ModifyVerifiedAccessGroup.go index 5f607246a93..40e1359abdf 100644 --- a/service/ec2/api_op_ModifyVerifiedAccessGroup.go +++ b/service/ec2/api_op_ModifyVerifiedAccessGroup.go @@ -35,9 +35,9 @@ type ModifyVerifiedAccessGroupInput struct { VerifiedAccessGroupId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the Verified Access group. diff --git a/service/ec2/api_op_ModifyVerifiedAccessGroupPolicy.go b/service/ec2/api_op_ModifyVerifiedAccessGroupPolicy.go index 97b4907354c..3007acdd905 100644 --- a/service/ec2/api_op_ModifyVerifiedAccessGroupPolicy.go +++ b/service/ec2/api_op_ModifyVerifiedAccessGroupPolicy.go @@ -35,9 +35,9 @@ type ModifyVerifiedAccessGroupPolicyInput struct { VerifiedAccessGroupId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_ModifyVerifiedAccessInstance.go b/service/ec2/api_op_ModifyVerifiedAccessInstance.go index a52b5064b58..f8fa8eb829f 100644 --- a/service/ec2/api_op_ModifyVerifiedAccessInstance.go +++ b/service/ec2/api_op_ModifyVerifiedAccessInstance.go @@ -36,9 +36,9 @@ type ModifyVerifiedAccessInstanceInput struct { VerifiedAccessInstanceId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the Verified Access instance. diff --git a/service/ec2/api_op_ModifyVerifiedAccessInstanceLoggingConfiguration.go b/service/ec2/api_op_ModifyVerifiedAccessInstanceLoggingConfiguration.go index 0141ff9c2ee..25a4b649ca2 100644 --- a/service/ec2/api_op_ModifyVerifiedAccessInstanceLoggingConfiguration.go +++ b/service/ec2/api_op_ModifyVerifiedAccessInstanceLoggingConfiguration.go @@ -41,9 +41,9 @@ type ModifyVerifiedAccessInstanceLoggingConfigurationInput struct { VerifiedAccessInstanceId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_ModifyVerifiedAccessTrustProvider.go b/service/ec2/api_op_ModifyVerifiedAccessTrustProvider.go index d305a1e971d..e084cd35454 100644 --- a/service/ec2/api_op_ModifyVerifiedAccessTrustProvider.go +++ b/service/ec2/api_op_ModifyVerifiedAccessTrustProvider.go @@ -36,9 +36,9 @@ type ModifyVerifiedAccessTrustProviderInput struct { VerifiedAccessTrustProviderId *string // A unique, case-sensitive token that you provide to ensure idempotency of your - // modification request. For more information, see [Ensuring Idempotency]. + // modification request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A description for the Verified Access trust provider. diff --git a/service/ec2/api_op_ModifyVolume.go b/service/ec2/api_op_ModifyVolume.go index 72681f3f1cc..0f59b2cf2aa 100644 --- a/service/ec2/api_op_ModifyVolume.go +++ b/service/ec2/api_op_ModifyVolume.go @@ -21,10 +21,7 @@ import ( // volume's file-system size to take advantage of the new storage capacity. For // more information, see [Extend the file system]. // -// You can use CloudWatch Events to check the status of a modification to an EBS -// volume. For information about CloudWatch Events, see the [Amazon CloudWatch Events User Guide]. You can also track -// the status of a modification using DescribeVolumesModifications. For information about tracking status -// changes using either method, see [Monitor the progress of volume modifications]. +// For more information, see [Monitor the progress of volume modifications] in the Amazon EBS User Guide. // // With previous-generation instance types, resizing an EBS volume might require // detaching and reattaching the volume or stopping and restarting the instance. @@ -36,7 +33,6 @@ import ( // [Monitor the progress of volume modifications]: https://docs.aws.amazon.com/ebs/latest/userguide/monitoring-volume-modifications.html // [Amazon EBS Elastic Volumes]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-modify-volume.html // [Extend the file system]: https://docs.aws.amazon.com/ebs/latest/userguide/recognize-expanded-volume-linux.html -// [Amazon CloudWatch Events User Guide]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ func (c *Client) ModifyVolume(ctx context.Context, params *ModifyVolumeInput, optFns ...func(*Options)) (*ModifyVolumeOutput, error) { if params == nil { params = &ModifyVolumeInput{} @@ -82,7 +78,7 @@ type ModifyVolumeInput struct { // Default: The existing value is retained if you keep the same volume type. If // you change the volume type to io1 , io2 , or gp3 , the default is 3,000. // - // [instances built on the Nitro System]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances + // [instances built on the Nitro System]: https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html Iops *int32 // Specifies whether to enable Amazon EBS Multi-Attach. If you enable @@ -91,7 +87,7 @@ type ModifyVolumeInput struct { // information, see [Amazon EBS Multi-Attach]in the Amazon EBS User Guide. // // [Amazon EBS Multi-Attach]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volumes-multi.html - // [Nitro-based instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances + // [Nitro-based instances]: https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html MultiAttachEnabled *bool // The target size of the volume, in GiB. The target volume size must be greater diff --git a/service/ec2/api_op_ProvisionByoipCidr.go b/service/ec2/api_op_ProvisionByoipCidr.go index f41312ae560..5ee250e3fe0 100644 --- a/service/ec2/api_op_ProvisionByoipCidr.go +++ b/service/ec2/api_op_ProvisionByoipCidr.go @@ -19,8 +19,8 @@ import ( // Amazon Web Services verifies that you own the address range and are authorized // to advertise it. You must ensure that the address range is registered to you and // that you created an RPKI ROA to authorize Amazon ASNs 16509 and 14618 to -// advertise the address range. For more information, see [Bring your own IP addresses (BYOIP)]in the Amazon Elastic -// Compute Cloud User Guide. +// advertise the address range. For more information, see [Bring your own IP addresses (BYOIP)]in the Amazon EC2 User +// Guide. // // Provisioning an address range is an asynchronous operation, so the call returns // immediately, but the address range is not ready to use until its status changes diff --git a/service/ec2/api_op_ProvisionIpamPoolCidr.go b/service/ec2/api_op_ProvisionIpamPoolCidr.go index 331587186df..18c1bcf13c2 100644 --- a/service/ec2/api_op_ProvisionIpamPoolCidr.go +++ b/service/ec2/api_op_ProvisionIpamPoolCidr.go @@ -50,9 +50,9 @@ type ProvisionIpamPoolCidrInput struct { CidrAuthorizationContext *types.IpamCidrAuthorizationContext // A unique, case-sensitive identifier that you provide to ensure the idempotency - // of the request. For more information, see [Ensuring Idempotency]. + // of the request. For more information, see [Ensuring idempotency]. // - // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [Ensuring idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html ClientToken *string // A check for whether you have the required permissions for the action without diff --git a/service/ec2/api_op_PurchaseReservedInstancesOffering.go b/service/ec2/api_op_PurchaseReservedInstancesOffering.go index e9f2f328d3e..f9930fe766a 100644 --- a/service/ec2/api_op_PurchaseReservedInstancesOffering.go +++ b/service/ec2/api_op_PurchaseReservedInstancesOffering.go @@ -22,10 +22,10 @@ import ( // To queue a purchase for a future date and time, specify a purchase time. If you // do not specify a purchase time, the default is the current time. // -// For more information, see [Reserved Instances] and [Reserved Instance Marketplace] in the Amazon EC2 User Guide. +// For more information, see [Reserved Instances] and [Sell in the Reserved Instance Marketplace] in the Amazon EC2 User Guide. // // [Reserved Instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts-on-demand-reserved-instances.html -// [Reserved Instance Marketplace]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html +// [Sell in the Reserved Instance Marketplace]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ri-market-general.html func (c *Client) PurchaseReservedInstancesOffering(ctx context.Context, params *PurchaseReservedInstancesOfferingInput, optFns ...func(*Options)) (*PurchaseReservedInstancesOfferingOutput, error) { if params == nil { params = &PurchaseReservedInstancesOfferingInput{} @@ -76,7 +76,7 @@ type PurchaseReservedInstancesOfferingOutput struct { // The IDs of the purchased Reserved Instances. If your purchase crosses into a // discounted pricing tier, the final Reserved Instances IDs might change. For more - // information, see [Crossing pricing tiers]in the Amazon Elastic Compute Cloud User Guide. + // information, see [Crossing pricing tiers]in the Amazon EC2 User Guide. // // [Crossing pricing tiers]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts-reserved-instances-application.html#crossing-pricing-tiers ReservedInstancesId *string diff --git a/service/ec2/api_op_RegisterTransitGatewayMulticastGroupMembers.go b/service/ec2/api_op_RegisterTransitGatewayMulticastGroupMembers.go index 23eceecb464..165011d2721 100644 --- a/service/ec2/api_op_RegisterTransitGatewayMulticastGroupMembers.go +++ b/service/ec2/api_op_RegisterTransitGatewayMulticastGroupMembers.go @@ -13,14 +13,14 @@ import ( // Registers members (network interfaces) with the transit gateway multicast // group. A member is a network interface associated with a supported EC2 instance -// that receives multicast traffic. For information about supported instances, see [Multicast Consideration] -// in Amazon VPC Transit Gateways. +// that receives multicast traffic. For more information, see [Multicast on transit gateways]in the Amazon Web +// Services Transit Gateways Guide. // // After you add the members, use [SearchTransitGatewayMulticastGroups] to verify that the members were added to the // transit gateway multicast group. // // [SearchTransitGatewayMulticastGroups]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SearchTransitGatewayMulticastGroups.html -// [Multicast Consideration]: https://docs.aws.amazon.com/vpc/latest/tgw/transit-gateway-limits.html#multicast-limits +// [Multicast on transit gateways]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-multicast-overview.html func (c *Client) RegisterTransitGatewayMulticastGroupMembers(ctx context.Context, params *RegisterTransitGatewayMulticastGroupMembersInput, optFns ...func(*Options)) (*RegisterTransitGatewayMulticastGroupMembersOutput, error) { if params == nil { params = &RegisterTransitGatewayMulticastGroupMembersInput{} diff --git a/service/ec2/api_op_RegisterTransitGatewayMulticastGroupSources.go b/service/ec2/api_op_RegisterTransitGatewayMulticastGroupSources.go index 38bdf50d9da..b4008b72897 100644 --- a/service/ec2/api_op_RegisterTransitGatewayMulticastGroupSources.go +++ b/service/ec2/api_op_RegisterTransitGatewayMulticastGroupSources.go @@ -15,14 +15,14 @@ import ( // multicast group. // // A multicast source is a network interface attached to a supported instance that -// sends multicast traffic. For information about supported instances, see [Multicast Considerations]in -// Amazon VPC Transit Gateways. +// sends multicast traffic. For more information about supported instances, see [Multicast on transit gateways]in +// the Amazon Web Services Transit Gateways Guide. // // After you add the source, use [SearchTransitGatewayMulticastGroups] to verify that the source was added to the // multicast group. // // [SearchTransitGatewayMulticastGroups]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SearchTransitGatewayMulticastGroups.html -// [Multicast Considerations]: https://docs.aws.amazon.com/vpc/latest/tgw/transit-gateway-limits.html#multicast-limits +// [Multicast on transit gateways]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-multicast-overview.html func (c *Client) RegisterTransitGatewayMulticastGroupSources(ctx context.Context, params *RegisterTransitGatewayMulticastGroupSourcesInput, optFns ...func(*Options)) (*RegisterTransitGatewayMulticastGroupSourcesOutput, error) { if params == nil { params = &RegisterTransitGatewayMulticastGroupSourcesInput{} diff --git a/service/ec2/api_op_ReleaseIpamPoolAllocation.go b/service/ec2/api_op_ReleaseIpamPoolAllocation.go index 6c28924e6f8..9283baf5a49 100644 --- a/service/ec2/api_op_ReleaseIpamPoolAllocation.go +++ b/service/ec2/api_op_ReleaseIpamPoolAllocation.go @@ -20,7 +20,7 @@ import ( // All EC2 API actions follow an [eventual consistency] model. // // [Release an allocation]: https://docs.aws.amazon.com/vpc/latest/ipam/release-alloc-ipam.html -// [eventual consistency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/query-api-troubleshooting.html#eventual-consistency +// [eventual consistency]: https://docs.aws.amazon.com/ec2/latest/devguide/eventual-consistency.html // [ModifyIpamResourceCidr]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyIpamResourceCidr.html func (c *Client) ReleaseIpamPoolAllocation(ctx context.Context, params *ReleaseIpamPoolAllocationInput, optFns ...func(*Options)) (*ReleaseIpamPoolAllocationOutput, error) { if params == nil { diff --git a/service/ec2/api_op_RequestSpotInstances.go b/service/ec2/api_op_RequestSpotInstances.go index d8d54a8f8b6..9bddf388f81 100644 --- a/service/ec2/api_op_RequestSpotInstances.go +++ b/service/ec2/api_op_RequestSpotInstances.go @@ -14,13 +14,13 @@ import ( // Creates a Spot Instance request. // -// For more information, see [Spot Instance requests] in the Amazon EC2 User Guide for Linux Instances. +// For more information, see [Work with Spot Instance] in the Amazon EC2 User Guide. // // We strongly discourage using the RequestSpotInstances API because it is a // legacy API with no planned investment. For options for requesting Spot -// Instances, see [Which is the best Spot request method to use?]in the Amazon EC2 User Guide for Linux Instances. +// Instances, see [Which is the best Spot request method to use?]in the Amazon EC2 User Guide. // -// [Spot Instance requests]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html +// [Work with Spot Instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html // [Which is the best Spot request method to use?]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-best-practices.html#which-spot-request-method-to-use func (c *Client) RequestSpotInstances(ctx context.Context, params *RequestSpotInstancesInput, optFns ...func(*Options)) (*RequestSpotInstancesOutput, error) { if params == nil { @@ -66,10 +66,9 @@ type RequestSpotInstancesInput struct { BlockDurationMinutes *int32 // Unique, case-sensitive identifier that you provide to ensure the idempotency of - // the request. For more information, see [How to Ensure Idempotency]in the Amazon EC2 User Guide for Linux - // Instances. + // the request. For more information, see [Ensuring idempotency in Amazon EC2 API requests]in the Amazon EC2 User Guide. // - // [How to Ensure Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html + // [Ensuring idempotency in Amazon EC2 API requests]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html ClientToken *string // Checks whether you have the required permissions for the action, without diff --git a/service/ec2/api_op_ResetInstanceAttribute.go b/service/ec2/api_op_ResetInstanceAttribute.go index f434725c83d..727e081a652 100644 --- a/service/ec2/api_op_ResetInstanceAttribute.go +++ b/service/ec2/api_op_ResetInstanceAttribute.go @@ -17,10 +17,10 @@ import ( // // The sourceDestCheck attribute controls whether source/destination checking is // enabled. The default value is true , which means checking is enabled. This value -// must be false for a NAT instance to perform NAT. For more information, see [NAT Instances] in +// must be false for a NAT instance to perform NAT. For more information, see [NAT instances] in // the Amazon VPC User Guide. // -// [NAT Instances]: https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html +// [NAT instances]: https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html func (c *Client) ResetInstanceAttribute(ctx context.Context, params *ResetInstanceAttributeInput, optFns ...func(*Options)) (*ResetInstanceAttributeOutput, error) { if params == nil { params = &ResetInstanceAttributeInput{} diff --git a/service/ec2/api_op_RunInstances.go b/service/ec2/api_op_RunInstances.go index 224f7d35e2a..b3b7da12650 100644 --- a/service/ec2/api_op_RunInstances.go +++ b/service/ec2/api_op_RunInstances.go @@ -27,8 +27,8 @@ import ( // // - Not all instance types support IPv6 addresses. For more information, see [Instance types]. // -// - If you don't specify a security group ID, we use the default security -// group. For more information, see [Security groups]. +// - If you don't specify a security group ID, we use the default security group +// for the VPC. For more information, see [Security groups]. // // - If any of the AMIs have a product code attached for which the user has not // subscribed, the request fails. @@ -41,6 +41,9 @@ import ( // batches. For example, create five separate launch requests for 100 instances // each instead of one launch request for 500 instances. // +// RunInstances is subject to both request rate limiting and resource rate +// limiting. For more information, see [Request throttling]. +// // An instance is ready for you to use when it's in the running state. You can // check the state of your instance using DescribeInstances. You can tag instances and EBS volumes // during launch, after launch, or both. For more information, see CreateTagsand [Tagging your Amazon EC2 resources]. @@ -57,6 +60,7 @@ import ( // [Tagging your Amazon EC2 resources]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html // [launch template]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html // [Security groups]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html +// [Request throttling]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-throttling.html // [Instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html // [Troubleshooting connecting to your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html func (c *Client) RunInstances(ctx context.Context, params *RunInstancesInput, optFns ...func(*Options)) (*RunInstancesOutput, error) { @@ -76,28 +80,27 @@ func (c *Client) RunInstances(ctx context.Context, params *RunInstancesInput, op type RunInstancesInput struct { - // The maximum number of instances to launch. If you specify more instances than - // Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches the - // largest possible number of instances above MinCount . + // The maximum number of instances to launch. If you specify a value that is more + // capacity than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 + // launches the largest possible number of instances above the specified minimum + // count. // - // Constraints: Between 1 and the maximum number you're allowed for the specified - // instance type. For more information about the default limits, and how to request - // an increase, see [How many instances can I run in Amazon EC2]in the Amazon EC2 FAQ. + // Constraints: Between 1 and the quota for the specified instance type for your + // account for this Region. For more information, see [Amazon EC2 instance type quotas]. // - // [How many instances can I run in Amazon EC2]: http://aws.amazon.com/ec2/faqs/#How_many_instances_can_I_run_in_Amazon_EC2 + // [Amazon EC2 instance type quotas]: https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-instance-quotas.html // // This member is required. MaxCount *int32 - // The minimum number of instances to launch. If you specify a minimum that is - // more instances than Amazon EC2 can launch in the target Availability Zone, - // Amazon EC2 launches no instances. + // The minimum number of instances to launch. If you specify a value that is more + // capacity than Amazon EC2 can provide in the target Availability Zone, Amazon EC2 + // does not launch any instances. // - // Constraints: Between 1 and the maximum number you're allowed for the specified - // instance type. For more information about the default limits, and how to request - // an increase, see [How many instances can I run in Amazon EC2]in the Amazon EC2 General FAQ. + // Constraints: Between 1 and the quota for the specified instance type for your + // account for this Region. For more information, see [Amazon EC2 instance type quotas]. // - // [How many instances can I run in Amazon EC2]: http://aws.amazon.com/ec2/faqs/#How_many_instances_can_I_run_in_Amazon_EC2 + // [Amazon EC2 instance type quotas]: https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-instance-quotas.html // // This member is required. MinCount *int32 @@ -218,13 +221,13 @@ type RunInstancesInput struct { EnclaveOptions *types.EnclaveOptionsRequest // Indicates whether an instance is enabled for hibernation. This parameter is - // valid only if the instance meets the [hibernation prerequisites]. For more information, see [Hibernate your instance] in the Amazon + // valid only if the instance meets the [hibernation prerequisites]. For more information, see [Hibernate your Amazon EC2 instance] in the Amazon // EC2 User Guide. // // You can't enable hibernation and Amazon Web Services Nitro Enclaves on the same // instance. // - // [Hibernate your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html + // [Hibernate your Amazon EC2 instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html // [hibernation prerequisites]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html HibernationOptions *types.HibernationOptionsRequest @@ -247,9 +250,9 @@ type RunInstancesInput struct { // InstanceInterruptionBehavior is set to either hibernate or stop . InstanceMarketOptions *types.InstanceMarketOptionsRequest - // The instance type. For more information, see [Instance types] in the Amazon EC2 User Guide. + // The instance type. For more information, see [Amazon EC2 instance types] in the Amazon EC2 User Guide. // - // [Instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html + // [Amazon EC2 instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html InstanceType types.InstanceType // The number of IPv6 addresses to associate with the primary network interface. @@ -380,12 +383,11 @@ type RunInstancesInput struct { TagSpecifications []types.TagSpecification // The user data script to make available to the instance. For more information, - // see [Run commands on your Linux instance at launch]and [Run commands on your Windows instance at launch]. If you are using a command line tool, base64-encoding is performed - // for you, and you can load the text from a file. Otherwise, you must provide - // base64-encoded text. User data is limited to 16 KB. + // see [Run commands on your Amazon EC2 instance at launch]in the Amazon EC2 User Guide. If you are using a command line tool, + // base64-encoding is performed for you, and you can load the text from a file. + // Otherwise, you must provide base64-encoded text. User data is limited to 16 KB. // - // [Run commands on your Linux instance at launch]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html - // [Run commands on your Windows instance at launch]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-windows-user-data.html + // [Run commands on your Amazon EC2 instance at launch]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html UserData *string noSmithyDocumentSerde diff --git a/service/ec2/api_op_RunScheduledInstances.go b/service/ec2/api_op_RunScheduledInstances.go index d321fa016d9..67c06976143 100644 --- a/service/ec2/api_op_RunScheduledInstances.go +++ b/service/ec2/api_op_RunScheduledInstances.go @@ -19,10 +19,7 @@ import ( // You must launch a Scheduled Instance during its scheduled time period. You // can't stop or reboot a Scheduled Instance, but you can terminate it as needed. // If you terminate a Scheduled Instance before the current scheduled time period -// ends, you can launch it again after a few minutes. For more information, see [Scheduled Instances]in -// the Amazon EC2 User Guide. -// -// [Scheduled Instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-scheduled-instances.html +// ends, you can launch it again after a few minutes. func (c *Client) RunScheduledInstances(ctx context.Context, params *RunScheduledInstancesInput, optFns ...func(*Options)) (*RunScheduledInstancesOutput, error) { if params == nil { params = &RunScheduledInstancesInput{} diff --git a/service/ec2/api_op_SendDiagnosticInterrupt.go b/service/ec2/api_op_SendDiagnosticInterrupt.go index b24b5b96a40..e9604539743 100644 --- a/service/ec2/api_op_SendDiagnosticInterrupt.go +++ b/service/ec2/api_op_SendDiagnosticInterrupt.go @@ -24,10 +24,10 @@ import ( // operating system is configured to perform the required diagnostic tasks. // // For more information about configuring your operating system to generate a -// crash dump when a kernel panic or stop error occurs, see [Send a diagnostic interrupt (for advanced users)](Linux instances) or [Send a diagnostic interrupt (for advanced users)] -// (Windows instances). +// crash dump when a kernel panic or stop error occurs, see [Send a diagnostic interrupt (for advanced users)]in the Amazon EC2 User +// Guide. // -// [Send a diagnostic interrupt (for advanced users)]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/diagnostic-interrupt.html +// [Send a diagnostic interrupt (for advanced users)]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/diagnostic-interrupt.html func (c *Client) SendDiagnosticInterrupt(ctx context.Context, params *SendDiagnosticInterruptInput, optFns ...func(*Options)) (*SendDiagnosticInterruptOutput, error) { if params == nil { params = &SendDiagnosticInterruptInput{} diff --git a/service/ec2/api_op_StartInstances.go b/service/ec2/api_op_StartInstances.go index 52a903b9b64..a9b10bc5e9f 100644 --- a/service/ec2/api_op_StartInstances.go +++ b/service/ec2/api_op_StartInstances.go @@ -32,9 +32,9 @@ import ( // supported on Dedicated Hosts. Before you start the instance, either change its // CPU credit option to standard , or change its tenancy to default or dedicated . // -// For more information, see [Stop and start your instance] in the Amazon EC2 User Guide. +// For more information, see [Stop and start Amazon EC2 instances] in the Amazon EC2 User Guide. // -// [Stop and start your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html +// [Stop and start Amazon EC2 instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html func (c *Client) StartInstances(ctx context.Context, params *StartInstancesInput, optFns ...func(*Options)) (*StartInstancesOutput, error) { if params == nil { params = &StartInstancesInput{} diff --git a/service/ec2/api_op_StartNetworkInsightsAccessScopeAnalysis.go b/service/ec2/api_op_StartNetworkInsightsAccessScopeAnalysis.go index df851b99000..9727674f4b2 100644 --- a/service/ec2/api_op_StartNetworkInsightsAccessScopeAnalysis.go +++ b/service/ec2/api_op_StartNetworkInsightsAccessScopeAnalysis.go @@ -32,7 +32,7 @@ type StartNetworkInsightsAccessScopeAnalysisInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [How to ensure idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [How to ensure idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html // // This member is required. ClientToken *string diff --git a/service/ec2/api_op_StartNetworkInsightsAnalysis.go b/service/ec2/api_op_StartNetworkInsightsAnalysis.go index 4a9f947e847..5ef93fdf9cf 100644 --- a/service/ec2/api_op_StartNetworkInsightsAnalysis.go +++ b/service/ec2/api_op_StartNetworkInsightsAnalysis.go @@ -33,7 +33,7 @@ type StartNetworkInsightsAnalysisInput struct { // Unique, case-sensitive identifier that you provide to ensure the idempotency of // the request. For more information, see [How to ensure idempotency]. // - // [How to ensure idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html + // [How to ensure idempotency]: https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html // // This member is required. ClientToken *string diff --git a/service/ec2/api_op_StopInstances.go b/service/ec2/api_op_StopInstances.go index 87e44fac9cc..40ed17d347c 100644 --- a/service/ec2/api_op_StopInstances.go +++ b/service/ec2/api_op_StopInstances.go @@ -11,11 +11,11 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Stops an Amazon EBS-backed instance. For more information, see [Stop and start your instance] in the Amazon +// Stops an Amazon EBS-backed instance. For more information, see [Stop and start Amazon EC2 instances] in the Amazon // EC2 User Guide. // // You can use the Stop action to hibernate an instance if the instance is [enabled for hibernation] and it -// meets the [hibernation prerequisites]. For more information, see [Hibernate your instance] in the Amazon EC2 User Guide. +// meets the [hibernation prerequisites]. For more information, see [Hibernate your Amazon EC2 instance] in the Amazon EC2 User Guide. // // We don't charge usage for a stopped instance, or data transfer fees; however, // your root partition Amazon EBS volume remains and continues to persist your @@ -48,9 +48,9 @@ import ( // time, there may be an issue with the underlying host computer. For more // information, see [Troubleshoot stopping your instance]in the Amazon EC2 User Guide. // -// [Hibernate your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html +// [Stop and start Amazon EC2 instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html +// [Hibernate your Amazon EC2 instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html // [Troubleshoot stopping your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesStopping.html -// [Stop and start your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html // [Instance lifecycle]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-lifecycle.html // [enabled for hibernation]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enabling-hibernation.html // [Hibernating interrupted Spot Instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-interruptions.html#hibernate-spot-instances diff --git a/service/ec2/types/types.go b/service/ec2/types/types.go index 695b21f2b5d..e8da36769d1 100644 --- a/service/ec2/types/types.go +++ b/service/ec2/types/types.go @@ -308,7 +308,7 @@ type AddressAttribute struct { } // Details on the Elastic IP address transfer. For more information, see [Transfer Elastic IP addresses] in the -// Amazon Virtual Private Cloud User Guide. +// Amazon VPC User Guide. // // [Transfer Elastic IP addresses]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#transfer-EIPs-intro type AddressTransfer struct { @@ -1556,7 +1556,7 @@ type CertificateAuthenticationRequest struct { // Provides authorization for Amazon to bring a specific IP address range to a // specific Amazon Web Services account using bring your own IP addresses (BYOIP). -// For more information, see [Configuring your BYOIP address range]in the Amazon Elastic Compute Cloud User Guide. +// For more information, see [Configuring your BYOIP address range]in the Amazon EC2 User Guide. // // [Configuring your BYOIP address range]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html#prepare-for-byoip type CidrAuthorizationContext struct { @@ -2183,7 +2183,7 @@ type ConnectionNotification struct { // A security group connection tracking configuration that enables you to set the // idle timeout for connection tracking on an Elastic network interface. For more -// information, see [Connection tracking timeouts]in the Amazon Elastic Compute Cloud User Guide. +// information, see [Connection tracking timeouts]in the Amazon EC2 User Guide. // // [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts type ConnectionTrackingConfiguration struct { @@ -2208,7 +2208,7 @@ type ConnectionTrackingConfiguration struct { // A security group connection tracking specification that enables you to set the // idle timeout for connection tracking on an Elastic network interface. For more -// information, see [Connection tracking timeouts]in the Amazon Elastic Compute Cloud User Guide. +// information, see [Connection tracking timeouts]in the Amazon EC2 User Guide. // // [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts type ConnectionTrackingSpecification struct { @@ -2233,7 +2233,7 @@ type ConnectionTrackingSpecification struct { // A security group connection tracking specification request that enables you to // set the idle timeout for connection tracking on an Elastic network interface. -// For more information, see [Connection tracking timeouts]in the Amazon Elastic Compute Cloud User Guide. +// For more information, see [Connection tracking timeouts]in the Amazon EC2 User Guide. // // [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts type ConnectionTrackingSpecificationRequest struct { @@ -2258,7 +2258,7 @@ type ConnectionTrackingSpecificationRequest struct { // A security group connection tracking specification response that enables you to // set the idle timeout for connection tracking on an Elastic network interface. -// For more information, see [Connection tracking timeouts]in the Amazon Elastic Compute Cloud User Guide. +// For more information, see [Connection tracking timeouts]in the Amazon EC2 User Guide. // // [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts type ConnectionTrackingSpecificationResponse struct { @@ -3573,8 +3573,8 @@ type EgressOnlyInternetGateway struct { } // Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads -// that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, -// G4dn, or G5 instances. +// that require graphics acceleration, we recommend that you use Amazon EC2 G4, G5, +// or G6 instances. // // Describes the association between an instance and an Elastic Graphics // accelerator. @@ -3597,8 +3597,8 @@ type ElasticGpuAssociation struct { } // Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads -// that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, -// G4dn, or G5 instances. +// that require graphics acceleration, we recommend that you use Amazon EC2 G4, G5, +// or G6 instances. // // Describes the status of an Elastic Graphics accelerator. type ElasticGpuHealth struct { @@ -3610,8 +3610,8 @@ type ElasticGpuHealth struct { } // Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads -// that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, -// G4dn, or G5 instances. +// that require graphics acceleration, we recommend that you use Amazon EC2 G4, G5, +// or G6 instances. // // Describes an Elastic Graphics accelerator. type ElasticGpus struct { @@ -3641,17 +3641,13 @@ type ElasticGpus struct { } // Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads -// that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, -// G4dn, or G5 instances. +// that require graphics acceleration, we recommend that you use Amazon EC2 G4, G5, +// or G6 instances. // // A specification for an Elastic Graphics accelerator. type ElasticGpuSpecification struct { - // The type of Elastic Graphics accelerator. For more information about the values - // to specify for Type , see [Elastic Graphics Basics], specifically the Elastic Graphics accelerator - // column, in the Amazon Elastic Compute Cloud User Guide for Windows Instances. - // - // [Elastic Graphics Basics]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html#elastic-graphics-basics + // The type of Elastic Graphics accelerator. // // This member is required. Type *string @@ -5016,7 +5012,7 @@ type FlowLog struct { // // Valid Values: 60 | 600 // - // [Nitro-based instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances + // [Nitro-based instance]: https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html MaxAggregationInterval *int32 // The ID of the resource being monitored. @@ -5221,10 +5217,10 @@ type GroupIdentifier struct { } // Indicates whether your instance is configured for hibernation. This parameter -// is valid only if the instance meets the [hibernation prerequisites]. For more information, see [Hibernate your instance] in the +// is valid only if the instance meets the [hibernation prerequisites]. For more information, see [Hibernate your Amazon EC2 instance] in the // Amazon EC2 User Guide. // -// [Hibernate your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html +// [Hibernate your Amazon EC2 instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html // [hibernation prerequisites]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html type HibernationOptions struct { @@ -5236,10 +5232,10 @@ type HibernationOptions struct { } // Indicates whether your instance is configured for hibernation. This parameter -// is valid only if the instance meets the [hibernation prerequisites]. For more information, see [Hibernate your instance] in the +// is valid only if the instance meets the [hibernation prerequisites]. For more information, see [Hibernate your Amazon EC2 instance] in the // Amazon EC2 User Guide. // -// [Hibernate your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html +// [Hibernate your Amazon EC2 instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html // [hibernation prerequisites]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html type HibernationOptionsRequest struct { @@ -6778,7 +6774,7 @@ type InstanceNetworkInterface struct { // A security group connection tracking configuration that enables you to set the // timeout for connection tracking on an Elastic network interface. For more - // information, see [Connection tracking timeouts]in the Amazon Elastic Compute Cloud User Guide. + // information, see [Connection tracking timeouts]in the Amazon EC2 User Guide. // // [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts ConnectionTrackingConfiguration *ConnectionTrackingSpecificationResponse @@ -6913,7 +6909,7 @@ type InstanceNetworkInterfaceSpecification struct { // A security group connection tracking specification that enables you to set the // timeout for connection tracking on an Elastic network interface. For more - // information, see [Connection tracking timeouts]in the Amazon Elastic Compute Cloud User Guide. + // information, see [Connection tracking timeouts]in the Amazon EC2 User Guide. // // [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts ConnectionTrackingSpecification *ConnectionTrackingSpecificationRequest @@ -9132,10 +9128,9 @@ type IpRange struct { // Describes an IPv4 prefix. type Ipv4PrefixSpecification struct { - // The IPv4 prefix. For information, see [Assigning prefixes to Amazon EC2 network interfaces] in the Amazon Elastic Compute Cloud User - // Guide. + // The IPv4 prefix. For information, see [Assigning prefixes to network interfaces] in the Amazon EC2 User Guide. // - // [Assigning prefixes to Amazon EC2 network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html + // [Assigning prefixes to network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html Ipv4Prefix *string noSmithyDocumentSerde @@ -9144,10 +9139,9 @@ type Ipv4PrefixSpecification struct { // Describes the IPv4 prefix option for a network interface. type Ipv4PrefixSpecificationRequest struct { - // The IPv4 prefix. For information, see [Assigning prefixes to Amazon EC2 network interfaces] in the Amazon Elastic Compute Cloud User - // Guide. + // The IPv4 prefix. For information, see [Assigning prefixes to network interfaces] in the Amazon EC2 User Guide. // - // [Assigning prefixes to Amazon EC2 network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html + // [Assigning prefixes to network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html Ipv4Prefix *string noSmithyDocumentSerde @@ -9863,7 +9857,7 @@ type LaunchTemplateInstanceMarketOptionsRequest struct { } // The metadata options for the instance. For more information, see [Instance metadata and user data] in the Amazon -// Elastic Compute Cloud User Guide. +// EC2 User Guide. // // [Instance metadata and user data]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html type LaunchTemplateInstanceMetadataOptions struct { @@ -9923,7 +9917,7 @@ type LaunchTemplateInstanceMetadataOptions struct { } // The metadata options for the instance. For more information, see [Instance metadata and user data] in the Amazon -// Elastic Compute Cloud User Guide. +// EC2 User Guide. // // [Instance metadata and user data]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html type LaunchTemplateInstanceMetadataOptionsRequest struct { @@ -10002,9 +9996,9 @@ type LaunchTemplateInstanceNetworkInterfaceSpecification struct { // A security group connection tracking specification that enables you to set the // timeout for connection tracking on an Elastic network interface. For more - // information, see [Connection tracking timeouts]in the Amazon Elastic Compute Cloud User Guide. + // information, see [Idle connection tracking timeout]in the Amazon EC2 User Guide. // - // [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts + // [Idle connection tracking timeout]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts ConnectionTrackingSpecification *ConnectionTrackingSpecification // Indicates whether the network interface is deleted when the instance is @@ -10099,9 +10093,9 @@ type LaunchTemplateInstanceNetworkInterfaceSpecificationRequest struct { // A security group connection tracking specification that enables you to set the // timeout for connection tracking on an Elastic network interface. For more - // information, see [Connection tracking timeouts]in the Amazon Elastic Compute Cloud User Guide. + // information, see [Idle connection tracking timeout]in the Amazon EC2 User Guide. // - // [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts + // [Idle connection tracking timeout]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts ConnectionTrackingSpecification *ConnectionTrackingSpecificationRequest // Indicates whether the network interface is deleted when the instance is @@ -10125,8 +10119,7 @@ type LaunchTemplateInstanceNetworkInterfaceSpecificationRequest struct { Groups []string // The type of network interface. To create an Elastic Fabric Adapter (EFA), - // specify efa . For more information, see [Elastic Fabric Adapter] in the Amazon Elastic Compute Cloud - // User Guide. + // specify efa . For more information, see [Elastic Fabric Adapter] in the Amazon EC2 User Guide. // // If you are not creating an EFA, specify interface or omit this parameter. // @@ -11470,11 +11463,10 @@ type NatGateway struct { // The ID of the NAT gateway. NatGatewayId *string - // Reserved. If you need to sustain traffic greater than the [documented limits], contact us through - // the [Support Center]. + // Reserved. If you need to sustain traffic greater than the [documented limits], contact Amazon Web + // Services Support. // - // [documented limits]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html - // [Support Center]: https://console.aws.amazon.com/support/home? + // [documented limits]: https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-gateways ProvisionedBandwidth *ProvisionedBandwidth // The state of the NAT gateway. @@ -11544,7 +11536,7 @@ type NatGatewayAddress struct { // Describes a network ACL. type NetworkAcl struct { - // Any associations between the network ACL and one or more subnets + // Any associations between the network ACL and your subnets Associations []NetworkAclAssociation // The entries (rules) in the network ACL. @@ -11927,7 +11919,7 @@ type NetworkInterface struct { // A security group connection tracking configuration that enables you to set the // timeout for connection tracking on an Elastic network interface. For more - // information, see [Connection tracking timeouts]in the Amazon Elastic Compute Cloud User Guide. + // information, see [Connection tracking timeouts]in the Amazon EC2 User Guide. // // [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts ConnectionTrackingConfiguration *ConnectionTrackingConfiguration @@ -12318,16 +12310,16 @@ type OnDemandOptions struct { // their average CPU usage exceeds the baseline utilization, you will incur a // charge for surplus credits. The maxTotalPrice does not account for surplus // credits, and, if you use surplus credits, your final cost might be higher than - // what you specified for maxTotalPrice . For more information, see [Surplus credits can incur charges] in the EC2 - // User Guide. + // what you specified for maxTotalPrice . For more information, see [Surplus credits can incur charges] in the Amazon + // EC2 User Guide. // // [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits MaxTotalPrice *string - // The minimum target capacity for On-Demand Instances in the fleet. If the - // minimum target capacity is not reached, the fleet launches no instances. + // The minimum target capacity for On-Demand Instances in the fleet. If this + // minimum capacity isn't reached, no instances are launched. // - // Supported only for fleets of type instant . + // Constraints: Maximum value of 1000 . Supported only for fleets of type instant . // // At least one of the following must be specified: SingleAvailabilityZone | // SingleInstanceType @@ -12375,16 +12367,16 @@ type OnDemandOptionsRequest struct { // their average CPU usage exceeds the baseline utilization, you will incur a // charge for surplus credits. The MaxTotalPrice does not account for surplus // credits, and, if you use surplus credits, your final cost might be higher than - // what you specified for MaxTotalPrice . For more information, see [Surplus credits can incur charges] in the EC2 - // User Guide. + // what you specified for MaxTotalPrice . For more information, see [Surplus credits can incur charges] in the Amazon + // EC2 User Guide. // // [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits MaxTotalPrice *string - // The minimum target capacity for On-Demand Instances in the fleet. If the - // minimum target capacity is not reached, the fleet launches no instances. + // The minimum target capacity for On-Demand Instances in the fleet. If this + // minimum capacity isn't reached, no instances are launched. // - // Supported only for fleets of type instant . + // Constraints: Maximum value of 1000 . Supported only for fleets of type instant . // // At least one of the following must be specified: SingleAvailabilityZone | // SingleInstanceType @@ -13191,46 +13183,25 @@ type PropagatingVgw struct { noSmithyDocumentSerde } -// Reserved. If you need to sustain traffic greater than the [documented limits], contact us through -// the [Support Center]. +// Reserved. If you need to sustain traffic greater than the [documented limits], contact Amazon Web +// Services Support. // -// [documented limits]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html -// [Support Center]: https://console.aws.amazon.com/support/home? +// [documented limits]: https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-gateways type ProvisionedBandwidth struct { - // Reserved. If you need to sustain traffic greater than the [documented limits], contact us through - // the [Support Center]. - // - // [documented limits]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html - // [Support Center]: https://console.aws.amazon.com/support/home? + // Reserved. ProvisionTime *time.Time - // Reserved. If you need to sustain traffic greater than the [documented limits], contact us through - // the [Support Center]. - // - // [documented limits]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html - // [Support Center]: https://console.aws.amazon.com/support/home? + // Reserved. Provisioned *string - // Reserved. If you need to sustain traffic greater than the [documented limits], contact us through - // the [Support Center]. - // - // [documented limits]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html - // [Support Center]: https://console.aws.amazon.com/support/home? + // Reserved. RequestTime *time.Time - // Reserved. If you need to sustain traffic greater than the [documented limits], contact us through - // the [Support Center]. - // - // [documented limits]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html - // [Support Center]: https://console.aws.amazon.com/support/home? + // Reserved. Requested *string - // Reserved. If you need to sustain traffic greater than the [documented limits], contact us through - // the [Support Center]. - // - // [documented limits]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html - // [Support Center]: https://console.aws.amazon.com/support/home? + // Reserved. Status *string noSmithyDocumentSerde @@ -13531,19 +13502,19 @@ type RequestLaunchTemplateData struct { // attributes (instance type, platform, Availability Zone). CapacityReservationSpecification *LaunchTemplateCapacityReservationSpecificationRequest - // The CPU options for the instance. For more information, see [Optimizing CPU Options] in the Amazon - // Elastic Compute Cloud User Guide. + // The CPU options for the instance. For more information, see [Optimize CPU options] in the Amazon EC2 + // User Guide. // - // [Optimizing CPU Options]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html + // [Optimize CPU options]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html CpuOptions *LaunchTemplateCpuOptionsRequest // The credit option for CPU usage of the instance. Valid only for T instances. CreditSpecification *CreditSpecificationRequest // Indicates whether to enable the instance for stop protection. For more - // information, see [Stop protection]in the Amazon Elastic Compute Cloud User Guide. + // information, see [Enable stop protection for your instance]in the Amazon EC2 User Guide. // - // [Stop protection]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection + // [Enable stop protection for your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-stop-protection.html DisableApiStop *bool // If you set this parameter to true , you can't terminate the instance using the @@ -13595,10 +13566,10 @@ type RequestLaunchTemplateData struct { EnclaveOptions *LaunchTemplateEnclaveOptionsRequest // Indicates whether an instance is enabled for hibernation. This parameter is - // valid only if the instance meets the [hibernation prerequisites]. For more information, see [Hibernate your instance] in the Amazon - // Elastic Compute Cloud User Guide. + // valid only if the instance meets the [hibernation prerequisites]. For more information, see [Hibernate your Amazon EC2 instance] in the Amazon + // EC2 User Guide. // - // [Hibernate your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html + // [Hibernate your Amazon EC2 instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html // [hibernation prerequisites]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html HibernationOptions *LaunchTemplateHibernationOptionsRequest @@ -13624,7 +13595,7 @@ type RequestLaunchTemplateData struct { // parameter. If the launch template will be used by an EC2 Fleet or Spot Fleet, // you must specify the AMI ID. // - // For more information, see [Use a Systems Manager parameter instead of an AMI ID] in the Amazon Elastic Compute Cloud User Guide. + // For more information, see [Use a Systems Manager parameter instead of an AMI ID] in the Amazon EC2 User Guide. // // [Use a Systems Manager parameter instead of an AMI ID]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-launch-template.html#use-an-ssm-parameter-instead-of-an-ami-id ImageId *string @@ -13675,18 +13646,17 @@ type RequestLaunchTemplateData struct { // [launch instance wizard]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html InstanceRequirements *InstanceRequirementsRequest - // The instance type. For more information, see [Instance types] in the Amazon Elastic Compute - // Cloud User Guide. + // The instance type. For more information, see [Amazon EC2 instance types] in the Amazon EC2 User Guide. // // If you specify InstanceType , you can't specify InstanceRequirements . // - // [Instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html + // [Amazon EC2 instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html InstanceType InstanceType // The ID of the kernel. // // We recommend that you use PV-GRUB instead of kernels and RAM disks. For more - // information, see [User provided kernels]in the Amazon Elastic Compute Cloud User Guide. + // information, see [User provided kernels]in the Amazon EC2 User Guide. // // [User provided kernels]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html KernelId *string @@ -13707,7 +13677,7 @@ type RequestLaunchTemplateData struct { MaintenanceOptions *LaunchTemplateInstanceMaintenanceOptionsRequest // The metadata options for the instance. For more information, see [Instance metadata and user data] in the Amazon - // Elastic Compute Cloud User Guide. + // EC2 User Guide. // // [Instance metadata and user data]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html MetadataOptions *LaunchTemplateInstanceMetadataOptionsRequest @@ -13728,7 +13698,7 @@ type RequestLaunchTemplateData struct { // The ID of the RAM disk. // // We recommend that you use PV-GRUB instead of kernels and RAM disks. For more - // information, see [User provided kernels]in the Amazon Elastic Compute Cloud User Guide. + // information, see [User provided kernels]in the Amazon EC2 User Guide. // // [User provided kernels]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html RamDiskId *string @@ -13751,16 +13721,15 @@ type RequestLaunchTemplateData struct { TagSpecifications []LaunchTemplateTagSpecificationRequest // The user data to make available to the instance. You must provide - // base64-encoded text. User data is limited to 16 KB. For more information, see [Run commands on your Linux instance at launch] - // (Linux) or [Work with instance user data](Windows) in the Amazon Elastic Compute Cloud User Guide. + // base64-encoded text. User data is limited to 16 KB. For more information, see [Run commands on your Amazon EC2 instance at launch] + // in the Amazon EC2 User Guide. // // If you are creating the launch template for use with Batch, the user data must // be provided in the [MIME multi-part archive format]. For more information, see [Amazon EC2 user data in launch templates] in the Batch User Guide. // - // [Run commands on your Linux instance at launch]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html // [Amazon EC2 user data in launch templates]: https://docs.aws.amazon.com/batch/latest/userguide/launch-templates.html // [MIME multi-part archive format]: https://cloudinit.readthedocs.io/en/latest/topics/format.html#mime-multi-part-archive - // [Work with instance user data]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/instancedata-add-user-data.html + // [Run commands on your Amazon EC2 instance at launch]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html UserData *string noSmithyDocumentSerde @@ -14238,19 +14207,19 @@ type ResponseLaunchTemplateData struct { // Information about the Capacity Reservation targeting option. CapacityReservationSpecification *LaunchTemplateCapacityReservationSpecificationResponse - // The CPU options for the instance. For more information, see [Optimizing CPU options] in the Amazon - // Elastic Compute Cloud User Guide. + // The CPU options for the instance. For more information, see [Optimize CPU options] in the Amazon EC2 + // User Guide. // - // [Optimizing CPU options]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html + // [Optimize CPU options]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html CpuOptions *LaunchTemplateCpuOptions // The credit option for CPU usage of the instance. CreditSpecification *CreditSpecification // Indicates whether the instance is enabled for stop protection. For more - // information, see [Stop protection]in the Amazon Elastic Compute Cloud User Guide. + // information, see [Enable stop protection for your instance]in the Amazon EC2 User Guide. // - // [Stop protection]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection + // [Enable stop protection for your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-stop-protection.html DisableApiStop *bool // If set to true , indicates that the instance cannot be terminated using the @@ -14287,9 +14256,9 @@ type ResponseLaunchTemplateData struct { EnclaveOptions *LaunchTemplateEnclaveOptions // Indicates whether an instance is configured for hibernation. For more - // information, see [Hibernate your instance]in the Amazon Elastic Compute Cloud User Guide. + // information, see [Hibernate your Amazon EC2 instance]in the Amazon EC2 User Guide. // - // [Hibernate your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html + // [Hibernate your Amazon EC2 instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html HibernationOptions *LaunchTemplateHibernationOptions // The IAM instance profile. @@ -14309,7 +14278,7 @@ type ResponseLaunchTemplateData struct { // - If a Systems Manager parameter was specified in the request, and // ResolveAlias was configured as false , then this is the parameter value. // - // For more information, see [Use a Systems Manager parameter instead of an AMI ID] in the Amazon Elastic Compute Cloud User Guide. + // For more information, see [Use a Systems Manager parameter instead of an AMI ID] in the Amazon EC2 User Guide. // // [Use a Systems Manager parameter instead of an AMI ID]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#use-an-ssm-parameter-instead-of-an-ami-id ImageId *string @@ -14343,7 +14312,7 @@ type ResponseLaunchTemplateData struct { MaintenanceOptions *LaunchTemplateInstanceMaintenanceOptions // The metadata options for the instance. For more information, see [Instance metadata and user data] in the Amazon - // Elastic Compute Cloud User Guide. + // EC2 User Guide. // // [Instance metadata and user data]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html MetadataOptions *LaunchTemplateInstanceMetadataOptions @@ -14445,7 +14414,7 @@ type Route struct { // Describes a route table. type RouteTable struct { - // The associations between the route table and one or more subnets or a gateway. + // The associations between the route table and your subnets or gateways. Associations []RouteTableAssociation // The ID of the Amazon Web Services account that owns the route table. @@ -15373,8 +15342,8 @@ type Snapshot struct { // Indicates whether the snapshot is encrypted. Encrypted *bool - // The Amazon Resource Name (ARN) of the Key Management Service (KMS) KMS key that - // was used to protect the volume encryption key for the parent volume. + // The Amazon Resource Name (ARN) of the KMS key that was used to protect the + // volume encryption key for the parent volume. KmsKeyId *string // The ARN of the Outpost on which the snapshot is stored. For more information, @@ -15412,9 +15381,9 @@ type Snapshot struct { State SnapshotState // Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy - // operation fails (for example, if the proper Key Management Service (KMS) - // permissions are not obtained) this field displays error state details to help - // you diagnose why the error occurred. This parameter is only returned by DescribeSnapshots. + // operation fails (for example, if the proper KMS permissions are not obtained) + // this field displays error state details to help you diagnose why the error + // occurred. This parameter is only returned by DescribeSnapshots. StateMessage *string // The storage tier in which the snapshot is stored. standard indicates that the @@ -15649,7 +15618,7 @@ type SnapshotTierStatus struct { // The Spot Instance replacement strategy to use when Amazon EC2 emits a signal // that your Spot Instance is at an elevated risk of being interrupted. For more -// information, see [Capacity rebalancing]in the Amazon EC2 User Guide for Linux Instances. +// information, see [Capacity rebalancing]in the Amazon EC2 User Guide. // // [Capacity rebalancing]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html type SpotCapacityRebalance struct { @@ -15900,15 +15869,19 @@ type SpotFleetRequestConfigData struct { // diversified Spot Fleet requests instances from all of the Spot Instance pools // that you specify. // - // lowestPrice Spot Fleet requests instances from the lowest priced Spot Instance - // pool that has available capacity. If the lowest priced pool doesn't have - // available capacity, the Spot Instances come from the next lowest priced pool - // that has available capacity. If a pool runs out of capacity before fulfilling - // your desired capacity, Spot Fleet will continue to fulfill your request by - // drawing from the next lowest priced pool. To ensure that your desired capacity - // is met, you might receive Spot Instances from several pools. Because this - // strategy only considers instance price and not capacity availability, it might - // lead to high interruption rates. + // lowestPrice (not recommended) We don't recommend the lowestPrice allocation + // strategy because it has the highest risk of interruption for your Spot + // Instances. + // + // Spot Fleet requests instances from the lowest priced Spot Instance pool that + // has available capacity. If the lowest priced pool doesn't have available + // capacity, the Spot Instances come from the next lowest priced pool that has + // available capacity. If a pool runs out of capacity before fulfilling your + // desired capacity, Spot Fleet will continue to fulfill your request by drawing + // from the next lowest priced pool. To ensure that your desired capacity is met, + // you might receive Spot Instances from several pools. Because this strategy only + // considers instance price and not capacity availability, it might lead to high + // interruption rates. // // Default: lowestPrice // @@ -16003,7 +15976,7 @@ type SpotFleetRequestConfigData struct { // charge for surplus credits. The onDemandMaxTotalPrice does not account for // surplus credits, and, if you use surplus credits, your final cost might be // higher than what you specified for onDemandMaxTotalPrice . For more information, - // see [Surplus credits can incur charges]in the EC2 User Guide. + // see [Surplus credits can incur charges]in the Amazon EC2 User Guide. // // [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits OnDemandMaxTotalPrice *string @@ -16035,7 +16008,7 @@ type SpotFleetRequestConfigData struct { // charge for surplus credits. The spotMaxTotalPrice does not account for surplus // credits, and, if you use surplus credits, your final cost might be higher than // what you specified for spotMaxTotalPrice . For more information, see [Surplus credits can incur charges] in the - // EC2 User Guide. + // Amazon EC2 User Guide. // // [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits SpotMaxTotalPrice *string @@ -16164,7 +16137,7 @@ type SpotInstanceRequest struct { // The state of the Spot Instance request. Spot request status information helps // track your Spot Instance requests. For more information, see [Spot request status]in the Amazon EC2 - // User Guide for Linux Instances. + // User Guide. // // [Spot request status]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html State SpotInstanceState @@ -16212,8 +16185,7 @@ type SpotInstanceStateFault struct { // Describes the status of a Spot Instance request. type SpotInstanceStatus struct { - // The status code. For a list of status codes, see [Spot request status codes] in the Amazon EC2 User Guide - // for Linux Instances. + // The status code. For a list of status codes, see [Spot request status codes] in the Amazon EC2 User Guide. // // [Spot request status codes]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html#spot-instance-request-status-understand Code *string @@ -16234,7 +16206,7 @@ type SpotMaintenanceStrategies struct { // The Spot Instance replacement strategy to use when Amazon EC2 emits a signal // that your Spot Instance is at an elevated risk of being interrupted. For more - // information, see [Capacity rebalancing]in the Amazon EC2 User Guide for Linux Instances. + // information, see [Capacity rebalancing]in the Amazon EC2 User Guide. // // [Capacity rebalancing]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html CapacityRebalance *SpotCapacityRebalance @@ -16323,15 +16295,19 @@ type SpotOptions struct { // diversified EC2 Fleet requests instances from all of the Spot Instance pools // that you specify. // - // lowest-price EC2 Fleet requests instances from the lowest priced Spot Instance - // pool that has available capacity. If the lowest priced pool doesn't have - // available capacity, the Spot Instances come from the next lowest priced pool - // that has available capacity. If a pool runs out of capacity before fulfilling - // your desired capacity, EC2 Fleet will continue to fulfill your request by - // drawing from the next lowest priced pool. To ensure that your desired capacity - // is met, you might receive Spot Instances from several pools. Because this - // strategy only considers instance price and not capacity availability, it might - // lead to high interruption rates. + // lowest-price (not recommended) We don't recommend the lowest-price allocation + // strategy because it has the highest risk of interruption for your Spot + // Instances. + // + // EC2 Fleet requests instances from the lowest priced Spot Instance pool that has + // available capacity. If the lowest priced pool doesn't have available capacity, + // the Spot Instances come from the next lowest priced pool that has available + // capacity. If a pool runs out of capacity before fulfilling your desired + // capacity, EC2 Fleet will continue to fulfill your request by drawing from the + // next lowest priced pool. To ensure that your desired capacity is met, you might + // receive Spot Instances from several pools. Because this strategy only considers + // instance price and not capacity availability, it might lead to high interruption + // rates. // // Default: lowest-price // @@ -16374,16 +16350,16 @@ type SpotOptions struct { // their average CPU usage exceeds the baseline utilization, you will incur a // charge for surplus credits. The maxTotalPrice does not account for surplus // credits, and, if you use surplus credits, your final cost might be higher than - // what you specified for maxTotalPrice . For more information, see [Surplus credits can incur charges] in the EC2 - // User Guide. + // what you specified for maxTotalPrice . For more information, see [Surplus credits can incur charges] in the Amazon + // EC2 User Guide. // // [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits MaxTotalPrice *string - // The minimum target capacity for Spot Instances in the fleet. If the minimum - // target capacity is not reached, the fleet launches no instances. + // The minimum target capacity for Spot Instances in the fleet. If this minimum + // capacity isn't reached, no instances are launched. // - // Supported only for fleets of type instant . + // Constraints: Maximum value of 1000 . Supported only for fleets of type instant . // // At least one of the following must be specified: SingleAvailabilityZone | // SingleInstanceType @@ -16433,15 +16409,19 @@ type SpotOptionsRequest struct { // diversified EC2 Fleet requests instances from all of the Spot Instance pools // that you specify. // - // lowest-price EC2 Fleet requests instances from the lowest priced Spot Instance - // pool that has available capacity. If the lowest priced pool doesn't have - // available capacity, the Spot Instances come from the next lowest priced pool - // that has available capacity. If a pool runs out of capacity before fulfilling - // your desired capacity, EC2 Fleet will continue to fulfill your request by - // drawing from the next lowest priced pool. To ensure that your desired capacity - // is met, you might receive Spot Instances from several pools. Because this - // strategy only considers instance price and not capacity availability, it might - // lead to high interruption rates. + // lowest-price (not recommended) We don't recommend the lowest-price allocation + // strategy because it has the highest risk of interruption for your Spot + // Instances. + // + // EC2 Fleet requests instances from the lowest priced Spot Instance pool that has + // available capacity. If the lowest priced pool doesn't have available capacity, + // the Spot Instances come from the next lowest priced pool that has available + // capacity. If a pool runs out of capacity before fulfilling your desired + // capacity, EC2 Fleet will continue to fulfill your request by drawing from the + // next lowest priced pool. To ensure that your desired capacity is met, you might + // receive Spot Instances from several pools. Because this strategy only considers + // instance price and not capacity availability, it might lead to high interruption + // rates. // // Default: lowest-price // @@ -16484,16 +16464,16 @@ type SpotOptionsRequest struct { // their average CPU usage exceeds the baseline utilization, you will incur a // charge for surplus credits. The MaxTotalPrice does not account for surplus // credits, and, if you use surplus credits, your final cost might be higher than - // what you specified for MaxTotalPrice . For more information, see [Surplus credits can incur charges] in the EC2 - // User Guide. + // what you specified for MaxTotalPrice . For more information, see [Surplus credits can incur charges] in the Amazon + // EC2 User Guide. // // [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits MaxTotalPrice *string - // The minimum target capacity for Spot Instances in the fleet. If the minimum - // target capacity is not reached, the fleet launches no instances. + // The minimum target capacity for Spot Instances in the fleet. If this minimum + // capacity isn't reached, no instances are launched. // - // Supported only for fleets of type instant . + // Constraints: Maximum value of 1000 . Supported only for fleets of type instant . // // At least one of the following must be specified: SingleAvailabilityZone | // SingleInstanceType @@ -19177,8 +19157,8 @@ type Volume struct { // rate at which the volume accumulates I/O credits for bursting. Iops *int32 - // The Amazon Resource Name (ARN) of the Key Management Service (KMS) KMS key that - // was used to protect the volume encryption key for the volume. + // The Amazon Resource Name (ARN) of the KMS key that was used to protect the + // volume encryption key for the volume. KmsKeyId *string // Indicates whether Amazon EBS Multi-Attach is enabled. diff --git a/service/macie2/api_op_BatchUpdateAutomatedDiscoveryAccounts.go b/service/macie2/api_op_BatchUpdateAutomatedDiscoveryAccounts.go new file mode 100644 index 00000000000..f71e601ffd6 --- /dev/null +++ b/service/macie2/api_op_BatchUpdateAutomatedDiscoveryAccounts.go @@ -0,0 +1,140 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package macie2 + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/macie2/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Changes the status of automated sensitive data discovery for one or more +// accounts. +func (c *Client) BatchUpdateAutomatedDiscoveryAccounts(ctx context.Context, params *BatchUpdateAutomatedDiscoveryAccountsInput, optFns ...func(*Options)) (*BatchUpdateAutomatedDiscoveryAccountsOutput, error) { + if params == nil { + params = &BatchUpdateAutomatedDiscoveryAccountsInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "BatchUpdateAutomatedDiscoveryAccounts", params, optFns, c.addOperationBatchUpdateAutomatedDiscoveryAccountsMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*BatchUpdateAutomatedDiscoveryAccountsOutput) + out.ResultMetadata = metadata + return out, nil +} + +type BatchUpdateAutomatedDiscoveryAccountsInput struct { + + // An array of objects, one for each account to change the status of automated + // sensitive data discovery for. Each object specifies the Amazon Web Services + // account ID for an account and a new status for that account. + Accounts []types.AutomatedDiscoveryAccountUpdate + + noSmithyDocumentSerde +} + +type BatchUpdateAutomatedDiscoveryAccountsOutput struct { + + // An array of objects, one for each account whose status wasn’t changed. Each + // object identifies the account and explains why the status of automated sensitive + // data discovery wasn’t changed for the account. This value is null if the request + // succeeded for all specified accounts. + Errors []types.AutomatedDiscoveryAccountUpdateError + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationBatchUpdateAutomatedDiscoveryAccountsMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpBatchUpdateAutomatedDiscoveryAccounts{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpBatchUpdateAutomatedDiscoveryAccounts{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "BatchUpdateAutomatedDiscoveryAccounts"); 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 = 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 = stack.Initialize.Add(newServiceMetadataMiddleware_opBatchUpdateAutomatedDiscoveryAccounts(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 + } + return nil +} + +func newServiceMetadataMiddleware_opBatchUpdateAutomatedDiscoveryAccounts(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "BatchUpdateAutomatedDiscoveryAccounts", + } +} diff --git a/service/macie2/api_op_CreateClassificationJob.go b/service/macie2/api_op_CreateClassificationJob.go index 902769cb4a1..085bb4c2383 100644 --- a/service/macie2/api_op_CreateClassificationJob.go +++ b/service/macie2/api_op_CreateClassificationJob.go @@ -41,7 +41,7 @@ type CreateClassificationJobInput struct { // a value for the scheduleFrequency property. // // - SCHEDULED - Run the job on a daily, weekly, or monthly basis. If you - // specify this value, use the scheduleFrequency property to define the recurrence + // specify this value, use the scheduleFrequency property to specify the recurrence // pattern for the job. // // This member is required. @@ -119,8 +119,8 @@ type CreateClassificationJobInput struct { // job, each job run automatically uses all the managed data identifiers that are // in the recommended set when the run starts. // - // For information about individual managed data identifiers or to determine which - // ones are in the recommended set, see [Using managed data identifiers]and [Recommended managed data identifiers] in the Amazon Macie User Guide. + // To learn about individual managed data identifiers or determine which ones are + // in the recommended set, see [Using managed data identifiers]or [Recommended managed data identifiers] in the Amazon Macie User Guide. // // [Using managed data identifiers]: https://docs.aws.amazon.com/macie/latest/user/managed-data-identifiers.html // [Recommended managed data identifiers]: https://docs.aws.amazon.com/macie/latest/user/discovery-jobs-mdis-recommended.html diff --git a/service/macie2/api_op_DescribeClassificationJob.go b/service/macie2/api_op_DescribeClassificationJob.go index 4135a2fb2a5..4121f741a80 100644 --- a/service/macie2/api_op_DescribeClassificationJob.go +++ b/service/macie2/api_op_DescribeClassificationJob.go @@ -40,8 +40,8 @@ type DescribeClassificationJobInput struct { type DescribeClassificationJobOutput struct { - // An array of unique identifiers, one for each allow list that the job uses when - // it analyzes data. + // An array of unique identifiers, one for each allow list that the job is + // configured to use when it analyzes data. AllowListIds []string // The token that was provided to ensure the idempotency of the request to create @@ -53,8 +53,8 @@ type DescribeClassificationJobOutput struct { CreatedAt *time.Time // An array of unique identifiers, one for each custom data identifier that the - // job uses when it analyzes data. This value is null if the job uses only managed - // data identifiers to analyze data. + // job is configured to use when it analyzes data. This value is null if the job is + // configured to use only managed data identifiers to analyze data. CustomDataIdentifierIds []string // The custom description of the job. @@ -148,8 +148,8 @@ type DescribeClassificationJobOutput struct { // is null or RECOMMENDED for a recurring job, each job run uses all the managed // data identifiers that are in the recommended set when the run starts. // - // For information about individual managed data identifiers or to determine which - // ones are in the recommended set, see [Using managed data identifiers]and [Recommended managed data identifiers] in the Amazon Macie User Guide. + // To learn about individual managed data identifiers or determine which ones are + // in the recommended set, see [Using managed data identifiers]or [Recommended managed data identifiers] in the Amazon Macie User Guide. // // [Using managed data identifiers]: https://docs.aws.amazon.com/macie/latest/user/managed-data-identifiers.html // [Recommended managed data identifiers]: https://docs.aws.amazon.com/macie/latest/user/discovery-jobs-mdis-recommended.html @@ -175,7 +175,7 @@ type DescribeClassificationJobOutput struct { Statistics *types.Statistics // A map of key-value pairs that specifies which tags (keys and values) are - // associated with the classification job. + // associated with the job. Tags map[string]string // If the current status of the job is USER_PAUSED, specifies when the job was diff --git a/service/macie2/api_op_GetAutomatedDiscoveryConfiguration.go b/service/macie2/api_op_GetAutomatedDiscoveryConfiguration.go index c2a78405be2..3cf392412ff 100644 --- a/service/macie2/api_op_GetAutomatedDiscoveryConfiguration.go +++ b/service/macie2/api_op_GetAutomatedDiscoveryConfiguration.go @@ -13,7 +13,7 @@ import ( ) // Retrieves the configuration settings and status of automated sensitive data -// discovery for an account. +// discovery for an organization or standalone account. func (c *Client) GetAutomatedDiscoveryConfiguration(ctx context.Context, params *GetAutomatedDiscoveryConfigurationInput, optFns ...func(*Options)) (*GetAutomatedDiscoveryConfigurationOutput, error) { if params == nil { params = &GetAutomatedDiscoveryConfigurationInput{} @@ -35,37 +35,42 @@ type GetAutomatedDiscoveryConfigurationInput struct { type GetAutomatedDiscoveryConfigurationOutput struct { + // Specifies whether automated sensitive data discovery is enabled automatically + // for accounts in the organization. Possible values are: ALL, enable it for all + // existing accounts and new member accounts; NEW, enable it only for new member + // accounts; and, NONE, don't enable it for any accounts. + AutoEnableOrganizationMembers types.AutoEnableMode + // The unique identifier for the classification scope that's used when performing - // automated sensitive data discovery for the account. The classification scope - // specifies S3 buckets to exclude from automated sensitive data discovery. + // automated sensitive data discovery. The classification scope specifies S3 + // buckets to exclude from analyses. ClassificationScopeId *string // The date and time, in UTC and extended ISO 8601 format, when automated - // sensitive data discovery was most recently disabled for the account. This value - // is null if automated sensitive data discovery wasn't enabled and subsequently - // disabled for the account. + // sensitive data discovery was most recently disabled. This value is null if + // automated sensitive data discovery is currently enabled. DisabledAt *time.Time // The date and time, in UTC and extended ISO 8601 format, when automated - // sensitive data discovery was initially enabled for the account. This value is - // null if automated sensitive data discovery has never been enabled for the - // account. + // sensitive data discovery was initially enabled. This value is null if automated + // sensitive data discovery has never been enabled. FirstEnabledAt *time.Time - // The date and time, in UTC and extended ISO 8601 format, when automated - // sensitive data discovery was most recently enabled or disabled for the account. + // The date and time, in UTC and extended ISO 8601 format, when the configuration + // settings or status of automated sensitive data discovery was most recently + // changed. LastUpdatedAt *time.Time // The unique identifier for the sensitivity inspection template that's used when - // performing automated sensitive data discovery for the account. The template - // specifies which allow lists, custom data identifiers, and managed data - // identifiers to use when analyzing data. + // performing automated sensitive data discovery. The template specifies which + // allow lists, custom data identifiers, and managed data identifiers to use when + // analyzing data. SensitivityInspectionTemplateId *string - // The current status of the automated sensitive data discovery configuration for - // the account. Possible values are: ENABLED, use the specified settings to perform - // automated sensitive data discovery activities for the account; and, DISABLED, - // don't perform automated sensitive data discovery activities for the account. + // The current status of automated sensitive data discovery for the organization + // or account. Possible values are: ENABLED, use the specified settings to perform + // automated sensitive data discovery activities; and, DISABLED, don't perform + // automated sensitive data discovery activities. Status types.AutomatedDiscoveryStatus // Metadata pertaining to the operation's result. diff --git a/service/macie2/api_op_GetSensitivityInspectionTemplate.go b/service/macie2/api_op_GetSensitivityInspectionTemplate.go index e91da529788..43a88a74b58 100644 --- a/service/macie2/api_op_GetSensitivityInspectionTemplate.go +++ b/service/macie2/api_op_GetSensitivityInspectionTemplate.go @@ -43,11 +43,11 @@ type GetSensitivityInspectionTemplateOutput struct { Description *string // The managed data identifiers that are explicitly excluded (not used) when - // analyzing data. + // performing automated sensitive data discovery. Excludes *types.SensitivityInspectionTemplateExcludes // The allow lists, custom data identifiers, and managed data identifiers that are - // explicitly included (used) when analyzing data. + // explicitly included (used) when performing automated sensitive data discovery. Includes *types.SensitivityInspectionTemplateIncludes // The name of the template: automated-sensitive-data-discovery. diff --git a/service/macie2/api_op_ListAutomatedDiscoveryAccounts.go b/service/macie2/api_op_ListAutomatedDiscoveryAccounts.go new file mode 100644 index 00000000000..df01bffe94a --- /dev/null +++ b/service/macie2/api_op_ListAutomatedDiscoveryAccounts.go @@ -0,0 +1,245 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package macie2 + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/macie2/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Retrieves the status of automated sensitive data discovery for one or more +// accounts. +func (c *Client) ListAutomatedDiscoveryAccounts(ctx context.Context, params *ListAutomatedDiscoveryAccountsInput, optFns ...func(*Options)) (*ListAutomatedDiscoveryAccountsOutput, error) { + if params == nil { + params = &ListAutomatedDiscoveryAccountsInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "ListAutomatedDiscoveryAccounts", params, optFns, c.addOperationListAutomatedDiscoveryAccountsMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*ListAutomatedDiscoveryAccountsOutput) + out.ResultMetadata = metadata + return out, nil +} + +type ListAutomatedDiscoveryAccountsInput struct { + + // The Amazon Web Services account ID for each account, for as many as 50 + // accounts. To retrieve the status for multiple accounts, append the accountIds + // parameter and argument for each account, separated by an ampersand (&). To + // retrieve the status for all the accounts in an organization, omit this + // parameter. + AccountIds []string + + // The maximum number of items to include in each page of a paginated response. + MaxResults *int32 + + // The nextToken string that specifies which page of results to return in a + // paginated response. + NextToken *string + + noSmithyDocumentSerde +} + +type ListAutomatedDiscoveryAccountsOutput struct { + + // An array of objects, one for each account specified in the request. Each object + // specifies the Amazon Web Services account ID for an account and the current + // status of automated sensitive data discovery for that account. + Items []types.AutomatedDiscoveryAccount + + // The string to use in a subsequent request to get the next page of results in a + // paginated response. This value is null if there are no additional pages. + NextToken *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationListAutomatedDiscoveryAccountsMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpListAutomatedDiscoveryAccounts{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListAutomatedDiscoveryAccounts{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "ListAutomatedDiscoveryAccounts"); 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 = 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 = stack.Initialize.Add(newServiceMetadataMiddleware_opListAutomatedDiscoveryAccounts(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 + } + return nil +} + +// ListAutomatedDiscoveryAccountsAPIClient is a client that implements the +// ListAutomatedDiscoveryAccounts operation. +type ListAutomatedDiscoveryAccountsAPIClient interface { + ListAutomatedDiscoveryAccounts(context.Context, *ListAutomatedDiscoveryAccountsInput, ...func(*Options)) (*ListAutomatedDiscoveryAccountsOutput, error) +} + +var _ ListAutomatedDiscoveryAccountsAPIClient = (*Client)(nil) + +// ListAutomatedDiscoveryAccountsPaginatorOptions is the paginator options for +// ListAutomatedDiscoveryAccounts +type ListAutomatedDiscoveryAccountsPaginatorOptions struct { + // The maximum number of items to include in each page of a paginated response. + 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 +} + +// ListAutomatedDiscoveryAccountsPaginator is a paginator for +// ListAutomatedDiscoveryAccounts +type ListAutomatedDiscoveryAccountsPaginator struct { + options ListAutomatedDiscoveryAccountsPaginatorOptions + client ListAutomatedDiscoveryAccountsAPIClient + params *ListAutomatedDiscoveryAccountsInput + nextToken *string + firstPage bool +} + +// NewListAutomatedDiscoveryAccountsPaginator returns a new +// ListAutomatedDiscoveryAccountsPaginator +func NewListAutomatedDiscoveryAccountsPaginator(client ListAutomatedDiscoveryAccountsAPIClient, params *ListAutomatedDiscoveryAccountsInput, optFns ...func(*ListAutomatedDiscoveryAccountsPaginatorOptions)) *ListAutomatedDiscoveryAccountsPaginator { + if params == nil { + params = &ListAutomatedDiscoveryAccountsInput{} + } + + options := ListAutomatedDiscoveryAccountsPaginatorOptions{} + if params.MaxResults != nil { + options.Limit = *params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &ListAutomatedDiscoveryAccountsPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *ListAutomatedDiscoveryAccountsPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next ListAutomatedDiscoveryAccounts page. +func (p *ListAutomatedDiscoveryAccountsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListAutomatedDiscoveryAccountsOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + var limit *int32 + if p.options.Limit > 0 { + limit = &p.options.Limit + } + params.MaxResults = limit + + result, err := p.client.ListAutomatedDiscoveryAccounts(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + +func newServiceMetadataMiddleware_opListAutomatedDiscoveryAccounts(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "ListAutomatedDiscoveryAccounts", + } +} diff --git a/service/macie2/api_op_ListInvitations.go b/service/macie2/api_op_ListInvitations.go index 5d6d4c22678..7b1b5b2164f 100644 --- a/service/macie2/api_op_ListInvitations.go +++ b/service/macie2/api_op_ListInvitations.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Retrieves information about the Amazon Macie membership invitations that were +// Retrieves information about Amazon Macie membership invitations that were // received by an account. func (c *Client) ListInvitations(ctx context.Context, params *ListInvitationsInput, optFns ...func(*Options)) (*ListInvitationsOutput, error) { if params == nil { diff --git a/service/macie2/api_op_ListResourceProfileArtifacts.go b/service/macie2/api_op_ListResourceProfileArtifacts.go index 94e1e7b6e90..3d3f54b78fd 100644 --- a/service/macie2/api_op_ListResourceProfileArtifacts.go +++ b/service/macie2/api_op_ListResourceProfileArtifacts.go @@ -11,8 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Retrieves information about objects that were selected from an S3 bucket for -// automated sensitive data discovery. +// Retrieves information about objects that Amazon Macie selected from an S3 +// bucket for automated sensitive data discovery. func (c *Client) ListResourceProfileArtifacts(ctx context.Context, params *ListResourceProfileArtifactsInput, optFns ...func(*Options)) (*ListResourceProfileArtifactsOutput, error) { if params == nil { params = &ListResourceProfileArtifactsInput{} diff --git a/service/macie2/api_op_PutClassificationExportConfiguration.go b/service/macie2/api_op_PutClassificationExportConfiguration.go index 66d66e63b9f..b1012982fb3 100644 --- a/service/macie2/api_op_PutClassificationExportConfiguration.go +++ b/service/macie2/api_op_PutClassificationExportConfiguration.go @@ -11,7 +11,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates or updates the configuration settings for storing data classification +// Adds or updates the configuration settings for storing data classification // results. func (c *Client) PutClassificationExportConfiguration(ctx context.Context, params *PutClassificationExportConfigurationInput, optFns ...func(*Options)) (*PutClassificationExportConfigurationOutput, error) { if params == nil { diff --git a/service/macie2/api_op_TestCustomDataIdentifier.go b/service/macie2/api_op_TestCustomDataIdentifier.go index faad9304e5d..914d2c8549c 100644 --- a/service/macie2/api_op_TestCustomDataIdentifier.go +++ b/service/macie2/api_op_TestCustomDataIdentifier.go @@ -10,7 +10,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Tests a custom data identifier. +// Tests criteria for a custom data identifier. func (c *Client) TestCustomDataIdentifier(ctx context.Context, params *TestCustomDataIdentifierInput, optFns ...func(*Options)) (*TestCustomDataIdentifierOutput, error) { if params == nil { params = &TestCustomDataIdentifierInput{} diff --git a/service/macie2/api_op_UpdateAutomatedDiscoveryConfiguration.go b/service/macie2/api_op_UpdateAutomatedDiscoveryConfiguration.go index abc20ed16c2..2ce38cb03d0 100644 --- a/service/macie2/api_op_UpdateAutomatedDiscoveryConfiguration.go +++ b/service/macie2/api_op_UpdateAutomatedDiscoveryConfiguration.go @@ -11,7 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Enables or disables automated sensitive data discovery for an account. +// Changes the configuration settings and status of automated sensitive data +// discovery for an organization or standalone account. func (c *Client) UpdateAutomatedDiscoveryConfiguration(ctx context.Context, params *UpdateAutomatedDiscoveryConfigurationInput, optFns ...func(*Options)) (*UpdateAutomatedDiscoveryConfigurationOutput, error) { if params == nil { params = &UpdateAutomatedDiscoveryConfigurationInput{} @@ -29,21 +30,29 @@ func (c *Client) UpdateAutomatedDiscoveryConfiguration(ctx context.Context, para type UpdateAutomatedDiscoveryConfigurationInput struct { - // The new status of automated sensitive data discovery for the account. Valid - // values are: ENABLED, start or resume automated sensitive data discovery - // activities for the account; and, DISABLED, stop performing automated sensitive - // data discovery activities for the account. + // The new status of automated sensitive data discovery for the organization or + // account. Valid values are: ENABLED, start or resume all automated sensitive data + // discovery activities; and, DISABLED, stop performing all automated sensitive + // data discovery activities. // - // When you enable automated sensitive data discovery for the first time, Amazon - // Macie uses default configuration settings to determine which data sources to - // analyze and which managed data identifiers to use. To change these settings, use - // the UpdateClassificationScope and UpdateSensitivityInspectionTemplate - // operations, respectively. If you change the settings and subsequently disable - // the configuration, Amazon Macie retains your changes. + // If you specify DISABLED for an administrator account, you also disable + // automated sensitive data discovery for all member accounts in the organization. // // This member is required. Status types.AutomatedDiscoveryStatus + // Specifies whether to automatically enable automated sensitive data discovery + // for accounts in the organization. Valid values are: ALL (default), enable it for + // all existing accounts and new member accounts; NEW, enable it only for new + // member accounts; and, NONE, don't enable it for any accounts. + // + // If you specify NEW or NONE, automated sensitive data discovery continues to be + // enabled for any existing accounts that it's currently enabled for. To enable or + // disable it for individual member accounts, specify NEW or NONE, and then enable + // or disable it for each account by using the + // BatchUpdateAutomatedDiscoveryAccounts operation. + AutoEnableOrganizationMembers types.AutoEnableMode + noSmithyDocumentSerde } diff --git a/service/macie2/api_op_UpdateOrganizationConfiguration.go b/service/macie2/api_op_UpdateOrganizationConfiguration.go index daeab7afdcf..993b1a6f8d0 100644 --- a/service/macie2/api_op_UpdateOrganizationConfiguration.go +++ b/service/macie2/api_op_UpdateOrganizationConfiguration.go @@ -29,8 +29,8 @@ func (c *Client) UpdateOrganizationConfiguration(ctx context.Context, params *Up type UpdateOrganizationConfigurationInput struct { - // Specifies whether to enable Amazon Macie automatically for an account when the - // account is added to the organization in Organizations. + // Specifies whether to enable Amazon Macie automatically for accounts that are + // added to the organization in Organizations. // // This member is required. AutoEnable *bool diff --git a/service/macie2/api_op_UpdateSensitivityInspectionTemplate.go b/service/macie2/api_op_UpdateSensitivityInspectionTemplate.go index 7f095698bf9..296aa1f1104 100644 --- a/service/macie2/api_op_UpdateSensitivityInspectionTemplate.go +++ b/service/macie2/api_op_UpdateSensitivityInspectionTemplate.go @@ -38,8 +38,8 @@ type UpdateSensitivityInspectionTemplateInput struct { // 200 characters. Description *string - // The managed data identifiers to explicitly exclude (not use) when analyzing - // data. + // The managed data identifiers to explicitly exclude (not use) when performing + // automated sensitive data discovery. // // To exclude an allow list or custom data identifier that's currently included by // the template, update the values for the @@ -49,7 +49,7 @@ type UpdateSensitivityInspectionTemplateInput struct { Excludes *types.SensitivityInspectionTemplateExcludes // The allow lists, custom data identifiers, and managed data identifiers to - // explicitly include (use) when analyzing data. + // explicitly include (use) when performing automated sensitive data discovery. Includes *types.SensitivityInspectionTemplateIncludes noSmithyDocumentSerde diff --git a/service/macie2/deserializers.go b/service/macie2/deserializers.go index 7de97ff7349..1ac1a55a798 100644 --- a/service/macie2/deserializers.go +++ b/service/macie2/deserializers.go @@ -300,6 +300,165 @@ func awsRestjson1_deserializeOpDocumentBatchGetCustomDataIdentifiersOutput(v **B return nil } +type awsRestjson1_deserializeOpBatchUpdateAutomatedDiscoveryAccounts struct { +} + +func (*awsRestjson1_deserializeOpBatchUpdateAutomatedDiscoveryAccounts) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpBatchUpdateAutomatedDiscoveryAccounts) 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 + } + + 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, awsRestjson1_deserializeOpErrorBatchUpdateAutomatedDiscoveryAccounts(response, &metadata) + } + output := &BatchUpdateAutomatedDiscoveryAccountsOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + 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 + } + + err = awsRestjson1_deserializeOpDocumentBatchUpdateAutomatedDiscoveryAccountsOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorBatchUpdateAutomatedDiscoveryAccounts(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 + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(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 err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("ConflictException", errorCode): + return awsRestjson1_deserializeErrorConflictException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentBatchUpdateAutomatedDiscoveryAccountsOutput(v **BatchUpdateAutomatedDiscoveryAccountsOutput, 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 *BatchUpdateAutomatedDiscoveryAccountsOutput + if *v == nil { + sv = &BatchUpdateAutomatedDiscoveryAccountsOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "errors": + if err := awsRestjson1_deserializeDocument__listOfAutomatedDiscoveryAccountUpdateError(&sv.Errors, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + type awsRestjson1_deserializeOpCreateAllowList struct { } @@ -4088,6 +4247,15 @@ func awsRestjson1_deserializeOpDocumentGetAutomatedDiscoveryConfigurationOutput( for key, value := range shape { switch key { + case "autoEnableOrganizationMembers": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AutoEnableMode to be of type string, got %T instead", value) + } + sv.AutoEnableOrganizationMembers = types.AutoEnableMode(jtv) + } + case "classificationScopeId": if value != nil { jtv, ok := value.(string) @@ -7986,6 +8154,174 @@ func awsRestjson1_deserializeOpDocumentListAllowListsOutput(v **ListAllowListsOu return nil } +type awsRestjson1_deserializeOpListAutomatedDiscoveryAccounts struct { +} + +func (*awsRestjson1_deserializeOpListAutomatedDiscoveryAccounts) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpListAutomatedDiscoveryAccounts) 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 + } + + 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, awsRestjson1_deserializeOpErrorListAutomatedDiscoveryAccounts(response, &metadata) + } + output := &ListAutomatedDiscoveryAccountsOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + 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 + } + + err = awsRestjson1_deserializeOpDocumentListAutomatedDiscoveryAccountsOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorListAutomatedDiscoveryAccounts(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 + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(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 err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("AccessDeniedException", errorCode): + return awsRestjson1_deserializeErrorAccessDeniedException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("ResourceNotFoundException", errorCode): + return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody) + + case strings.EqualFold("ThrottlingException", errorCode): + return awsRestjson1_deserializeErrorThrottlingException(response, errorBody) + + case strings.EqualFold("ValidationException", errorCode): + return awsRestjson1_deserializeErrorValidationException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentListAutomatedDiscoveryAccountsOutput(v **ListAutomatedDiscoveryAccountsOutput, 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 *ListAutomatedDiscoveryAccountsOutput + if *v == nil { + sv = &ListAutomatedDiscoveryAccountsOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "items": + if err := awsRestjson1_deserializeDocument__listOfAutomatedDiscoveryAccount(&sv.Items, value); err != nil { + return err + } + + case "nextToken": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected __string to be of type string, got %T instead", value) + } + sv.NextToken = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + type awsRestjson1_deserializeOpListClassificationJobs struct { } @@ -12731,6 +13067,74 @@ func awsRestjson1_deserializeDocument__listOfAllowListSummary(v *[]types.AllowLi return nil } +func awsRestjson1_deserializeDocument__listOfAutomatedDiscoveryAccount(v *[]types.AutomatedDiscoveryAccount, 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.AutomatedDiscoveryAccount + if *v == nil { + cv = []types.AutomatedDiscoveryAccount{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.AutomatedDiscoveryAccount + destAddr := &col + if err := awsRestjson1_deserializeDocumentAutomatedDiscoveryAccount(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsRestjson1_deserializeDocument__listOfAutomatedDiscoveryAccountUpdateError(v *[]types.AutomatedDiscoveryAccountUpdateError, 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.AutomatedDiscoveryAccountUpdateError + if *v == nil { + cv = []types.AutomatedDiscoveryAccountUpdateError{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.AutomatedDiscoveryAccountUpdateError + destAddr := &col + if err := awsRestjson1_deserializeDocumentAutomatedDiscoveryAccountUpdateError(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocument__listOfBatchGetCustomDataIdentifierSummary(v *[]types.BatchGetCustomDataIdentifierSummary, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -14195,6 +14599,104 @@ func awsRestjson1_deserializeDocumentAssumedRole(v **types.AssumedRole, value in return nil } +func awsRestjson1_deserializeDocumentAutomatedDiscoveryAccount(v **types.AutomatedDiscoveryAccount, 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.AutomatedDiscoveryAccount + if *v == nil { + sv = &types.AutomatedDiscoveryAccount{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "accountId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected __string to be of type string, got %T instead", value) + } + sv.AccountId = ptr.String(jtv) + } + + case "status": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AutomatedDiscoveryAccountStatus to be of type string, got %T instead", value) + } + sv.Status = types.AutomatedDiscoveryAccountStatus(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentAutomatedDiscoveryAccountUpdateError(v **types.AutomatedDiscoveryAccountUpdateError, 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.AutomatedDiscoveryAccountUpdateError + if *v == nil { + sv = &types.AutomatedDiscoveryAccountUpdateError{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "accountId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected __string to be of type string, got %T instead", value) + } + sv.AccountId = ptr.String(jtv) + } + + case "errorCode": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AutomatedDiscoveryAccountUpdateErrorCode to be of type string, got %T instead", value) + } + sv.ErrorCode = types.AutomatedDiscoveryAccountUpdateErrorCode(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsRestjson1_deserializeDocumentAwsAccount(v **types.AwsAccount, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -14845,6 +15347,15 @@ func awsRestjson1_deserializeDocumentBucketMetadata(v **types.BucketMetadata, va sv.AllowsUnencryptedObjectUploads = types.AllowsUnencryptedObjectUploads(jtv) } + case "automatedDiscoveryMonitoringStatus": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AutomatedDiscoveryMonitoringStatus to be of type string, got %T instead", value) + } + sv.AutomatedDiscoveryMonitoringStatus = types.AutomatedDiscoveryMonitoringStatus(jtv) + } + case "bucketArn": if value != nil { jtv, ok := value.(string) @@ -17976,6 +18487,15 @@ func awsRestjson1_deserializeDocumentMatchingBucket(v **types.MatchingBucket, va sv.AccountId = ptr.String(jtv) } + case "automatedDiscoveryMonitoringStatus": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AutomatedDiscoveryMonitoringStatus to be of type string, got %T instead", value) + } + sv.AutomatedDiscoveryMonitoringStatus = types.AutomatedDiscoveryMonitoringStatus(jtv) + } + case "bucketName": if value != nil { jtv, ok := value.(string) diff --git a/service/macie2/generated.json b/service/macie2/generated.json index 96f5fc86638..fc3a0bad281 100644 --- a/service/macie2/generated.json +++ b/service/macie2/generated.json @@ -11,6 +11,7 @@ "api_client_test.go", "api_op_AcceptInvitation.go", "api_op_BatchGetCustomDataIdentifiers.go", + "api_op_BatchUpdateAutomatedDiscoveryAccounts.go", "api_op_CreateAllowList.go", "api_op_CreateClassificationJob.go", "api_op_CreateCustomDataIdentifier.go", @@ -57,6 +58,7 @@ "api_op_GetUsageStatistics.go", "api_op_GetUsageTotals.go", "api_op_ListAllowLists.go", + "api_op_ListAutomatedDiscoveryAccounts.go", "api_op_ListClassificationJobs.go", "api_op_ListClassificationScopes.go", "api_op_ListCustomDataIdentifiers.go", diff --git a/service/macie2/serializers.go b/service/macie2/serializers.go index 471fcc8f4d1..11a10204840 100644 --- a/service/macie2/serializers.go +++ b/service/macie2/serializers.go @@ -176,6 +176,83 @@ func awsRestjson1_serializeOpDocumentBatchGetCustomDataIdentifiersInput(v *Batch return nil } +type awsRestjson1_serializeOpBatchUpdateAutomatedDiscoveryAccounts struct { +} + +func (*awsRestjson1_serializeOpBatchUpdateAutomatedDiscoveryAccounts) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpBatchUpdateAutomatedDiscoveryAccounts) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + 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.(*BatchUpdateAutomatedDiscoveryAccountsInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/automated-discovery/accounts") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "PATCH" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + restEncoder.SetHeader("Content-Type").String("application/json") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsRestjson1_serializeOpDocumentBatchUpdateAutomatedDiscoveryAccountsInput(input, jsonEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsBatchUpdateAutomatedDiscoveryAccountsInput(v *BatchUpdateAutomatedDiscoveryAccountsInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + return nil +} + +func awsRestjson1_serializeOpDocumentBatchUpdateAutomatedDiscoveryAccountsInput(v *BatchUpdateAutomatedDiscoveryAccountsInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Accounts != nil { + ok := object.Key("accounts") + if err := awsRestjson1_serializeDocument__listOfAutomatedDiscoveryAccountUpdate(v.Accounts, ok); err != nil { + return err + } + } + + return nil +} + type awsRestjson1_serializeOpCreateAllowList struct { } @@ -3449,6 +3526,76 @@ func awsRestjson1_serializeOpHttpBindingsListAllowListsInput(v *ListAllowListsIn return nil } +type awsRestjson1_serializeOpListAutomatedDiscoveryAccounts struct { +} + +func (*awsRestjson1_serializeOpListAutomatedDiscoveryAccounts) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpListAutomatedDiscoveryAccounts) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + 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.(*ListAutomatedDiscoveryAccountsInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/automated-discovery/accounts") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "GET" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsListAutomatedDiscoveryAccountsInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsListAutomatedDiscoveryAccountsInput(v *ListAutomatedDiscoveryAccountsInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.AccountIds != nil { + for i := range v.AccountIds { + encoder.AddQuery("accountIds").String(v.AccountIds[i]) + } + } + + if v.MaxResults != nil { + encoder.SetQuery("maxResults").Integer(*v.MaxResults) + } + + if v.NextToken != nil { + encoder.SetQuery("nextToken").String(*v.NextToken) + } + + return nil +} + type awsRestjson1_serializeOpListClassificationJobs struct { } @@ -5057,6 +5204,11 @@ func awsRestjson1_serializeOpDocumentUpdateAutomatedDiscoveryConfigurationInput( object := value.Object() defer object.Close() + if len(v.AutoEnableOrganizationMembers) > 0 { + ok := object.Key("autoEnableOrganizationMembers") + ok.String(string(v.AutoEnableOrganizationMembers)) + } + if len(v.Status) > 0 { ok := object.Key("status") ok.String(string(v.Status)) @@ -5966,6 +6118,19 @@ func awsRestjson1_serializeDocument__listOf__string(v []string, value smithyjson return nil } +func awsRestjson1_serializeDocument__listOfAutomatedDiscoveryAccountUpdate(v []types.AutomatedDiscoveryAccountUpdate, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + if err := awsRestjson1_serializeDocumentAutomatedDiscoveryAccountUpdate(&v[i], av); err != nil { + return err + } + } + return nil +} + func awsRestjson1_serializeDocument__listOfCriteriaForJob(v []types.CriteriaForJob, value smithyjson.Value) error { array := value.Array() defer array.Close() @@ -6154,6 +6319,23 @@ func awsRestjson1_serializeDocumentAllowListCriteria(v *types.AllowListCriteria, return nil } +func awsRestjson1_serializeDocumentAutomatedDiscoveryAccountUpdate(v *types.AutomatedDiscoveryAccountUpdate, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.AccountId != nil { + ok := object.Key("accountId") + ok.String(*v.AccountId) + } + + if len(v.Status) > 0 { + ok := object.Key("status") + ok.String(string(v.Status)) + } + + return nil +} + func awsRestjson1_serializeDocumentBucketCriteria(v map[string]types.BucketCriteriaAdditionalProperties, value smithyjson.Value) error { object := value.Object() defer object.Close() diff --git a/service/macie2/snapshot/api_op_BatchUpdateAutomatedDiscoveryAccounts.go.snap b/service/macie2/snapshot/api_op_BatchUpdateAutomatedDiscoveryAccounts.go.snap new file mode 100644 index 00000000000..ec32979f717 --- /dev/null +++ b/service/macie2/snapshot/api_op_BatchUpdateAutomatedDiscoveryAccounts.go.snap @@ -0,0 +1,35 @@ +BatchUpdateAutomatedDiscoveryAccounts + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/macie2/snapshot/api_op_ListAutomatedDiscoveryAccounts.go.snap b/service/macie2/snapshot/api_op_ListAutomatedDiscoveryAccounts.go.snap new file mode 100644 index 00000000000..df480f040b7 --- /dev/null +++ b/service/macie2/snapshot/api_op_ListAutomatedDiscoveryAccounts.go.snap @@ -0,0 +1,35 @@ +ListAutomatedDiscoveryAccounts + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/macie2/snapshot_test.go b/service/macie2/snapshot_test.go index 89b73fa63aa..f6549609386 100644 --- a/service/macie2/snapshot_test.go +++ b/service/macie2/snapshot_test.go @@ -86,6 +86,18 @@ func TestCheckSnapshot_BatchGetCustomDataIdentifiers(t *testing.T) { } } +func TestCheckSnapshot_BatchUpdateAutomatedDiscoveryAccounts(t *testing.T) { + svc := New(Options{}) + _, err := svc.BatchUpdateAutomatedDiscoveryAccounts(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "BatchUpdateAutomatedDiscoveryAccounts") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_CreateAllowList(t *testing.T) { svc := New(Options{}) _, err := svc.CreateAllowList(context.Background(), nil, func(o *Options) { @@ -638,6 +650,18 @@ func TestCheckSnapshot_ListAllowLists(t *testing.T) { } } +func TestCheckSnapshot_ListAutomatedDiscoveryAccounts(t *testing.T) { + svc := New(Options{}) + _, err := svc.ListAutomatedDiscoveryAccounts(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "ListAutomatedDiscoveryAccounts") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_ListClassificationJobs(t *testing.T) { svc := New(Options{}) _, err := svc.ListClassificationJobs(context.Background(), nil, func(o *Options) { @@ -1033,6 +1057,18 @@ func TestUpdateSnapshot_BatchGetCustomDataIdentifiers(t *testing.T) { } } +func TestUpdateSnapshot_BatchUpdateAutomatedDiscoveryAccounts(t *testing.T) { + svc := New(Options{}) + _, err := svc.BatchUpdateAutomatedDiscoveryAccounts(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "BatchUpdateAutomatedDiscoveryAccounts") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_CreateAllowList(t *testing.T) { svc := New(Options{}) _, err := svc.CreateAllowList(context.Background(), nil, func(o *Options) { @@ -1585,6 +1621,18 @@ func TestUpdateSnapshot_ListAllowLists(t *testing.T) { } } +func TestUpdateSnapshot_ListAutomatedDiscoveryAccounts(t *testing.T) { + svc := New(Options{}) + _, err := svc.ListAutomatedDiscoveryAccounts(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "ListAutomatedDiscoveryAccounts") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_ListClassificationJobs(t *testing.T) { svc := New(Options{}) _, err := svc.ListClassificationJobs(context.Background(), nil, func(o *Options) { diff --git a/service/macie2/types/enums.go b/service/macie2/types/enums.go index 081f7f2887b..f1b41d3d19e 100644 --- a/service/macie2/types/enums.go +++ b/service/macie2/types/enums.go @@ -74,6 +74,87 @@ func (AllowsUnencryptedObjectUploads) Values() []AllowsUnencryptedObjectUploads } } +type AutoEnableMode string + +// Enum values for AutoEnableMode +const ( + AutoEnableModeAll AutoEnableMode = "ALL" + AutoEnableModeNew AutoEnableMode = "NEW" + AutoEnableModeNone AutoEnableMode = "NONE" +) + +// Values returns all known values for AutoEnableMode. 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 (AutoEnableMode) Values() []AutoEnableMode { + return []AutoEnableMode{ + "ALL", + "NEW", + "NONE", + } +} + +type AutomatedDiscoveryAccountStatus string + +// Enum values for AutomatedDiscoveryAccountStatus +const ( + AutomatedDiscoveryAccountStatusEnabled AutomatedDiscoveryAccountStatus = "ENABLED" + AutomatedDiscoveryAccountStatusDisabled AutomatedDiscoveryAccountStatus = "DISABLED" +) + +// Values returns all known values for AutomatedDiscoveryAccountStatus. 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 (AutomatedDiscoveryAccountStatus) Values() []AutomatedDiscoveryAccountStatus { + return []AutomatedDiscoveryAccountStatus{ + "ENABLED", + "DISABLED", + } +} + +type AutomatedDiscoveryAccountUpdateErrorCode string + +// Enum values for AutomatedDiscoveryAccountUpdateErrorCode +const ( + AutomatedDiscoveryAccountUpdateErrorCodeAccountPaused AutomatedDiscoveryAccountUpdateErrorCode = "ACCOUNT_PAUSED" + AutomatedDiscoveryAccountUpdateErrorCodeAccountNotFound AutomatedDiscoveryAccountUpdateErrorCode = "ACCOUNT_NOT_FOUND" +) + +// Values returns all known values for AutomatedDiscoveryAccountUpdateErrorCode. +// 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 (AutomatedDiscoveryAccountUpdateErrorCode) Values() []AutomatedDiscoveryAccountUpdateErrorCode { + return []AutomatedDiscoveryAccountUpdateErrorCode{ + "ACCOUNT_PAUSED", + "ACCOUNT_NOT_FOUND", + } +} + +type AutomatedDiscoveryMonitoringStatus string + +// Enum values for AutomatedDiscoveryMonitoringStatus +const ( + AutomatedDiscoveryMonitoringStatusMonitored AutomatedDiscoveryMonitoringStatus = "MONITORED" + AutomatedDiscoveryMonitoringStatusNotMonitored AutomatedDiscoveryMonitoringStatus = "NOT_MONITORED" +) + +// Values returns all known values for AutomatedDiscoveryMonitoringStatus. 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 (AutomatedDiscoveryMonitoringStatus) Values() []AutomatedDiscoveryMonitoringStatus { + return []AutomatedDiscoveryMonitoringStatus{ + "MONITORED", + "NOT_MONITORED", + } +} + type AutomatedDiscoveryStatus string // Enum values for AutomatedDiscoveryStatus @@ -865,10 +946,11 @@ type SearchResourcesSimpleCriterionKey string // Enum values for SearchResourcesSimpleCriterionKey const ( - SearchResourcesSimpleCriterionKeyAccountId SearchResourcesSimpleCriterionKey = "ACCOUNT_ID" - SearchResourcesSimpleCriterionKeyS3BucketName SearchResourcesSimpleCriterionKey = "S3_BUCKET_NAME" - SearchResourcesSimpleCriterionKeyS3BucketEffectivePermission SearchResourcesSimpleCriterionKey = "S3_BUCKET_EFFECTIVE_PERMISSION" - SearchResourcesSimpleCriterionKeyS3BucketSharedAccess SearchResourcesSimpleCriterionKey = "S3_BUCKET_SHARED_ACCESS" + SearchResourcesSimpleCriterionKeyAccountId SearchResourcesSimpleCriterionKey = "ACCOUNT_ID" + SearchResourcesSimpleCriterionKeyS3BucketName SearchResourcesSimpleCriterionKey = "S3_BUCKET_NAME" + SearchResourcesSimpleCriterionKeyS3BucketEffectivePermission SearchResourcesSimpleCriterionKey = "S3_BUCKET_EFFECTIVE_PERMISSION" + SearchResourcesSimpleCriterionKeyS3BucketSharedAccess SearchResourcesSimpleCriterionKey = "S3_BUCKET_SHARED_ACCESS" + SearchResourcesSimpleCriterionKeyAutomatedDiscoveryMonitoringStatus SearchResourcesSimpleCriterionKey = "AUTOMATED_DISCOVERY_MONITORING_STATUS" ) // Values returns all known values for SearchResourcesSimpleCriterionKey. Note @@ -882,6 +964,7 @@ func (SearchResourcesSimpleCriterionKey) Values() []SearchResourcesSimpleCriteri "S3_BUCKET_NAME", "S3_BUCKET_EFFECTIVE_PERMISSION", "S3_BUCKET_SHARED_ACCESS", + "AUTOMATED_DISCOVERY_MONITORING_STATUS", } } diff --git a/service/macie2/types/types.go b/service/macie2/types/types.go index c5d90a39092..00bf107ec3e 100644 --- a/service/macie2/types/types.go +++ b/service/macie2/types/types.go @@ -210,6 +210,55 @@ type AssumedRole struct { noSmithyDocumentSerde } +// Provides information about the status of automated sensitive data discovery for +// an Amazon Macie account. +type AutomatedDiscoveryAccount struct { + + // The Amazon Web Services account ID for the account. + AccountId *string + + // The current status of automated sensitive data discovery for the account. + // Possible values are: ENABLED, perform automated sensitive data discovery + // activities for the account; and, DISABLED, don't perform automated sensitive + // data discovery activities for the account. + Status AutomatedDiscoveryAccountStatus + + noSmithyDocumentSerde +} + +// Changes the status of automated sensitive data discovery for an Amazon Macie +// account. +type AutomatedDiscoveryAccountUpdate struct { + + // The Amazon Web Services account ID for the account. + AccountId *string + + // The new status of automated sensitive data discovery for the account. Valid + // values are: ENABLED, perform automated sensitive data discovery activities for + // the account; and, DISABLED, don't perform automated sensitive data discovery + // activities for the account. + Status AutomatedDiscoveryAccountStatus + + noSmithyDocumentSerde +} + +// Provides information about a request that failed to change the status of +// automated sensitive data discovery for an Amazon Macie account. +type AutomatedDiscoveryAccountUpdateError struct { + + // The Amazon Web Services account ID for the account that the request applied to. + AccountId *string + + // The error code for the error that caused the request to fail for the account + // (accountId). Possible values are: ACCOUNT_NOT_FOUND, the account doesn’t exist + // or you're not the Amazon Macie administrator for the account; and, + // ACCOUNT_PAUSED, Macie isn’t enabled for the account in the current Amazon Web + // Services Region. + ErrorCode AutomatedDiscoveryAccountUpdateErrorCode + + noSmithyDocumentSerde +} + // Provides information about an Amazon Web Services account and entity that // performed an action on an affected resource. The action was performed using the // credentials for an Amazon Web Services account other than your own account. @@ -487,6 +536,13 @@ type BucketMetadata struct { // with a value of AES256. AllowsUnencryptedObjectUploads AllowsUnencryptedObjectUploads + // Specifies whether automated sensitive data discovery is currently configured to + // analyze objects in the bucket. Possible values are: MONITORED, the bucket is + // included in analyses; and, NOT_MONITORED, the bucket is excluded from analyses. + // If automated sensitive data discovery is disabled for your account, this value + // is NOT_MONITORED. + AutomatedDiscoveryMonitoringStatus AutomatedDiscoveryMonitoringStatus + // The Amazon Resource Name (ARN) of the bucket. BucketArn *string @@ -527,14 +583,14 @@ type BucketMetadata struct { ErrorMessage *string // Specifies whether any one-time or recurring classification jobs are configured - // to analyze data in the bucket, and, if so, the details of the job that ran most - // recently. + // to analyze objects in the bucket, and, if so, the details of the job that ran + // most recently. JobDetails *JobDetails // The date and time, in UTC and extended ISO 8601 format, when Amazon Macie most - // recently analyzed data in the bucket while performing automated sensitive data - // discovery for your account. This value is null if automated sensitive data - // discovery is currently disabled for your account. + // recently analyzed objects in the bucket while performing automated sensitive + // data discovery. This value is null if automated sensitive data discovery is + // disabled for your account. LastAutomatedDiscoveryTime *time.Time // The date and time, in UTC and extended ISO 8601 format, when Amazon Macie most @@ -562,8 +618,12 @@ type BucketMetadata struct { ReplicationDetails *ReplicationDetails // The sensitivity score for the bucket, ranging from -1 (classification error) to - // 100 (sensitive). This value is null if automated sensitive data discovery is - // currently disabled for your account. + // 100 (sensitive). + // + // If automated sensitive data discovery has never been enabled for your account + // or it’s been disabled for your organization or your standalone account for more + // than 30 days, possible values are: 1, the bucket is empty; or, 50, the bucket + // stores objects but it’s been excluded from recent analyses. SensitivityScore *int32 // The default server-side encryption settings for the bucket. @@ -810,7 +870,7 @@ type ClassificationDetails struct { // Specifies where to store data classification results, and the encryption // settings to use when storing results in that location. The location must be an -// S3 bucket. +// S3 general purpose bucket. type ClassificationExportConfiguration struct { // The S3 bucket to store data classification results in, and the encryption @@ -1145,10 +1205,10 @@ type DetectedDataDetails struct { } // Provides information about a type of sensitive data that Amazon Macie found in -// an S3 bucket while performing automated sensitive data discovery for the bucket. -// The information also specifies the custom data identifier or managed data -// identifier that detected the data. This information is available only if -// automated sensitive data discovery is currently enabled for your account. +// an S3 bucket while performing automated sensitive data discovery for an account. +// The information also specifies the custom or managed data identifier that +// detected the data. This information is available only if automated sensitive +// data discovery has been enabled for the account. type Detection struct { // If the sensitive data was detected by a custom data identifier, the Amazon @@ -1315,13 +1375,14 @@ type FindingActor struct { // affected resource. DomainDetails *DomainDetails - // The IP address of the device that the entity used to perform the action on the - // affected resource. This object also provides information such as the owner and - // geographic location for the IP address. + // The IP address and related details about the device that the entity used to + // perform the action on the affected resource. The details can include information + // such as the owner and geographic location of the IP address. IpAddressDetails *IpAddressDetails // The type and other characteristics of the entity that performed the action on - // the affected resource. + // the affected resource. This value is null if the action was performed by an + // anonymous (unauthenticated) entity. UserIdentity *UserIdentity noSmithyDocumentSerde @@ -1512,12 +1573,12 @@ type IpOwner struct { } // Specifies whether any one-time or recurring classification jobs are configured -// to analyze data in an S3 bucket, and, if so, the details of the job that ran +// to analyze objects in an S3 bucket, and, if so, the details of the job that ran // most recently. type JobDetails struct { - // Specifies whether any one-time or recurring jobs are configured to analyze data - // in the bucket. Possible values are: + // Specifies whether any one-time or recurring jobs are configured to analyze + // objects in the bucket. Possible values are: // // - TRUE - The bucket is explicitly included in the bucket definition // (S3BucketDefinitionForJob) for one or more jobs and at least one of those jobs @@ -1534,7 +1595,7 @@ type JobDetails struct { // data for the bucket. IsDefinedInJob IsDefinedInJob - // Specifies whether any recurring jobs are configured to analyze data in the + // Specifies whether any recurring jobs are configured to analyze objects in the // bucket. Possible values are: // // - TRUE - The bucket is explicitly included in the bucket definition @@ -1553,8 +1614,8 @@ type JobDetails struct { IsMonitoredByJob IsMonitoredByJob // The unique identifier for the job that ran most recently and is configured to - // analyze data in the bucket, either the latest run of a recurring job or the only - // run of a one-time job. + // analyze objects in the bucket, either the latest run of a recurring job or the + // only run of a one-time job. // // This value is typically null if the value for the isDefinedInJob property is // FALSE or UNKNOWN. @@ -1808,6 +1869,13 @@ type MatchingBucket struct { // The unique identifier for the Amazon Web Services account that owns the bucket. AccountId *string + // Specifies whether automated sensitive data discovery is currently configured to + // analyze objects in the bucket. Possible values are: MONITORED, the bucket is + // included in analyses; and, NOT_MONITORED, the bucket is excluded from analyses. + // If automated sensitive data discovery is disabled for your account, this value + // is NOT_MONITORED. + AutomatedDiscoveryMonitoringStatus AutomatedDiscoveryMonitoringStatus + // The name of the bucket. BucketName *string @@ -1845,9 +1913,9 @@ type MatchingBucket struct { JobDetails *JobDetails // The date and time, in UTC and extended ISO 8601 format, when Amazon Macie most - // recently analyzed data in the bucket while performing automated sensitive data - // discovery for your account. This value is null if automated sensitive data - // discovery is currently disabled for your account. + // recently analyzed objects in the bucket while performing automated sensitive + // data discovery. This value is null if automated sensitive data discovery is + // disabled for your account. LastAutomatedDiscoveryTime *time.Time // The total number of objects in the bucket. @@ -1858,9 +1926,13 @@ type MatchingBucket struct { // aren't encrypted or use client-side encryption. ObjectCountByEncryptionType *ObjectCountByEncryptionType - // The current sensitivity score for the bucket, ranging from -1 (classification - // error) to 100 (sensitive). This value is null if automated sensitive data - // discovery is currently disabled for your account. + // The sensitivity score for the bucket, ranging from -1 (classification error) to + // 100 (sensitive). + // + // If automated sensitive data discovery has never been enabled for your account + // or it’s been disabled for your organization or your standalone account for more + // than 30 days, possible values are: 1, the bucket is empty; or, 50, the bucket + // stores objects but it’s been excluded from recent analyses. SensitivityScore *int32 // The total storage size, in bytes, of the bucket. @@ -2164,9 +2236,9 @@ type ReplicationDetails struct { } // Provides information about an S3 object that Amazon Macie selected for analysis -// while performing automated sensitive data discovery for an S3 bucket, and the +// while performing automated sensitive data discovery for an account, and the // status and results of the analysis. This information is available only if -// automated sensitive data discovery is currently enabled for your account. +// automated sensitive data discovery has been enabled for the account. type ResourceProfileArtifact struct { // The Amazon Resource Name (ARN) of the object. @@ -2206,10 +2278,10 @@ type ResourcesAffected struct { } // Provides statistical data for sensitive data discovery metrics that apply to an -// S3 bucket that Amazon Macie monitors and analyzes for your account. The -// statistics capture the results of automated sensitive data discovery activities -// that Macie has performed for the bucket. The data is available only if automated -// sensitive data discovery is currently enabled for your account. +// S3 bucket that Amazon Macie monitors and analyzes for an account, if automated +// sensitive data discovery has been enabled for the account. The data captures the +// results of automated sensitive data discovery activities that Macie has +// performed for the bucket. type ResourceStatistics struct { // The total amount of data, in bytes, that Amazon Macie has analyzed in the @@ -2495,7 +2567,8 @@ type S3ClassificationScopeUpdate struct { // encryption settings to use when storing results in that bucket. type S3Destination struct { - // The name of the bucket. + // The name of the bucket. This must be the name of an existing general purpose + // bucket. // // This member is required. BucketName *string @@ -2685,6 +2758,9 @@ type SearchResourcesSimpleCriterion struct { // - ACCOUNT_ID - A string that represents the unique identifier for the Amazon // Web Services account that owns the resource. // + // - AUTOMATED_DISCOVERY_MONITORING_STATUS - A string that represents an + // enumerated value that Macie defines for the [BucketMetadata.automatedDiscoveryMonitoringStatus]property of an S3 bucket. + // // - S3_BUCKET_EFFECTIVE_PERMISSION - A string that represents an enumerated // value that Macie defines for the [BucketPublicAccess.effectivePermission]property of an S3 bucket. // @@ -2696,6 +2772,7 @@ type SearchResourcesSimpleCriterion struct { // Values are case sensitive. Also, Macie doesn't support use of partial values or // wildcard characters in values. // + // [BucketMetadata.automatedDiscoveryMonitoringStatus]: https://docs.aws.amazon.com/macie/latest/APIReference/datasources-s3.html#datasources-s3-prop-bucketmetadata-automateddiscoverymonitoringstatus // [BucketMetadata.sharedAccess]: https://docs.aws.amazon.com/macie/latest/APIReference/datasources-s3.html#datasources-s3-prop-bucketmetadata-sharedaccess // [BucketPublicAccess.effectivePermission]: https://docs.aws.amazon.com/macie/latest/APIReference/datasources-s3.html#datasources-s3-prop-bucketpublicaccess-effectivepermission Values []string @@ -2831,9 +2908,9 @@ type SensitivityAggregations struct { } // Specifies managed data identifiers to exclude (not use) when performing -// automated sensitive data discovery for an Amazon Macie account. For information -// about the managed data identifiers that Amazon Macie currently provides, see [Using managed data identifiers]in -// the Amazon Macie User Guide. +// automated sensitive data discovery. For information about the managed data +// identifiers that Amazon Macie currently provides, see [Using managed data identifiers]in the Amazon Macie User +// Guide. // // [Using managed data identifiers]: https://docs.aws.amazon.com/macie/latest/user/managed-data-identifiers.html type SensitivityInspectionTemplateExcludes struct { @@ -2847,11 +2924,10 @@ type SensitivityInspectionTemplateExcludes struct { } // Specifies the allow lists, custom data identifiers, and managed data -// identifiers to include (use) when performing automated sensitive data discovery -// for an Amazon Macie account. The configuration must specify at least one custom -// data identifier or managed data identifier. For information about the managed -// data identifiers that Amazon Macie currently provides, see [Using managed data identifiers]in the Amazon Macie -// User Guide. +// identifiers to include (use) when performing automated sensitive data discovery. +// The configuration must specify at least one custom data identifier or managed +// data identifier. For information about the managed data identifiers that Amazon +// Macie currently provides, see [Using managed data identifiers]in the Amazon Macie User Guide. // // [Using managed data identifiers]: https://docs.aws.amazon.com/macie/latest/user/managed-data-identifiers.html type SensitivityInspectionTemplateIncludes struct { @@ -2875,8 +2951,7 @@ type SensitivityInspectionTemplateIncludes struct { } // Provides information about the sensitivity inspection template for an Amazon -// Macie account. Macie uses the template's settings when it performs automated -// sensitive data discovery for the account. +// Macie account. type SensitivityInspectionTemplatesEntry struct { // The unique identifier for the sensitivity inspection template. @@ -3303,9 +3378,8 @@ type UsageRecord struct { AccountId *string // The date and time, in UTC and extended ISO 8601 format, when the free trial of - // automated sensitive data discovery started for the account. If the account is a - // member account in an organization, this value is the same as the value for the - // organization's Amazon Macie administrator account. + // automated sensitive data discovery started for the account. This value is null + // if automated sensitive data discovery hasn't been enabled for the account. AutomatedDiscoveryFreeTrialStartDate *time.Time // The date and time, in UTC and extended ISO 8601 format, when the Amazon Macie diff --git a/service/mediaconvert/api_op_DescribeEndpoints.go b/service/mediaconvert/api_op_DescribeEndpoints.go index 8972b185b7d..aea18cecabe 100644 --- a/service/mediaconvert/api_op_DescribeEndpoints.go +++ b/service/mediaconvert/api_op_DescribeEndpoints.go @@ -11,8 +11,9 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Send an request with an empty body to the regional API endpoint to get your -// account API endpoint. +// Send a request with an empty body to the regional API endpoint to get your +// account API endpoint. Note that DescribeEndpoints is no longer required. We +// recommend that you send your requests directly to the regional endpoint instead. // // Deprecated: DescribeEndpoints and account specific endpoints are no longer // required. We recommend that you send your requests directly to the regional diff --git a/service/mediaconvert/api_op_SearchJobs.go b/service/mediaconvert/api_op_SearchJobs.go new file mode 100644 index 00000000000..5c04744832e --- /dev/null +++ b/service/mediaconvert/api_op_SearchJobs.go @@ -0,0 +1,249 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package mediaconvert + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/service/mediaconvert/types" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +// Retrieve a JSON array that includes job details for up to twenty of your most +// recent jobs. Optionally filter results further according to input file, queue, +// or status. To retrieve the twenty next most recent jobs, use the nextToken +// string returned with the array. +func (c *Client) SearchJobs(ctx context.Context, params *SearchJobsInput, optFns ...func(*Options)) (*SearchJobsOutput, error) { + if params == nil { + params = &SearchJobsInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "SearchJobs", params, optFns, c.addOperationSearchJobsMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*SearchJobsOutput) + out.ResultMetadata = metadata + return out, nil +} + +type SearchJobsInput struct { + + // Optional. Provide your input file URL or your partial input file name. The + // maximum length for an input file is 300 characters. + InputFile *string + + // Optional. Number of jobs, up to twenty, that will be returned at one time. + MaxResults *int32 + + // Optional. Use this string, provided with the response to a previous request, to + // request the next batch of jobs. + NextToken *string + + // Optional. When you request lists of resources, you can specify whether they are + // sorted in ASCENDING or DESCENDING order. Default varies by resource. + Order types.Order + + // Optional. Provide a queue name, or a queue ARN, to return only jobs from that + // queue. + Queue *string + + // Optional. A job's status can be SUBMITTED, PROGRESSING, COMPLETE, CANCELED, or + // ERROR. + Status types.JobStatus + + noSmithyDocumentSerde +} + +type SearchJobsOutput struct { + + // List of jobs. + Jobs []types.Job + + // Use this string to request the next batch of jobs. + NextToken *string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationSearchJobsMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpSearchJobs{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpSearchJobs{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "SearchJobs"); 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 = 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 = stack.Initialize.Add(newServiceMetadataMiddleware_opSearchJobs(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 + } + return nil +} + +// SearchJobsAPIClient is a client that implements the SearchJobs operation. +type SearchJobsAPIClient interface { + SearchJobs(context.Context, *SearchJobsInput, ...func(*Options)) (*SearchJobsOutput, error) +} + +var _ SearchJobsAPIClient = (*Client)(nil) + +// SearchJobsPaginatorOptions is the paginator options for SearchJobs +type SearchJobsPaginatorOptions struct { + // Optional. Number of jobs, up to twenty, that will be returned at one time. + 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 +} + +// SearchJobsPaginator is a paginator for SearchJobs +type SearchJobsPaginator struct { + options SearchJobsPaginatorOptions + client SearchJobsAPIClient + params *SearchJobsInput + nextToken *string + firstPage bool +} + +// NewSearchJobsPaginator returns a new SearchJobsPaginator +func NewSearchJobsPaginator(client SearchJobsAPIClient, params *SearchJobsInput, optFns ...func(*SearchJobsPaginatorOptions)) *SearchJobsPaginator { + if params == nil { + params = &SearchJobsInput{} + } + + options := SearchJobsPaginatorOptions{} + if params.MaxResults != nil { + options.Limit = *params.MaxResults + } + + for _, fn := range optFns { + fn(&options) + } + + return &SearchJobsPaginator{ + options: options, + client: client, + params: params, + firstPage: true, + nextToken: params.NextToken, + } +} + +// HasMorePages returns a boolean indicating whether more pages are available +func (p *SearchJobsPaginator) HasMorePages() bool { + return p.firstPage || (p.nextToken != nil && len(*p.nextToken) != 0) +} + +// NextPage retrieves the next SearchJobs page. +func (p *SearchJobsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*SearchJobsOutput, error) { + if !p.HasMorePages() { + return nil, fmt.Errorf("no more pages available") + } + + params := *p.params + params.NextToken = p.nextToken + + var limit *int32 + if p.options.Limit > 0 { + limit = &p.options.Limit + } + params.MaxResults = limit + + result, err := p.client.SearchJobs(ctx, ¶ms, optFns...) + if err != nil { + return nil, err + } + p.firstPage = false + + prevToken := p.nextToken + p.nextToken = result.NextToken + + if p.options.StopOnDuplicateToken && + prevToken != nil && + p.nextToken != nil && + *prevToken == *p.nextToken { + p.nextToken = nil + } + + return result, nil +} + +func newServiceMetadataMiddleware_opSearchJobs(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "SearchJobs", + } +} diff --git a/service/mediaconvert/deserializers.go b/service/mediaconvert/deserializers.go index 1cdfbfba5ce..c1c918b6b97 100644 --- a/service/mediaconvert/deserializers.go +++ b/service/mediaconvert/deserializers.go @@ -3352,6 +3352,177 @@ func awsRestjson1_deserializeOpDocumentPutPolicyOutput(v **PutPolicyOutput, valu return nil } +type awsRestjson1_deserializeOpSearchJobs struct { +} + +func (*awsRestjson1_deserializeOpSearchJobs) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpSearchJobs) 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 + } + + 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, awsRestjson1_deserializeOpErrorSearchJobs(response, &metadata) + } + output := &SearchJobsOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(response.Body, ringBuffer) + + decoder := json.NewDecoder(body) + decoder.UseNumber() + var shape interface{} + if err := decoder.Decode(&shape); err != nil && err != io.EOF { + 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 + } + + err = awsRestjson1_deserializeOpDocumentSearchJobsOutput(&output, shape) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body with invalid JSON, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorSearchJobs(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 + + headerCode := response.Header.Get("X-Amzn-ErrorType") + if len(headerCode) != 0 { + errorCode = restjson.SanitizeErrorCode(headerCode) + } + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, ringBuffer) + decoder := json.NewDecoder(body) + decoder.UseNumber() + jsonCode, message, err := restjson.GetErrorInfo(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 err + } + + errorBody.Seek(0, io.SeekStart) + if len(headerCode) == 0 && len(jsonCode) != 0 { + errorCode = restjson.SanitizeErrorCode(jsonCode) + } + if len(message) != 0 { + errorMessage = message + } + + switch { + case strings.EqualFold("BadRequestException", errorCode): + return awsRestjson1_deserializeErrorBadRequestException(response, errorBody) + + case strings.EqualFold("ConflictException", errorCode): + return awsRestjson1_deserializeErrorConflictException(response, errorBody) + + case strings.EqualFold("ForbiddenException", errorCode): + return awsRestjson1_deserializeErrorForbiddenException(response, errorBody) + + case strings.EqualFold("InternalServerErrorException", errorCode): + return awsRestjson1_deserializeErrorInternalServerErrorException(response, errorBody) + + case strings.EqualFold("NotFoundException", errorCode): + return awsRestjson1_deserializeErrorNotFoundException(response, errorBody) + + case strings.EqualFold("TooManyRequestsException", errorCode): + return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentSearchJobsOutput(v **SearchJobsOutput, 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 *SearchJobsOutput + if *v == nil { + sv = &SearchJobsOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "jobs": + if err := awsRestjson1_deserializeDocument__listOfJob(&sv.Jobs, value); err != nil { + return err + } + + case "nextToken": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected __string to be of type string, got %T instead", value) + } + sv.NextToken = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + type awsRestjson1_deserializeOpTagResource struct { } diff --git a/service/mediaconvert/generated.json b/service/mediaconvert/generated.json index a857d3c1f75..44ba2a8e864 100644 --- a/service/mediaconvert/generated.json +++ b/service/mediaconvert/generated.json @@ -31,6 +31,7 @@ "api_op_ListQueues.go", "api_op_ListTagsForResource.go", "api_op_PutPolicy.go", + "api_op_SearchJobs.go", "api_op_TagResource.go", "api_op_UntagResource.go", "api_op_UpdateJobTemplate.go", diff --git a/service/mediaconvert/serializers.go b/service/mediaconvert/serializers.go index e03826cfdbc..f9bf9061400 100644 --- a/service/mediaconvert/serializers.go +++ b/service/mediaconvert/serializers.go @@ -1782,6 +1782,86 @@ func awsRestjson1_serializeOpDocumentPutPolicyInput(v *PutPolicyInput, value smi return nil } +type awsRestjson1_serializeOpSearchJobs struct { +} + +func (*awsRestjson1_serializeOpSearchJobs) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpSearchJobs) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + 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.(*SearchJobsInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/2017-08-29/search") + request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath) + request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery) + request.Method = "GET" + var restEncoder *httpbinding.Encoder + if request.URL.RawPath == "" { + restEncoder, err = httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + } else { + request.URL.RawPath = smithyhttp.JoinPath(request.URL.RawPath, opPath) + restEncoder, err = httpbinding.NewEncoderWithRawPath(request.URL.Path, request.URL.RawPath, request.URL.RawQuery, request.Header) + } + + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if err := awsRestjson1_serializeOpHttpBindingsSearchJobsInput(input, restEncoder); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = restEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsSearchJobsInput(v *SearchJobsInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + if v.InputFile != nil { + encoder.SetQuery("inputFile").String(*v.InputFile) + } + + if v.MaxResults != nil { + encoder.SetQuery("maxResults").Integer(*v.MaxResults) + } + + if v.NextToken != nil { + encoder.SetQuery("nextToken").String(*v.NextToken) + } + + if len(v.Order) > 0 { + encoder.SetQuery("order").String(string(v.Order)) + } + + if v.Queue != nil { + encoder.SetQuery("queue").String(*v.Queue) + } + + if len(v.Status) > 0 { + encoder.SetQuery("status").String(string(v.Status)) + } + + return nil +} + type awsRestjson1_serializeOpTagResource struct { } diff --git a/service/mediaconvert/snapshot/api_op_SearchJobs.go.snap b/service/mediaconvert/snapshot/api_op_SearchJobs.go.snap new file mode 100644 index 00000000000..7f392691fd3 --- /dev/null +++ b/service/mediaconvert/snapshot/api_op_SearchJobs.go.snap @@ -0,0 +1,35 @@ +SearchJobs + Initialize stack step + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + Serialize stack step + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/mediaconvert/snapshot_test.go b/service/mediaconvert/snapshot_test.go index 2214f3e372c..cd9d91f0a98 100644 --- a/service/mediaconvert/snapshot_test.go +++ b/service/mediaconvert/snapshot_test.go @@ -338,6 +338,18 @@ func TestCheckSnapshot_PutPolicy(t *testing.T) { } } +func TestCheckSnapshot_SearchJobs(t *testing.T) { + svc := New(Options{}) + _, err := svc.SearchJobs(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "SearchJobs") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_TagResource(t *testing.T) { svc := New(Options{}) _, err := svc.TagResource(context.Background(), nil, func(o *Options) { @@ -673,6 +685,18 @@ func TestUpdateSnapshot_PutPolicy(t *testing.T) { } } +func TestUpdateSnapshot_SearchJobs(t *testing.T) { + svc := New(Options{}) + _, err := svc.SearchJobs(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "SearchJobs") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_TagResource(t *testing.T) { svc := New(Options{}) _, err := svc.TagResource(context.Background(), nil, func(o *Options) {