From 8503c8359d6964807111f3dc1cdefef9e0e8d44d Mon Sep 17 00:00:00 2001 From: AWS SDK for Go v2 automation user Date: Thu, 3 Oct 2024 18:26:31 +0000 Subject: [PATCH] Regenerated Clients --- .../1695da4754d34448b59d7076850c5b47.json | 8 + .../3f2ce88acc8a48418df8653d516a9e76.json | 8 + .../41575353444b40ffbf474f4155544f00.json | 8 + .../64e16924afd545c99380bb8918395dd3.json | 8 + .../6f783811652549a98f0dd54c9b6a866d.json | 8 + .../96171a0b7c3f421e979632814c6b59ed.json | 8 + .../d566d2bb976547639c32c8066ea9ee9b.json | 8 + .../f3b1d132c6b343259f68341f49e0540a.json | 8 + .../attributevalue/go_module_metadata.go | 2 +- service/accessanalyzer/api_client.go | 4 +- service/account/api_client.go | 4 +- service/acm/api_client.go | 4 +- service/acmpca/api_client.go | 4 +- service/amp/api_client.go | 4 +- service/amplify/api_client.go | 4 +- service/amplifybackend/api_client.go | 4 +- service/amplifyuibuilder/api_client.go | 4 +- service/apigateway/api_client.go | 4 +- service/apigatewaymanagementapi/api_client.go | 4 +- service/apigatewayv2/api_client.go | 4 +- service/appconfig/api_client.go | 4 +- service/appconfigdata/api_client.go | 4 +- service/appfabric/api_client.go | 4 +- service/appflow/api_client.go | 4 +- service/appintegrations/api_client.go | 4 +- service/applicationautoscaling/api_client.go | 4 +- service/applicationcostprofiler/api_client.go | 4 +- .../applicationdiscoveryservice/api_client.go | 4 +- service/applicationinsights/api_client.go | 4 +- service/applicationsignals/api_client.go | 4 +- service/appmesh/api_client.go | 4 +- service/apprunner/api_client.go | 4 +- service/appstream/api_client.go | 4 +- service/appsync/api_client.go | 4 +- service/apptest/api_client.go | 4 +- service/arczonalshift/api_client.go | 4 +- service/artifact/api_client.go | 4 +- service/athena/api_client.go | 4 +- service/auditmanager/api_client.go | 4 +- service/autoscaling/api_client.go | 4 +- service/autoscalingplans/api_client.go | 4 +- service/b2bi/api_client.go | 4 +- service/backup/api_client.go | 4 +- service/backupgateway/api_client.go | 4 +- service/batch/api_client.go | 4 +- service/bcmdataexports/api_client.go | 4 +- service/bedrock/api_client.go | 4 +- service/bedrockagent/api_client.go | 4 +- service/bedrockagentruntime/api_client.go | 4 +- service/bedrockruntime/api_client.go | 4 +- service/billingconductor/api_client.go | 4 +- service/braket/api_client.go | 4 +- service/budgets/api_client.go | 4 +- service/chatbot/api_client.go | 4 +- service/chime/api_client.go | 4 +- service/chimesdkidentity/api_client.go | 4 +- service/chimesdkmediapipelines/api_client.go | 4 +- service/chimesdkmeetings/api_client.go | 4 +- service/chimesdkmessaging/api_client.go | 4 +- service/chimesdkvoice/api_client.go | 4 +- service/cleanrooms/api_client.go | 4 +- service/cleanroomsml/api_client.go | 4 +- service/cloud9/api_client.go | 4 +- service/cloudcontrol/api_client.go | 4 +- service/clouddirectory/api_client.go | 4 +- service/cloudformation/api_client.go | 4 +- service/cloudfront/api_client.go | 4 +- service/cloudfrontkeyvaluestore/api_client.go | 4 +- service/cloudhsm/api_client.go | 4 +- service/cloudhsmv2/api_client.go | 4 +- service/cloudsearch/api_client.go | 4 +- service/cloudsearchdomain/api_client.go | 4 +- service/cloudtrail/api_client.go | 4 +- service/cloudtraildata/api_client.go | 4 +- service/cloudwatch/api_client.go | 4 +- service/cloudwatchevents/api_client.go | 4 +- service/cloudwatchlogs/api_client.go | 4 +- service/codeartifact/api_client.go | 4 +- service/codebuild/api_client.go | 4 +- service/codecatalyst/api_client.go | 4 +- service/codecommit/api_client.go | 4 +- service/codeconnections/api_client.go | 4 +- service/codedeploy/api_client.go | 4 +- service/codeguruprofiler/api_client.go | 4 +- service/codegurureviewer/api_client.go | 4 +- service/codegurusecurity/api_client.go | 4 +- service/codepipeline/api_client.go | 4 +- service/codepipeline/deserializers.go | 123 +++ service/codepipeline/serializers.go | 54 ++ service/codepipeline/types/types.go | 15 + service/codestarconnections/api_client.go | 4 +- service/codestarnotifications/api_client.go | 4 +- service/cognitoidentity/api_client.go | 4 +- service/cognitoidentityprovider/api_client.go | 4 +- service/cognitosync/api_client.go | 4 +- service/comprehend/api_client.go | 4 +- service/comprehendmedical/api_client.go | 4 +- service/computeoptimizer/api_client.go | 4 +- service/configservice/api_client.go | 4 +- service/connect/api_client.go | 4 +- service/connectcampaigns/api_client.go | 4 +- service/connectcases/api_client.go | 4 +- service/connectcontactlens/api_client.go | 4 +- service/connectparticipant/api_client.go | 4 +- service/controlcatalog/api_client.go | 4 +- service/controltower/api_client.go | 4 +- .../costandusagereportservice/api_client.go | 4 +- service/costexplorer/api_client.go | 4 +- service/costoptimizationhub/api_client.go | 4 +- service/customerprofiles/api_client.go | 4 +- .../databasemigrationservice/api_client.go | 4 +- service/databrew/api_client.go | 4 +- service/dataexchange/api_client.go | 4 +- service/datapipeline/api_client.go | 4 +- service/datasync/api_client.go | 4 +- service/datazone/api_client.go | 4 +- service/dax/api_client.go | 4 +- service/deadline/api_client.go | 4 +- service/detective/api_client.go | 4 +- service/devicefarm/api_client.go | 4 +- service/devopsguru/api_client.go | 4 +- service/directconnect/api_client.go | 4 +- service/directoryservice/api_client.go | 4 +- service/directoryservicedata/api_client.go | 4 +- service/dlm/api_client.go | 4 +- service/docdb/api_client.go | 4 +- service/docdbelastic/api_client.go | 4 +- service/drs/api_client.go | 4 +- service/dynamodb/api_client.go | 4 +- service/dynamodbstreams/api_client.go | 4 +- service/ebs/api_client.go | 4 +- service/ec2/api_client.go | 4 +- service/ec2/api_op_ConfirmProductInstance.go | 2 +- service/ec2/api_op_CreatePlacementGroup.go | 2 +- .../api_op_CreateSpotDatafeedSubscription.go | 4 +- service/ec2/api_op_DeletePlacementGroup.go | 2 +- .../ec2/api_op_DescribeInstanceAttribute.go | 2 +- ...op_DescribeInstanceCreditSpecifications.go | 2 +- service/ec2/api_op_DescribeInstanceStatus.go | 2 +- .../ec2/api_op_DescribeInstanceTopology.go | 2 +- service/ec2/api_op_DescribeInstances.go | 2 +- service/ec2/api_op_DescribePlacementGroups.go | 2 +- service/ec2/api_op_GetConsoleOutput.go | 2 +- service/ec2/api_op_GetConsoleScreenshot.go | 2 +- .../api_op_GetDefaultCreditSpecification.go | 2 +- .../ec2/api_op_GetInstanceMetadataDefaults.go | 2 +- service/ec2/api_op_GetInstanceUefiData.go | 2 +- service/ec2/api_op_GetPasswordData.go | 2 +- ...api_op_ModifyDefaultCreditSpecification.go | 2 +- service/ec2/api_op_ModifyInstanceAttribute.go | 2 +- .../ec2/api_op_ModifyInstanceCpuOptions.go | 191 ++++ ...pi_op_ModifyInstanceCreditSpecification.go | 2 +- .../api_op_ModifyInstanceEventStartTime.go | 2 +- .../api_op_ModifyInstanceMetadataDefaults.go | 2 +- service/ec2/api_op_MonitorInstances.go | 2 +- service/ec2/api_op_RebootInstances.go | 2 +- service/ec2/api_op_ReportInstanceStatus.go | 2 +- service/ec2/api_op_ResetInstanceAttribute.go | 2 +- service/ec2/api_op_RunInstances.go | 2 +- service/ec2/api_op_SendDiagnosticInterrupt.go | 2 +- service/ec2/api_op_StartInstances.go | 2 +- service/ec2/api_op_StopInstances.go | 2 +- service/ec2/api_op_TerminateInstances.go | 2 +- service/ec2/api_op_UnmonitorInstances.go | 2 +- service/ec2/deserializers.go | 178 ++++ service/ec2/generated.json | 1 + service/ec2/serializers.go | 97 ++ .../api_op_ModifyInstanceCpuOptions.go.snap | 41 + service/ec2/snapshot_test.go | 24 + service/ec2/types/types.go | 102 +- service/ec2/validators.go | 45 + service/ec2instanceconnect/api_client.go | 4 +- service/ecr/api_client.go | 4 +- service/ecrpublic/api_client.go | 4 +- service/ecs/api_client.go | 4 +- service/efs/api_client.go | 4 +- service/eks/api_client.go | 4 +- service/eksauth/api_client.go | 4 +- service/elasticache/api_client.go | 4 +- service/elasticbeanstalk/api_client.go | 4 +- service/elasticinference/api_client.go | 4 +- service/elasticloadbalancing/api_client.go | 4 +- service/elasticloadbalancingv2/api_client.go | 4 +- service/elasticsearchservice/api_client.go | 4 +- service/elastictranscoder/api_client.go | 4 +- service/emr/api_client.go | 4 +- service/emrcontainers/api_client.go | 4 +- service/emrserverless/api_client.go | 4 +- service/entityresolution/api_client.go | 4 +- service/eventbridge/api_client.go | 4 +- service/evidently/api_client.go | 4 +- service/finspace/api_client.go | 4 +- service/finspacedata/api_client.go | 4 +- service/firehose/api_client.go | 4 +- service/fis/api_client.go | 4 +- service/fms/api_client.go | 4 +- service/forecast/api_client.go | 4 +- service/forecastquery/api_client.go | 4 +- service/frauddetector/api_client.go | 4 +- service/freetier/api_client.go | 4 +- service/fsx/api_client.go | 4 +- service/gamelift/api_client.go | 4 +- service/glacier/api_client.go | 4 +- service/globalaccelerator/api_client.go | 4 +- service/glue/api_client.go | 4 +- service/grafana/api_client.go | 4 +- service/greengrass/api_client.go | 4 +- service/greengrassv2/api_client.go | 4 +- service/groundstation/api_client.go | 4 +- service/guardduty/api_client.go | 4 +- service/health/api_client.go | 4 +- service/healthlake/api_client.go | 4 +- service/iam/api_client.go | 4 +- service/identitystore/api_client.go | 4 +- service/imagebuilder/api_client.go | 4 +- service/inspector/api_client.go | 4 +- service/inspector2/api_client.go | 4 +- service/inspectorscan/api_client.go | 4 +- service/internetmonitor/api_client.go | 4 +- service/iot/api_client.go | 4 +- .../api_op_AssociateSbomWithPackageVersion.go | 17 +- service/iot/api_op_CreateBillingGroup.go | 5 +- .../iot/api_op_CreateDomainConfiguration.go | 41 + service/iot/api_op_CreatePackageVersion.go | 2 +- service/iot/api_op_CreateRoleAlias.go | 7 + service/iot/api_op_CreateThingType.go | 5 +- .../iot/api_op_DescribeDomainConfiguration.go | 41 + ...i_op_DisassociateSbomFromPackageVersion.go | 4 +- service/iot/api_op_GetPackageVersion.go | 2 +- .../iot/api_op_UpdateDomainConfiguration.go | 41 + service/iot/api_op_UpdatePackageVersion.go | 2 +- service/iot/api_op_UpdateRoleAlias.go | 7 + service/iot/deserializers.go | 63 ++ service/iot/serializers.go | 46 + service/iot/types/enums.go | 48 + service/iot/types/types.go | 19 +- service/iot1clickdevicesservice/api_client.go | 4 +- service/iot1clickprojects/api_client.go | 4 +- service/iotanalytics/api_client.go | 4 +- service/iotdataplane/api_client.go | 4 +- service/iotdeviceadvisor/api_client.go | 4 +- service/iotevents/api_client.go | 4 +- service/ioteventsdata/api_client.go | 4 +- service/iotfleethub/api_client.go | 4 +- service/iotfleetwise/api_client.go | 4 +- service/iotjobsdataplane/api_client.go | 4 +- service/iotsecuretunneling/api_client.go | 4 +- service/iotsitewise/api_client.go | 4 +- service/iotthingsgraph/api_client.go | 4 +- service/iottwinmaker/api_client.go | 4 +- service/iotwireless/api_client.go | 4 +- service/ivs/api_client.go | 4 +- service/ivschat/api_client.go | 4 +- service/ivsrealtime/api_client.go | 4 +- service/kafka/api_client.go | 4 +- service/kafkaconnect/api_client.go | 4 +- service/kendra/api_client.go | 4 +- service/kendraranking/api_client.go | 4 +- service/keyspaces/api_client.go | 4 +- service/kinesis/api_client.go | 4 +- service/kinesisanalytics/api_client.go | 4 +- service/kinesisanalyticsv2/api_client.go | 4 +- service/kinesisvideo/api_client.go | 4 +- .../kinesisvideoarchivedmedia/api_client.go | 4 +- service/kinesisvideomedia/api_client.go | 4 +- service/kinesisvideosignaling/api_client.go | 4 +- .../kinesisvideowebrtcstorage/api_client.go | 4 +- service/kms/api_client.go | 4 +- service/lakeformation/api_client.go | 4 +- service/lambda/api_client.go | 4 +- service/launchwizard/api_client.go | 4 +- service/lexmodelbuildingservice/api_client.go | 4 +- service/lexmodelsv2/api_client.go | 4 +- service/lexruntimeservice/api_client.go | 4 +- service/lexruntimev2/api_client.go | 4 +- service/licensemanager/api_client.go | 4 +- .../api_client.go | 4 +- .../api_client.go | 4 +- service/lightsail/api_client.go | 4 +- service/location/api_client.go | 4 +- service/lookoutequipment/api_client.go | 4 +- service/lookoutmetrics/api_client.go | 4 +- service/lookoutvision/api_client.go | 4 +- service/m2/api_client.go | 4 +- service/machinelearning/api_client.go | 4 +- service/macie2/api_client.go | 4 +- service/mailmanager/api_client.go | 4 +- service/managedblockchain/api_client.go | 4 +- service/managedblockchainquery/api_client.go | 4 +- service/marketplaceagreement/api_client.go | 4 +- service/marketplacecatalog/api_client.go | 4 +- .../api_client.go | 4 +- service/marketplacedeployment/api_client.go | 4 +- .../api_client.go | 4 +- service/marketplacemetering/api_client.go | 4 +- service/marketplacereporting/LICENSE.txt | 202 ++++ service/marketplacereporting/api_client.go | 911 ++++++++++++++++++ .../marketplacereporting/api_client_test.go | 127 +++ .../api_op_GetBuyerDashboard.go | 190 ++++ service/marketplacereporting/auth.go | 313 ++++++ service/marketplacereporting/deserializers.go | 549 +++++++++++ service/marketplacereporting/doc.go | 52 + service/marketplacereporting/endpoints.go | 537 +++++++++++ .../endpoints_config_test.go | 139 +++ .../marketplacereporting/endpoints_test.go | 820 ++++++++++++++++ service/marketplacereporting/generated.json | 32 + service/marketplacereporting/go.mod | 16 + service/marketplacereporting/go.sum | 2 + .../go_module_metadata.go | 6 + .../internal/endpoints/endpoints.go | 296 ++++++ .../internal/endpoints/endpoints_test.go | 11 + service/marketplacereporting/options.go | 232 +++++ service/marketplacereporting/protocol_test.go | 3 + service/marketplacereporting/serializers.go | 114 +++ .../snapshot/api_op_GetBuyerDashboard.go.snap | 41 + service/marketplacereporting/snapshot_test.go | 86 ++ service/marketplacereporting/types/errors.go | 113 +++ service/marketplacereporting/types/types.go | 9 + service/marketplacereporting/validators.go | 52 + service/mediaconnect/api_client.go | 4 +- service/mediaconvert/api_client.go | 4 +- service/medialive/api_client.go | 4 +- service/mediapackage/api_client.go | 4 +- service/mediapackagev2/api_client.go | 4 +- service/mediapackagev2/deserializers.go | 101 ++ service/mediapackagev2/serializers.go | 50 + service/mediapackagev2/types/enums.go | 4 + service/mediapackagev2/types/types.go | 47 + service/mediapackagev2/validators.go | 25 + service/mediapackagevod/api_client.go | 4 +- service/mediastore/api_client.go | 4 +- service/mediastoredata/api_client.go | 4 +- service/mediatailor/api_client.go | 4 +- service/medicalimaging/api_client.go | 4 +- service/memorydb/api_client.go | 4 +- service/mgn/api_client.go | 4 +- service/migrationhub/api_client.go | 4 +- service/migrationhubconfig/api_client.go | 4 +- .../migrationhuborchestrator/api_client.go | 4 +- .../migrationhubrefactorspaces/api_client.go | 4 +- service/migrationhubstrategy/api_client.go | 4 +- service/mq/api_client.go | 4 +- service/mturk/api_client.go | 4 +- service/mwaa/api_client.go | 4 +- service/neptune/api_client.go | 4 +- service/neptunedata/api_client.go | 4 +- service/neptunegraph/api_client.go | 4 +- service/networkfirewall/api_client.go | 4 +- service/networkmanager/api_client.go | 4 +- service/networkmonitor/api_client.go | 4 +- service/nimble/api_client.go | 4 +- service/oam/api_client.go | 4 +- service/omics/api_client.go | 4 +- service/opensearch/api_client.go | 4 +- service/opensearchserverless/api_client.go | 4 +- service/opsworks/api_client.go | 4 +- service/opsworkscm/api_client.go | 4 +- service/organizations/api_client.go | 4 +- service/osis/api_client.go | 4 +- service/outposts/api_client.go | 4 +- service/panorama/api_client.go | 4 +- service/paymentcryptography/api_client.go | 4 +- service/paymentcryptographydata/api_client.go | 4 +- service/pcaconnectorad/api_client.go | 4 +- service/pcaconnectorscep/api_client.go | 4 +- service/pcs/api_client.go | 4 +- service/personalize/api_client.go | 4 +- service/personalizeevents/api_client.go | 4 +- service/personalizeruntime/api_client.go | 4 +- service/pi/api_client.go | 4 +- service/pinpoint/api_client.go | 4 +- service/pinpointemail/api_client.go | 4 +- service/pinpointsmsvoice/api_client.go | 4 +- service/pinpointsmsvoicev2/api_client.go | 4 +- service/pipes/api_client.go | 4 +- service/polly/api_client.go | 4 +- service/pricing/api_client.go | 4 +- service/privatenetworks/api_client.go | 4 +- service/proton/api_client.go | 4 +- service/qapps/api_client.go | 4 +- service/qbusiness/api_client.go | 4 +- service/qconnect/api_client.go | 4 +- service/qldb/api_client.go | 4 +- service/qldbsession/api_client.go | 4 +- service/quicksight/api_client.go | 4 +- .../api_op_DescribeAssetBundleExportJob.go | 6 + .../api_op_StartAssetBundleExportJob.go | 9 + service/quicksight/deserializers.go | 440 +++++++++ service/quicksight/serializers.go | 203 ++++ service/quicksight/types/enums.go | 41 + service/quicksight/types/types.go | 98 ++ service/quicksight/validators.go | 163 ++++ service/ram/api_client.go | 4 +- service/rbin/api_client.go | 4 +- service/rds/api_client.go | 4 +- service/rdsdata/api_client.go | 4 +- service/redshift/api_client.go | 4 +- service/redshiftdata/api_client.go | 4 +- service/redshiftserverless/api_client.go | 4 +- service/rekognition/api_client.go | 4 +- service/repostspace/api_client.go | 4 +- service/resiliencehub/api_client.go | 4 +- service/resourceexplorer2/api_client.go | 4 +- service/resourcegroups/api_client.go | 4 +- .../resourcegroupstaggingapi/api_client.go | 4 +- service/robomaker/api_client.go | 4 +- service/rolesanywhere/api_client.go | 4 +- service/route53/api_client.go | 4 +- service/route53domains/api_client.go | 4 +- service/route53profiles/api_client.go | 4 +- service/route53recoverycluster/api_client.go | 4 +- .../api_client.go | 4 +- .../route53recoveryreadiness/api_client.go | 4 +- service/route53resolver/api_client.go | 4 +- service/rum/api_client.go | 4 +- service/s3/api_client.go | 4 +- service/s3control/api_client.go | 4 +- service/s3outposts/api_client.go | 4 +- service/sagemaker/api_client.go | 4 +- service/sagemakera2iruntime/api_client.go | 4 +- service/sagemakeredge/api_client.go | 4 +- .../api_client.go | 4 +- service/sagemakergeospatial/api_client.go | 4 +- service/sagemakermetrics/api_client.go | 4 +- service/sagemakerruntime/api_client.go | 4 +- service/savingsplans/api_client.go | 4 +- service/scheduler/api_client.go | 4 +- service/schemas/api_client.go | 4 +- service/secretsmanager/api_client.go | 4 +- service/securityhub/api_client.go | 4 +- service/securitylake/api_client.go | 4 +- .../api_client.go | 4 +- service/servicecatalog/api_client.go | 4 +- .../servicecatalogappregistry/api_client.go | 4 +- service/servicediscovery/api_client.go | 4 +- service/servicequotas/api_client.go | 4 +- service/ses/api_client.go | 4 +- service/sesv2/api_client.go | 4 +- service/sfn/api_client.go | 4 +- service/shield/api_client.go | 4 +- service/signer/api_client.go | 4 +- service/simspaceweaver/api_client.go | 4 +- service/sms/api_client.go | 4 +- service/snowball/api_client.go | 4 +- service/snowdevicemanagement/api_client.go | 4 +- service/sns/api_client.go | 4 +- service/sqs/api_client.go | 4 +- service/ssm/api_client.go | 4 +- service/ssmcontacts/api_client.go | 4 +- service/ssmincidents/api_client.go | 4 +- service/ssmquicksetup/api_client.go | 4 +- service/ssmsap/api_client.go | 4 +- service/sso/api_client.go | 4 +- service/ssoadmin/api_client.go | 4 +- service/ssooidc/api_client.go | 4 +- service/storagegateway/api_client.go | 4 +- service/sts/api_client.go | 4 +- service/supplychain/api_client.go | 4 +- service/support/api_client.go | 4 +- service/supportapp/api_client.go | 4 +- service/swf/api_client.go | 4 +- service/synthetics/api_client.go | 4 +- service/taxsettings/api_client.go | 4 +- service/textract/api_client.go | 4 +- service/timestreaminfluxdb/api_client.go | 4 +- service/timestreamquery/api_client.go | 4 +- service/timestreamwrite/api_client.go | 4 +- service/tnb/api_client.go | 4 +- service/transcribe/api_client.go | 4 +- service/transcribestreaming/api_client.go | 4 +- service/transfer/api_client.go | 4 +- service/translate/api_client.go | 4 +- service/trustedadvisor/api_client.go | 4 +- service/verifiedpermissions/api_client.go | 4 +- service/voiceid/api_client.go | 4 +- service/vpclattice/api_client.go | 4 +- service/waf/api_client.go | 4 +- service/wafregional/api_client.go | 4 +- service/wafv2/api_client.go | 4 +- service/wellarchitected/api_client.go | 4 +- service/wisdom/api_client.go | 4 +- service/workdocs/api_client.go | 4 +- service/workmail/api_client.go | 4 +- service/workmailmessageflow/api_client.go | 4 +- service/workspaces/api_client.go | 4 +- service/workspacesthinclient/api_client.go | 4 +- service/workspacesweb/api_client.go | 4 +- service/xray/api_client.go | 4 +- service/xray/internal/endpoints/endpoints.go | 5 + 489 files changed, 8063 insertions(+), 873 deletions(-) create mode 100644 .changelog/1695da4754d34448b59d7076850c5b47.json create mode 100644 .changelog/3f2ce88acc8a48418df8653d516a9e76.json create mode 100644 .changelog/41575353444b40ffbf474f4155544f00.json create mode 100644 .changelog/64e16924afd545c99380bb8918395dd3.json create mode 100644 .changelog/6f783811652549a98f0dd54c9b6a866d.json create mode 100644 .changelog/96171a0b7c3f421e979632814c6b59ed.json create mode 100644 .changelog/d566d2bb976547639c32c8066ea9ee9b.json create mode 100644 .changelog/f3b1d132c6b343259f68341f49e0540a.json create mode 100644 service/ec2/api_op_ModifyInstanceCpuOptions.go create mode 100644 service/ec2/snapshot/api_op_ModifyInstanceCpuOptions.go.snap create mode 100644 service/marketplacereporting/LICENSE.txt create mode 100644 service/marketplacereporting/api_client.go create mode 100644 service/marketplacereporting/api_client_test.go create mode 100644 service/marketplacereporting/api_op_GetBuyerDashboard.go create mode 100644 service/marketplacereporting/auth.go create mode 100644 service/marketplacereporting/deserializers.go create mode 100644 service/marketplacereporting/doc.go create mode 100644 service/marketplacereporting/endpoints.go create mode 100644 service/marketplacereporting/endpoints_config_test.go create mode 100644 service/marketplacereporting/endpoints_test.go create mode 100644 service/marketplacereporting/generated.json create mode 100644 service/marketplacereporting/go.mod create mode 100644 service/marketplacereporting/go.sum create mode 100644 service/marketplacereporting/go_module_metadata.go create mode 100644 service/marketplacereporting/internal/endpoints/endpoints.go create mode 100644 service/marketplacereporting/internal/endpoints/endpoints_test.go create mode 100644 service/marketplacereporting/options.go create mode 100644 service/marketplacereporting/protocol_test.go create mode 100644 service/marketplacereporting/serializers.go create mode 100644 service/marketplacereporting/snapshot/api_op_GetBuyerDashboard.go.snap create mode 100644 service/marketplacereporting/snapshot_test.go create mode 100644 service/marketplacereporting/types/errors.go create mode 100644 service/marketplacereporting/types/types.go create mode 100644 service/marketplacereporting/validators.go diff --git a/.changelog/1695da4754d34448b59d7076850c5b47.json b/.changelog/1695da4754d34448b59d7076850c5b47.json new file mode 100644 index 00000000000..05d8ad1a7ab --- /dev/null +++ b/.changelog/1695da4754d34448b59d7076850c5b47.json @@ -0,0 +1,8 @@ +{ + "id": "1695da47-54d3-4448-b59d-7076850c5b47", + "type": "feature", + "description": "This release includes a new API for modifying instance cpu-options after launch.", + "modules": [ + "service/ec2" + ] +} \ No newline at end of file diff --git a/.changelog/3f2ce88acc8a48418df8653d516a9e76.json b/.changelog/3f2ce88acc8a48418df8653d516a9e76.json new file mode 100644 index 00000000000..b878e5e65c4 --- /dev/null +++ b/.changelog/3f2ce88acc8a48418df8653d516a9e76.json @@ -0,0 +1,8 @@ +{ + "id": "3f2ce88a-cc8a-4841-8df8-653d516a9e76", + "type": "feature", + "description": "AWS CodePipeline introduces Commands action that enables you to easily run shell commands as part of your pipeline execution.", + "modules": [ + "service/codepipeline" + ] +} \ No newline at end of file diff --git a/.changelog/41575353444b40ffbf474f4155544f00.json b/.changelog/41575353444b40ffbf474f4155544f00.json new file mode 100644 index 00000000000..78079e1695e --- /dev/null +++ b/.changelog/41575353444b40ffbf474f4155544f00.json @@ -0,0 +1,8 @@ +{ + "id": "41575353-444b-40ff-bf47-4f4155544f00", + "type": "release", + "description": "New AWS service client module", + "modules": [ + "service/marketplacereporting" + ] +} \ No newline at end of file diff --git a/.changelog/64e16924afd545c99380bb8918395dd3.json b/.changelog/64e16924afd545c99380bb8918395dd3.json new file mode 100644 index 00000000000..9c7ab8ba980 --- /dev/null +++ b/.changelog/64e16924afd545c99380bb8918395dd3.json @@ -0,0 +1,8 @@ +{ + "id": "64e16924-afd5-45c9-9380-bb8918395dd3", + "type": "feature", + "description": "QuickSight: Add support for exporting and importing folders in AssetBundle APIs", + "modules": [ + "service/quicksight" + ] +} \ No newline at end of file diff --git a/.changelog/6f783811652549a98f0dd54c9b6a866d.json b/.changelog/6f783811652549a98f0dd54c9b6a866d.json new file mode 100644 index 00000000000..3395e488159 --- /dev/null +++ b/.changelog/6f783811652549a98f0dd54c9b6a866d.json @@ -0,0 +1,8 @@ +{ + "id": "6f783811-6525-49a9-8f0d-d54c9b6a866d", + "type": "feature", + "description": "The AWS Marketplace Reporting service introduces the GetBuyerDashboard API. This API returns a dashboard that provides visibility into your organization's AWS Marketplace agreements and associated spend across the AWS accounts in your organization.", + "modules": [ + "service/marketplacereporting" + ] +} \ No newline at end of file diff --git a/.changelog/96171a0b7c3f421e979632814c6b59ed.json b/.changelog/96171a0b7c3f421e979632814c6b59ed.json new file mode 100644 index 00000000000..544d8380a77 --- /dev/null +++ b/.changelog/96171a0b7c3f421e979632814c6b59ed.json @@ -0,0 +1,8 @@ +{ + "id": "96171a0b-7c3f-421e-9796-32814c6b59ed", + "type": "feature", + "description": "Public GetMetricDataV2 Grouping increase from 3 to 4", + "modules": [ + "service/connect" + ] +} \ No newline at end of file diff --git a/.changelog/d566d2bb976547639c32c8066ea9ee9b.json b/.changelog/d566d2bb976547639c32c8066ea9ee9b.json new file mode 100644 index 00000000000..de11d24dc3c --- /dev/null +++ b/.changelog/d566d2bb976547639c32c8066ea9ee9b.json @@ -0,0 +1,8 @@ +{ + "id": "d566d2bb-9765-4763-9c32-c8066ea9ee9b", + "type": "feature", + "description": "Added support for ClipStartTime on the FilterConfiguration object on OriginEndpoint manifest settings objects. Added support for EXT-X-START tags on produced HLS child playlists.", + "modules": [ + "service/mediapackagev2" + ] +} \ No newline at end of file diff --git a/.changelog/f3b1d132c6b343259f68341f49e0540a.json b/.changelog/f3b1d132c6b343259f68341f49e0540a.json new file mode 100644 index 00000000000..47fd5860381 --- /dev/null +++ b/.changelog/f3b1d132c6b343259f68341f49e0540a.json @@ -0,0 +1,8 @@ +{ + "id": "f3b1d132-c6b3-4325-9f68-341f49e0540a", + "type": "feature", + "description": "This release adds support for Custom Authentication with X.509 Client Certificates, support for Custom Client Certificate validation, and support for selecting application protocol and authentication type without requiring TLS ALPN for customer's AWS IoT Domain Configurations.", + "modules": [ + "service/iot" + ] +} \ 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 7acc42079b1..113a2f3cd9a 100644 --- a/feature/dynamodbstreams/attributevalue/go_module_metadata.go +++ b/feature/dynamodbstreams/attributevalue/go_module_metadata.go @@ -3,4 +3,4 @@ package attributevalue // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.14.26" +const goModuleVersion = "1.15.8" diff --git a/service/accessanalyzer/api_client.go b/service/accessanalyzer/api_client.go index e7ffe0f2dc5..2ad2d7ab5f1 100644 --- a/service/accessanalyzer/api_client.go +++ b/service/accessanalyzer/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/account/api_client.go b/service/account/api_client.go index fe398101ef7..c7e39d44a26 100644 --- a/service/account/api_client.go +++ b/service/account/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/acm/api_client.go b/service/acm/api_client.go index e6c27ea8bea..f280a1f44fa 100644 --- a/service/acm/api_client.go +++ b/service/acm/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/acmpca/api_client.go b/service/acmpca/api_client.go index 76ac1c76a95..10899c87f9f 100644 --- a/service/acmpca/api_client.go +++ b/service/acmpca/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/amp/api_client.go b/service/amp/api_client.go index 6f0fcdd5254..ab6963fdb1a 100644 --- a/service/amp/api_client.go +++ b/service/amp/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/amplify/api_client.go b/service/amplify/api_client.go index 9b4fb9a2654..36418a23b38 100644 --- a/service/amplify/api_client.go +++ b/service/amplify/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/amplifybackend/api_client.go b/service/amplifybackend/api_client.go index dbf66e464dc..3cb672e201d 100644 --- a/service/amplifybackend/api_client.go +++ b/service/amplifybackend/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/amplifyuibuilder/api_client.go b/service/amplifyuibuilder/api_client.go index 1669c336796..ad86e25abc2 100644 --- a/service/amplifyuibuilder/api_client.go +++ b/service/amplifyuibuilder/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/apigateway/api_client.go b/service/apigateway/api_client.go index 7853d582f0a..7d20ee4aef3 100644 --- a/service/apigateway/api_client.go +++ b/service/apigateway/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/apigatewaymanagementapi/api_client.go b/service/apigatewaymanagementapi/api_client.go index ecc0bab2368..67de2de8116 100644 --- a/service/apigatewaymanagementapi/api_client.go +++ b/service/apigatewaymanagementapi/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/apigatewayv2/api_client.go b/service/apigatewayv2/api_client.go index 6899a3ab543..71b544f96b3 100644 --- a/service/apigatewayv2/api_client.go +++ b/service/apigatewayv2/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/appconfig/api_client.go b/service/appconfig/api_client.go index 5b38d261d0d..ab2165b1318 100644 --- a/service/appconfig/api_client.go +++ b/service/appconfig/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/appconfigdata/api_client.go b/service/appconfigdata/api_client.go index cdec14cb1ee..642db2c10d6 100644 --- a/service/appconfigdata/api_client.go +++ b/service/appconfigdata/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/appfabric/api_client.go b/service/appfabric/api_client.go index dd958df7371..9f232e55097 100644 --- a/service/appfabric/api_client.go +++ b/service/appfabric/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/appflow/api_client.go b/service/appflow/api_client.go index aab84f347b0..18493b07ca9 100644 --- a/service/appflow/api_client.go +++ b/service/appflow/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/appintegrations/api_client.go b/service/appintegrations/api_client.go index 5a1b6646247..e29575559cb 100644 --- a/service/appintegrations/api_client.go +++ b/service/appintegrations/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/applicationautoscaling/api_client.go b/service/applicationautoscaling/api_client.go index d3fc15a8364..6670574229a 100644 --- a/service/applicationautoscaling/api_client.go +++ b/service/applicationautoscaling/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/applicationcostprofiler/api_client.go b/service/applicationcostprofiler/api_client.go index b36f23cf9c7..c53b97fb46d 100644 --- a/service/applicationcostprofiler/api_client.go +++ b/service/applicationcostprofiler/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/applicationdiscoveryservice/api_client.go b/service/applicationdiscoveryservice/api_client.go index 3f6bf1b3af8..4a6e8db8315 100644 --- a/service/applicationdiscoveryservice/api_client.go +++ b/service/applicationdiscoveryservice/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/applicationinsights/api_client.go b/service/applicationinsights/api_client.go index 69ce07d1617..20bc0a51149 100644 --- a/service/applicationinsights/api_client.go +++ b/service/applicationinsights/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/applicationsignals/api_client.go b/service/applicationsignals/api_client.go index 35a7db25bd1..8d8718a4f9b 100644 --- a/service/applicationsignals/api_client.go +++ b/service/applicationsignals/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/appmesh/api_client.go b/service/appmesh/api_client.go index b651da2cf15..58ccd3ab3a3 100644 --- a/service/appmesh/api_client.go +++ b/service/appmesh/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/apprunner/api_client.go b/service/apprunner/api_client.go index cbe803b7430..4c4e67341de 100644 --- a/service/apprunner/api_client.go +++ b/service/apprunner/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/appstream/api_client.go b/service/appstream/api_client.go index bb3d342d923..481910b212d 100644 --- a/service/appstream/api_client.go +++ b/service/appstream/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/appsync/api_client.go b/service/appsync/api_client.go index 5cdb8cdb580..2aaf0af16fc 100644 --- a/service/appsync/api_client.go +++ b/service/appsync/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/apptest/api_client.go b/service/apptest/api_client.go index 21230eebdfa..792274dc31f 100644 --- a/service/apptest/api_client.go +++ b/service/apptest/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/arczonalshift/api_client.go b/service/arczonalshift/api_client.go index a3d47416d6b..a2c1f988392 100644 --- a/service/arczonalshift/api_client.go +++ b/service/arczonalshift/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/artifact/api_client.go b/service/artifact/api_client.go index fdfa6c9d77e..5bfbd7e3f19 100644 --- a/service/artifact/api_client.go +++ b/service/artifact/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/athena/api_client.go b/service/athena/api_client.go index ff2d15c661a..78fa448fbe4 100644 --- a/service/athena/api_client.go +++ b/service/athena/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/auditmanager/api_client.go b/service/auditmanager/api_client.go index d4eb70e67bc..70a5a83855c 100644 --- a/service/auditmanager/api_client.go +++ b/service/auditmanager/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/autoscaling/api_client.go b/service/autoscaling/api_client.go index 74a21394cca..130aff3e43b 100644 --- a/service/autoscaling/api_client.go +++ b/service/autoscaling/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/autoscalingplans/api_client.go b/service/autoscalingplans/api_client.go index ad7f3ec38cb..c1e8bfdf16b 100644 --- a/service/autoscalingplans/api_client.go +++ b/service/autoscalingplans/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/b2bi/api_client.go b/service/b2bi/api_client.go index d7a686b5f40..f90181a7a10 100644 --- a/service/b2bi/api_client.go +++ b/service/b2bi/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/backup/api_client.go b/service/backup/api_client.go index c97d6ba86ff..b3f39981f3d 100644 --- a/service/backup/api_client.go +++ b/service/backup/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/backupgateway/api_client.go b/service/backupgateway/api_client.go index 3a2f6050097..cfb17ec29f7 100644 --- a/service/backupgateway/api_client.go +++ b/service/backupgateway/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/batch/api_client.go b/service/batch/api_client.go index bcb4c6ce7b2..839347251ec 100644 --- a/service/batch/api_client.go +++ b/service/batch/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/bcmdataexports/api_client.go b/service/bcmdataexports/api_client.go index ef222d87c6e..ab6f892da29 100644 --- a/service/bcmdataexports/api_client.go +++ b/service/bcmdataexports/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/bedrock/api_client.go b/service/bedrock/api_client.go index 306a85ca818..c8426d40c3c 100644 --- a/service/bedrock/api_client.go +++ b/service/bedrock/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/bedrockagent/api_client.go b/service/bedrockagent/api_client.go index 9fa77e172df..b2075999456 100644 --- a/service/bedrockagent/api_client.go +++ b/service/bedrockagent/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/bedrockagentruntime/api_client.go b/service/bedrockagentruntime/api_client.go index 42f2512a934..061b12b78b7 100644 --- a/service/bedrockagentruntime/api_client.go +++ b/service/bedrockagentruntime/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/bedrockruntime/api_client.go b/service/bedrockruntime/api_client.go index a9bbede73ea..3123d5dc31a 100644 --- a/service/bedrockruntime/api_client.go +++ b/service/bedrockruntime/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/billingconductor/api_client.go b/service/billingconductor/api_client.go index 64a90667796..9f2b6af5a31 100644 --- a/service/billingconductor/api_client.go +++ b/service/billingconductor/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/braket/api_client.go b/service/braket/api_client.go index dddd904affe..829f8483257 100644 --- a/service/braket/api_client.go +++ b/service/braket/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/budgets/api_client.go b/service/budgets/api_client.go index 0fccf815a5b..0254fb6e6a5 100644 --- a/service/budgets/api_client.go +++ b/service/budgets/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/chatbot/api_client.go b/service/chatbot/api_client.go index 2f34caf2834..1865b3cdcef 100644 --- a/service/chatbot/api_client.go +++ b/service/chatbot/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/chime/api_client.go b/service/chime/api_client.go index 18a99273bda..f697d261b81 100644 --- a/service/chime/api_client.go +++ b/service/chime/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/chimesdkidentity/api_client.go b/service/chimesdkidentity/api_client.go index f70dde8a23c..4ef9fe50450 100644 --- a/service/chimesdkidentity/api_client.go +++ b/service/chimesdkidentity/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/chimesdkmediapipelines/api_client.go b/service/chimesdkmediapipelines/api_client.go index bf8b9d0d022..80eb77313f8 100644 --- a/service/chimesdkmediapipelines/api_client.go +++ b/service/chimesdkmediapipelines/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/chimesdkmeetings/api_client.go b/service/chimesdkmeetings/api_client.go index 6ba24130edb..f9d14e68373 100644 --- a/service/chimesdkmeetings/api_client.go +++ b/service/chimesdkmeetings/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/chimesdkmessaging/api_client.go b/service/chimesdkmessaging/api_client.go index c34c3a21d5f..13ea966f0d8 100644 --- a/service/chimesdkmessaging/api_client.go +++ b/service/chimesdkmessaging/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/chimesdkvoice/api_client.go b/service/chimesdkvoice/api_client.go index be69c79281c..96f42f6a6d1 100644 --- a/service/chimesdkvoice/api_client.go +++ b/service/chimesdkvoice/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cleanrooms/api_client.go b/service/cleanrooms/api_client.go index 89888581ab2..6c38d7ea8e7 100644 --- a/service/cleanrooms/api_client.go +++ b/service/cleanrooms/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cleanroomsml/api_client.go b/service/cleanroomsml/api_client.go index 61bcf5142cd..ba649135e40 100644 --- a/service/cleanroomsml/api_client.go +++ b/service/cleanroomsml/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloud9/api_client.go b/service/cloud9/api_client.go index 7a35e632e51..82d825cdd40 100644 --- a/service/cloud9/api_client.go +++ b/service/cloud9/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudcontrol/api_client.go b/service/cloudcontrol/api_client.go index 8ae81e9a6d4..5d8b31c6bac 100644 --- a/service/cloudcontrol/api_client.go +++ b/service/cloudcontrol/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/clouddirectory/api_client.go b/service/clouddirectory/api_client.go index 6f552df78b7..371fe43107c 100644 --- a/service/clouddirectory/api_client.go +++ b/service/clouddirectory/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudformation/api_client.go b/service/cloudformation/api_client.go index 5585057902d..8d9dbcf8a66 100644 --- a/service/cloudformation/api_client.go +++ b/service/cloudformation/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudfront/api_client.go b/service/cloudfront/api_client.go index 4ac8ddba3ad..ccbc3c68cb9 100644 --- a/service/cloudfront/api_client.go +++ b/service/cloudfront/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudfrontkeyvaluestore/api_client.go b/service/cloudfrontkeyvaluestore/api_client.go index 3363179d499..07e8e3f9ef2 100644 --- a/service/cloudfrontkeyvaluestore/api_client.go +++ b/service/cloudfrontkeyvaluestore/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveHTTPSignerV4a(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudhsm/api_client.go b/service/cloudhsm/api_client.go index e2168d1fd33..0d7effb3fe4 100644 --- a/service/cloudhsm/api_client.go +++ b/service/cloudhsm/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudhsmv2/api_client.go b/service/cloudhsmv2/api_client.go index b65316b9954..738bb669e01 100644 --- a/service/cloudhsmv2/api_client.go +++ b/service/cloudhsmv2/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudsearch/api_client.go b/service/cloudsearch/api_client.go index 95a903259bb..d0f9dc1e3e3 100644 --- a/service/cloudsearch/api_client.go +++ b/service/cloudsearch/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudsearchdomain/api_client.go b/service/cloudsearchdomain/api_client.go index 176c62cbd8f..8749acd4d99 100644 --- a/service/cloudsearchdomain/api_client.go +++ b/service/cloudsearchdomain/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudtrail/api_client.go b/service/cloudtrail/api_client.go index 20e8a02d13e..454d65efd08 100644 --- a/service/cloudtrail/api_client.go +++ b/service/cloudtrail/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudtraildata/api_client.go b/service/cloudtraildata/api_client.go index 417a8eec619..a5154b3324b 100644 --- a/service/cloudtraildata/api_client.go +++ b/service/cloudtraildata/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudwatch/api_client.go b/service/cloudwatch/api_client.go index 17c816b4643..a32b9c25803 100644 --- a/service/cloudwatch/api_client.go +++ b/service/cloudwatch/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudwatchevents/api_client.go b/service/cloudwatchevents/api_client.go index 8507a27e582..b38ba2400ee 100644 --- a/service/cloudwatchevents/api_client.go +++ b/service/cloudwatchevents/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cloudwatchlogs/api_client.go b/service/cloudwatchlogs/api_client.go index 561e6cb326f..5af89ad4d8a 100644 --- a/service/cloudwatchlogs/api_client.go +++ b/service/cloudwatchlogs/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codeartifact/api_client.go b/service/codeartifact/api_client.go index 797181b5cf9..ed240990f2f 100644 --- a/service/codeartifact/api_client.go +++ b/service/codeartifact/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codebuild/api_client.go b/service/codebuild/api_client.go index b3d7bf7672a..c4779f03a0e 100644 --- a/service/codebuild/api_client.go +++ b/service/codebuild/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codecatalyst/api_client.go b/service/codecatalyst/api_client.go index c005fbc8d67..56298cde6e5 100644 --- a/service/codecatalyst/api_client.go +++ b/service/codecatalyst/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveBearerAuthSigner(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codecommit/api_client.go b/service/codecommit/api_client.go index 7fd68950710..587301316f0 100644 --- a/service/codecommit/api_client.go +++ b/service/codecommit/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codeconnections/api_client.go b/service/codeconnections/api_client.go index d3c38d25037..b0d9015fb51 100644 --- a/service/codeconnections/api_client.go +++ b/service/codeconnections/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codedeploy/api_client.go b/service/codedeploy/api_client.go index 2818b711269..5c47eba070c 100644 --- a/service/codedeploy/api_client.go +++ b/service/codedeploy/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codeguruprofiler/api_client.go b/service/codeguruprofiler/api_client.go index 825a50aa2a8..b766e9c0916 100644 --- a/service/codeguruprofiler/api_client.go +++ b/service/codeguruprofiler/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codegurureviewer/api_client.go b/service/codegurureviewer/api_client.go index f7b3d7255ce..f47deb855f3 100644 --- a/service/codegurureviewer/api_client.go +++ b/service/codegurureviewer/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codegurusecurity/api_client.go b/service/codegurusecurity/api_client.go index de3a88ec9e6..e7550df7c69 100644 --- a/service/codegurusecurity/api_client.go +++ b/service/codegurusecurity/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codepipeline/api_client.go b/service/codepipeline/api_client.go index 88abbad963c..4be215e40ed 100644 --- a/service/codepipeline/api_client.go +++ b/service/codepipeline/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codepipeline/deserializers.go b/service/codepipeline/deserializers.go index 95dbc67bd42..ea93f779e0f 100644 --- a/service/codepipeline/deserializers.go +++ b/service/codepipeline/deserializers.go @@ -6625,6 +6625,11 @@ func awsAwsjson11_deserializeDocumentActionDeclaration(v **types.ActionDeclarati return err } + case "commands": + if err := awsAwsjson11_deserializeDocumentCommandList(&sv.Commands, value); err != nil { + return err + } + case "configuration": if err := awsAwsjson11_deserializeDocumentActionConfigurationMap(&sv.Configuration, value); err != nil { return err @@ -6658,6 +6663,11 @@ func awsAwsjson11_deserializeDocumentActionDeclaration(v **types.ActionDeclarati return err } + case "outputVariables": + if err := awsAwsjson11_deserializeDocumentOutputVariableList(&sv.OutputVariables, value); err != nil { + return err + } + case "region": if value != nil { jtv, ok := value.(string) @@ -8862,6 +8872,42 @@ func awsAwsjson11_deserializeDocumentBlockerDeclaration(v **types.BlockerDeclara return nil } +func awsAwsjson11_deserializeDocumentCommandList(v *[]string, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []string + if *v == nil { + cv = []string{} + } else { + cv = *v + } + + for _, value := range shape { + var col string + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Command to be of type string, got %T instead", value) + } + col = jtv + } + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsAwsjson11_deserializeDocumentConcurrentModificationException(v **types.ConcurrentModificationException, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -9514,6 +9560,42 @@ func awsAwsjson11_deserializeDocumentFailureConditions(v **types.FailureConditio return nil } +func awsAwsjson11_deserializeDocumentFilePathList(v *[]string, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []string + if *v == nil { + cv = []string{} + } else { + cv = *v + } + + for _, value := range shape { + var col string + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected FilePath to be of type string, got %T instead", value) + } + col = jtv + } + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsAwsjson11_deserializeDocumentGitBranchFilterCriteria(v **types.GitBranchFilterCriteria, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -11167,6 +11249,11 @@ func awsAwsjson11_deserializeDocumentOutputArtifact(v **types.OutputArtifact, va for key, value := range shape { switch key { + case "files": + if err := awsAwsjson11_deserializeDocumentFilePathList(&sv.Files, value); err != nil { + return err + } + case "name": if value != nil { jtv, ok := value.(string) @@ -11219,6 +11306,42 @@ func awsAwsjson11_deserializeDocumentOutputArtifactList(v *[]types.OutputArtifac return nil } +func awsAwsjson11_deserializeDocumentOutputVariableList(v *[]string, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []string + if *v == nil { + cv = []string{} + } else { + cv = *v + } + + for _, value := range shape { + var col string + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected OutputVariable to be of type string, got %T instead", value) + } + col = jtv + } + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsAwsjson11_deserializeDocumentOutputVariablesMap(v *map[string]string, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/codepipeline/serializers.go b/service/codepipeline/serializers.go index feb941d4dec..da53d215528 100644 --- a/service/codepipeline/serializers.go +++ b/service/codepipeline/serializers.go @@ -2716,6 +2716,13 @@ func awsAwsjson11_serializeDocumentActionDeclaration(v *types.ActionDeclaration, } } + if v.Commands != nil { + ok := object.Key("commands") + if err := awsAwsjson11_serializeDocumentCommandList(v.Commands, ok); err != nil { + return err + } + } + if v.Configuration != nil { ok := object.Key("configuration") if err := awsAwsjson11_serializeDocumentActionConfigurationMap(v.Configuration, ok); err != nil { @@ -2747,6 +2754,13 @@ func awsAwsjson11_serializeDocumentActionDeclaration(v *types.ActionDeclaration, } } + if v.OutputVariables != nil { + ok := object.Key("outputVariables") + if err := awsAwsjson11_serializeDocumentOutputVariableList(v.OutputVariables, ok); err != nil { + return err + } + } + if v.Region != nil { ok := object.Key("region") ok.String(*v.Region) @@ -3204,6 +3218,17 @@ func awsAwsjson11_serializeDocumentBlockerDeclaration(v *types.BlockerDeclaratio return nil } +func awsAwsjson11_serializeDocumentCommandList(v []string, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + av.String(v[i]) + } + return nil +} + func awsAwsjson11_serializeDocumentCondition(v *types.Condition, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -3364,6 +3389,17 @@ func awsAwsjson11_serializeDocumentFailureDetails(v *types.FailureDetails, value return nil } +func awsAwsjson11_serializeDocumentFilePathList(v []string, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + av.String(v[i]) + } + return nil +} + func awsAwsjson11_serializeDocumentGitBranchFilterCriteria(v *types.GitBranchFilterCriteria, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -3658,6 +3694,13 @@ func awsAwsjson11_serializeDocumentOutputArtifact(v *types.OutputArtifact, value object := value.Object() defer object.Close() + if v.Files != nil { + ok := object.Key("files") + if err := awsAwsjson11_serializeDocumentFilePathList(v.Files, ok); err != nil { + return err + } + } + if v.Name != nil { ok := object.Key("name") ok.String(*v.Name) @@ -3679,6 +3722,17 @@ func awsAwsjson11_serializeDocumentOutputArtifactList(v []types.OutputArtifact, return nil } +func awsAwsjson11_serializeDocumentOutputVariableList(v []string, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + av.String(v[i]) + } + return nil +} + func awsAwsjson11_serializeDocumentOutputVariablesMap(v map[string]string, value smithyjson.Value) error { object := value.Object() defer object.Close() diff --git a/service/codepipeline/types/types.go b/service/codepipeline/types/types.go index d4ee0fd8ff0..ac5fe2e09a2 100644 --- a/service/codepipeline/types/types.go +++ b/service/codepipeline/types/types.go @@ -89,6 +89,13 @@ type ActionDeclaration struct { // This member is required. Name *string + // The shell commands to run with your compute action in CodePipeline. All + // commands are supported except multi-line formats. While CodeBuild logs and + // permissions are used, you do not need to create any resources in CodeBuild. + // + // Using compute time for this action will incur separate charges in CodeBuild. + Commands []string + // The action's configuration. These are key-value pairs that specify input values // for an action. For more information, see [Action Structure Requirements in CodePipeline]. For the list of configuration // properties for the CloudFormation action type in CodePipeline, see [Configuration Properties Reference]in the @@ -119,6 +126,10 @@ type ActionDeclaration struct { // artifact. OutputArtifacts []OutputArtifact + // The list of variables that are to be exported from the compute action. This is + // specifically CodeBuild environment variables as used for that action. + OutputVariables []string + // The action declaration's Amazon Web Services Region, such as us-east-1. Region *string @@ -1351,6 +1362,10 @@ type OutputArtifact struct { // This member is required. Name *string + // The files that you want to associate with the output artifact that will be + // exported from the compute action. + Files []string + noSmithyDocumentSerde } diff --git a/service/codestarconnections/api_client.go b/service/codestarconnections/api_client.go index d2de3a6672e..160893117d5 100644 --- a/service/codestarconnections/api_client.go +++ b/service/codestarconnections/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/codestarnotifications/api_client.go b/service/codestarnotifications/api_client.go index 724b03eca60..d36b121c67d 100644 --- a/service/codestarnotifications/api_client.go +++ b/service/codestarnotifications/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cognitoidentity/api_client.go b/service/cognitoidentity/api_client.go index 556a0fbc590..cf65373febe 100644 --- a/service/cognitoidentity/api_client.go +++ b/service/cognitoidentity/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cognitoidentityprovider/api_client.go b/service/cognitoidentityprovider/api_client.go index 8b3c0b364ab..5954a9f77da 100644 --- a/service/cognitoidentityprovider/api_client.go +++ b/service/cognitoidentityprovider/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/cognitosync/api_client.go b/service/cognitosync/api_client.go index 39ba69e0689..6bf118071f5 100644 --- a/service/cognitosync/api_client.go +++ b/service/cognitosync/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/comprehend/api_client.go b/service/comprehend/api_client.go index 55f10bf2db2..ab09b229113 100644 --- a/service/comprehend/api_client.go +++ b/service/comprehend/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/comprehendmedical/api_client.go b/service/comprehendmedical/api_client.go index 7df5a0c9544..9b8f6a56e0f 100644 --- a/service/comprehendmedical/api_client.go +++ b/service/comprehendmedical/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/computeoptimizer/api_client.go b/service/computeoptimizer/api_client.go index 01d25407f7f..6dc16077caf 100644 --- a/service/computeoptimizer/api_client.go +++ b/service/computeoptimizer/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/configservice/api_client.go b/service/configservice/api_client.go index bf853a6fe4b..947cc57c609 100644 --- a/service/configservice/api_client.go +++ b/service/configservice/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/connect/api_client.go b/service/connect/api_client.go index 13f97351d3e..768544ed571 100644 --- a/service/connect/api_client.go +++ b/service/connect/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/connectcampaigns/api_client.go b/service/connectcampaigns/api_client.go index 1e08f142c20..15a0a8de902 100644 --- a/service/connectcampaigns/api_client.go +++ b/service/connectcampaigns/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/connectcases/api_client.go b/service/connectcases/api_client.go index 6a9e388a71b..0f42601d637 100644 --- a/service/connectcases/api_client.go +++ b/service/connectcases/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/connectcontactlens/api_client.go b/service/connectcontactlens/api_client.go index 482d5dc6a1b..9977f764702 100644 --- a/service/connectcontactlens/api_client.go +++ b/service/connectcontactlens/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/connectparticipant/api_client.go b/service/connectparticipant/api_client.go index bc56c54625e..347138a437e 100644 --- a/service/connectparticipant/api_client.go +++ b/service/connectparticipant/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/controlcatalog/api_client.go b/service/controlcatalog/api_client.go index 2c8ed057289..715e3b0c83a 100644 --- a/service/controlcatalog/api_client.go +++ b/service/controlcatalog/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/controltower/api_client.go b/service/controltower/api_client.go index 6ee0e5a1120..68531e8cbc9 100644 --- a/service/controltower/api_client.go +++ b/service/controltower/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/costandusagereportservice/api_client.go b/service/costandusagereportservice/api_client.go index dee6bd7eedd..f997d8090ed 100644 --- a/service/costandusagereportservice/api_client.go +++ b/service/costandusagereportservice/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/costexplorer/api_client.go b/service/costexplorer/api_client.go index 06cb912b8a4..4df2f9f3190 100644 --- a/service/costexplorer/api_client.go +++ b/service/costexplorer/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/costoptimizationhub/api_client.go b/service/costoptimizationhub/api_client.go index 0cd14de2ffd..4191efeac7a 100644 --- a/service/costoptimizationhub/api_client.go +++ b/service/costoptimizationhub/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/customerprofiles/api_client.go b/service/customerprofiles/api_client.go index ff7f5e55a80..3fee2e513d3 100644 --- a/service/customerprofiles/api_client.go +++ b/service/customerprofiles/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/databasemigrationservice/api_client.go b/service/databasemigrationservice/api_client.go index 92ef53452e3..4c3c452ab9f 100644 --- a/service/databasemigrationservice/api_client.go +++ b/service/databasemigrationservice/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/databrew/api_client.go b/service/databrew/api_client.go index 64eab0bc4c6..34f4923d68c 100644 --- a/service/databrew/api_client.go +++ b/service/databrew/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/dataexchange/api_client.go b/service/dataexchange/api_client.go index 6994db3cb08..d068907795c 100644 --- a/service/dataexchange/api_client.go +++ b/service/dataexchange/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/datapipeline/api_client.go b/service/datapipeline/api_client.go index faa9841b3c6..59a9dcf10be 100644 --- a/service/datapipeline/api_client.go +++ b/service/datapipeline/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/datasync/api_client.go b/service/datasync/api_client.go index 9253342e030..8f7a04174dd 100644 --- a/service/datasync/api_client.go +++ b/service/datasync/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/datazone/api_client.go b/service/datazone/api_client.go index ea6cc8a196d..6a006adb425 100644 --- a/service/datazone/api_client.go +++ b/service/datazone/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/dax/api_client.go b/service/dax/api_client.go index 6e33f01bf89..afc67e50264 100644 --- a/service/dax/api_client.go +++ b/service/dax/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/deadline/api_client.go b/service/deadline/api_client.go index 9436c1acd70..a3fa21fcdae 100644 --- a/service/deadline/api_client.go +++ b/service/deadline/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/detective/api_client.go b/service/detective/api_client.go index 40b0840b17a..83ac827dc25 100644 --- a/service/detective/api_client.go +++ b/service/detective/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/devicefarm/api_client.go b/service/devicefarm/api_client.go index 4a32b9cbea4..4318b3655a6 100644 --- a/service/devicefarm/api_client.go +++ b/service/devicefarm/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/devopsguru/api_client.go b/service/devopsguru/api_client.go index 7b0993739ae..924b2bcdabc 100644 --- a/service/devopsguru/api_client.go +++ b/service/devopsguru/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/directconnect/api_client.go b/service/directconnect/api_client.go index e9aea9f0f01..d8201e4f6d2 100644 --- a/service/directconnect/api_client.go +++ b/service/directconnect/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/directoryservice/api_client.go b/service/directoryservice/api_client.go index ae4d3324cc2..3015f1c506b 100644 --- a/service/directoryservice/api_client.go +++ b/service/directoryservice/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/directoryservicedata/api_client.go b/service/directoryservicedata/api_client.go index 92a14d19e25..19238a43baa 100644 --- a/service/directoryservicedata/api_client.go +++ b/service/directoryservicedata/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/dlm/api_client.go b/service/dlm/api_client.go index 7935d913ad0..0a0db19bedb 100644 --- a/service/dlm/api_client.go +++ b/service/dlm/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/docdb/api_client.go b/service/docdb/api_client.go index 04bcf181e1f..b20decb8a45 100644 --- a/service/docdb/api_client.go +++ b/service/docdb/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/docdbelastic/api_client.go b/service/docdbelastic/api_client.go index cefb5e355e4..18cfd9ecb72 100644 --- a/service/docdbelastic/api_client.go +++ b/service/docdbelastic/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/drs/api_client.go b/service/drs/api_client.go index d48f15c1fff..be4c5134961 100644 --- a/service/drs/api_client.go +++ b/service/drs/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/dynamodb/api_client.go b/service/dynamodb/api_client.go index cca30d0ca75..c3402891ffa 100644 --- a/service/dynamodb/api_client.go +++ b/service/dynamodb/api_client.go @@ -200,10 +200,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/dynamodbstreams/api_client.go b/service/dynamodbstreams/api_client.go index a98a26ae89d..4772a652ff0 100644 --- a/service/dynamodbstreams/api_client.go +++ b/service/dynamodbstreams/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ebs/api_client.go b/service/ebs/api_client.go index 186f540452e..597c2dc262f 100644 --- a/service/ebs/api_client.go +++ b/service/ebs/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ec2/api_client.go b/service/ec2/api_client.go index 02cd2943e25..27a7afc0c76 100644 --- a/service/ec2/api_client.go +++ b/service/ec2/api_client.go @@ -194,10 +194,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ec2/api_op_ConfirmProductInstance.go b/service/ec2/api_op_ConfirmProductInstance.go index 0ab887b306b..68dbe666c62 100644 --- a/service/ec2/api_op_ConfirmProductInstance.go +++ b/service/ec2/api_op_ConfirmProductInstance.go @@ -40,7 +40,7 @@ type ConfirmProductInstanceInput struct { // This member is required. ProductCode *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_CreatePlacementGroup.go b/service/ec2/api_op_CreatePlacementGroup.go index ada87aa5ecd..fad99996d88 100644 --- a/service/ec2/api_op_CreatePlacementGroup.go +++ b/service/ec2/api_op_CreatePlacementGroup.go @@ -41,7 +41,7 @@ func (c *Client) CreatePlacementGroup(ctx context.Context, params *CreatePlaceme type CreatePlacementGroupInput struct { - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_CreateSpotDatafeedSubscription.go b/service/ec2/api_op_CreateSpotDatafeedSubscription.go index d88fa310edb..c817e870dc3 100644 --- a/service/ec2/api_op_CreateSpotDatafeedSubscription.go +++ b/service/ec2/api_op_CreateSpotDatafeedSubscription.go @@ -35,9 +35,9 @@ func (c *Client) CreateSpotDatafeedSubscription(ctx context.Context, params *Cre type CreateSpotDatafeedSubscriptionInput struct { // The name of the Amazon S3 bucket in which to store the Spot Instance data feed. - // For more information about bucket names, see [Rules for bucket naming]in the Amazon S3 Developer Guide. + // For more information about bucket names, see [Bucket naming rules]in the Amazon S3 User Guide. // - // [Rules for bucket naming]: https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html#bucketnamingrules + // [Bucket naming rules]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html // // This member is required. Bucket *string diff --git a/service/ec2/api_op_DeletePlacementGroup.go b/service/ec2/api_op_DeletePlacementGroup.go index 83ee5bd8600..fab461a9878 100644 --- a/service/ec2/api_op_DeletePlacementGroup.go +++ b/service/ec2/api_op_DeletePlacementGroup.go @@ -37,7 +37,7 @@ type DeletePlacementGroupInput struct { // This member is required. GroupName *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_DescribeInstanceAttribute.go b/service/ec2/api_op_DescribeInstanceAttribute.go index 4aa464ad7d0..360f3f8a4c8 100644 --- a/service/ec2/api_op_DescribeInstanceAttribute.go +++ b/service/ec2/api_op_DescribeInstanceAttribute.go @@ -45,7 +45,7 @@ type DescribeInstanceAttributeInput struct { // This member is required. InstanceId *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_DescribeInstanceCreditSpecifications.go b/service/ec2/api_op_DescribeInstanceCreditSpecifications.go index 3d4650c92e2..2f4706636ff 100644 --- a/service/ec2/api_op_DescribeInstanceCreditSpecifications.go +++ b/service/ec2/api_op_DescribeInstanceCreditSpecifications.go @@ -53,7 +53,7 @@ func (c *Client) DescribeInstanceCreditSpecifications(ctx context.Context, param type DescribeInstanceCreditSpecificationsInput struct { - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_DescribeInstanceStatus.go b/service/ec2/api_op_DescribeInstanceStatus.go index 7b54ef283c6..b20c40e19ac 100644 --- a/service/ec2/api_op_DescribeInstanceStatus.go +++ b/service/ec2/api_op_DescribeInstanceStatus.go @@ -59,7 +59,7 @@ func (c *Client) DescribeInstanceStatus(ctx context.Context, params *DescribeIns type DescribeInstanceStatusInput struct { - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_DescribeInstanceTopology.go b/service/ec2/api_op_DescribeInstanceTopology.go index 7af7a47e456..29834a2d8f7 100644 --- a/service/ec2/api_op_DescribeInstanceTopology.go +++ b/service/ec2/api_op_DescribeInstanceTopology.go @@ -54,7 +54,7 @@ func (c *Client) DescribeInstanceTopology(ctx context.Context, params *DescribeI type DescribeInstanceTopologyInput struct { - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_DescribeInstances.go b/service/ec2/api_op_DescribeInstances.go index e0c5d532f8e..adb269f827c 100644 --- a/service/ec2/api_op_DescribeInstances.go +++ b/service/ec2/api_op_DescribeInstances.go @@ -61,7 +61,7 @@ func (c *Client) DescribeInstances(ctx context.Context, params *DescribeInstance type DescribeInstancesInput struct { - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_DescribePlacementGroups.go b/service/ec2/api_op_DescribePlacementGroups.go index 5beceb31dae..15f9e50eaec 100644 --- a/service/ec2/api_op_DescribePlacementGroups.go +++ b/service/ec2/api_op_DescribePlacementGroups.go @@ -38,7 +38,7 @@ func (c *Client) DescribePlacementGroups(ctx context.Context, params *DescribePl type DescribePlacementGroupsInput struct { - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_GetConsoleOutput.go b/service/ec2/api_op_GetConsoleOutput.go index caafd6ebcdc..9cf47ba49e9 100644 --- a/service/ec2/api_op_GetConsoleOutput.go +++ b/service/ec2/api_op_GetConsoleOutput.go @@ -41,7 +41,7 @@ type GetConsoleOutputInput struct { // This member is required. InstanceId *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_GetConsoleScreenshot.go b/service/ec2/api_op_GetConsoleScreenshot.go index d1d1ae3671a..2a4f842fa3b 100644 --- a/service/ec2/api_op_GetConsoleScreenshot.go +++ b/service/ec2/api_op_GetConsoleScreenshot.go @@ -40,7 +40,7 @@ type GetConsoleScreenshotInput struct { // This member is required. InstanceId *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_GetDefaultCreditSpecification.go b/service/ec2/api_op_GetDefaultCreditSpecification.go index 14e04b8cbed..be695ff7280 100644 --- a/service/ec2/api_op_GetDefaultCreditSpecification.go +++ b/service/ec2/api_op_GetDefaultCreditSpecification.go @@ -39,7 +39,7 @@ type GetDefaultCreditSpecificationInput struct { // This member is required. InstanceFamily types.UnlimitedSupportedInstanceFamily - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_GetInstanceMetadataDefaults.go b/service/ec2/api_op_GetInstanceMetadataDefaults.go index bd85d31b2d1..ce5552c8c7f 100644 --- a/service/ec2/api_op_GetInstanceMetadataDefaults.go +++ b/service/ec2/api_op_GetInstanceMetadataDefaults.go @@ -34,7 +34,7 @@ func (c *Client) GetInstanceMetadataDefaults(ctx context.Context, params *GetIns type GetInstanceMetadataDefaultsInput struct { - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_GetInstanceUefiData.go b/service/ec2/api_op_GetInstanceUefiData.go index 7b4b4f35b6b..2c21019fdb6 100644 --- a/service/ec2/api_op_GetInstanceUefiData.go +++ b/service/ec2/api_op_GetInstanceUefiData.go @@ -47,7 +47,7 @@ type GetInstanceUefiDataInput struct { // This member is required. InstanceId *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_GetPasswordData.go b/service/ec2/api_op_GetPasswordData.go index bf0812ec901..dad3f2eea4f 100644 --- a/service/ec2/api_op_GetPasswordData.go +++ b/service/ec2/api_op_GetPasswordData.go @@ -56,7 +56,7 @@ type GetPasswordDataInput struct { // This member is required. InstanceId *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_ModifyDefaultCreditSpecification.go b/service/ec2/api_op_ModifyDefaultCreditSpecification.go index 006e9b54fab..08f8237833e 100644 --- a/service/ec2/api_op_ModifyDefaultCreditSpecification.go +++ b/service/ec2/api_op_ModifyDefaultCreditSpecification.go @@ -56,7 +56,7 @@ type ModifyDefaultCreditSpecificationInput struct { // This member is required. InstanceFamily types.UnlimitedSupportedInstanceFamily - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_ModifyInstanceAttribute.go b/service/ec2/api_op_ModifyInstanceAttribute.go index 82721a3eb0d..1dc7de3adbd 100644 --- a/service/ec2/api_op_ModifyInstanceAttribute.go +++ b/service/ec2/api_op_ModifyInstanceAttribute.go @@ -78,7 +78,7 @@ type ModifyInstanceAttributeInput struct { // Instances. DisableApiTermination *types.AttributeBooleanValue - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_ModifyInstanceCpuOptions.go b/service/ec2/api_op_ModifyInstanceCpuOptions.go new file mode 100644 index 00000000000..af8bca2a0b3 --- /dev/null +++ b/service/ec2/api_op_ModifyInstanceCpuOptions.go @@ -0,0 +1,191 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package ec2 + +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" +) + +// By default, all vCPUs for the instance type are active when you launch an +// instance. When you configure the number of active vCPUs for the instance, it can +// help you save on licensing costs and optimize performance. The base cost of the +// instance remains unchanged. +// +// The number of active vCPUs equals the number of threads per CPU core multiplied +// by the number of cores. +// +// Some instance type options do not support this capability. For more +// information, see [Supported CPU options]in the Amazon EC2 User Guide. +// +// [Supported CPU options]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cpu-options-supported-instances-values.html +func (c *Client) ModifyInstanceCpuOptions(ctx context.Context, params *ModifyInstanceCpuOptionsInput, optFns ...func(*Options)) (*ModifyInstanceCpuOptionsOutput, error) { + if params == nil { + params = &ModifyInstanceCpuOptionsInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "ModifyInstanceCpuOptions", params, optFns, c.addOperationModifyInstanceCpuOptionsMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*ModifyInstanceCpuOptionsOutput) + out.ResultMetadata = metadata + return out, nil +} + +type ModifyInstanceCpuOptionsInput struct { + + // The number of CPU cores to activate for the specified instance. + // + // This member is required. + CoreCount *int32 + + // The ID of the instance to update. + // + // This member is required. + InstanceId *string + + // The number of threads to run for each CPU core. + // + // This member is required. + ThreadsPerCore *int32 + + // Checks whether you have the required permissions for the operation, without + // actually making the request, and provides an error response. If you have the + // required permissions, the error response is DryRunOperation . Otherwise, it is + // UnauthorizedOperation . + DryRun *bool + + noSmithyDocumentSerde +} + +type ModifyInstanceCpuOptionsOutput struct { + + // The number of CPU cores that are running for the specified instance after the + // update. + CoreCount *int32 + + // The ID of the instance that was updated. + InstanceId *string + + // The number of threads that are running per CPU core for the specified instance + // after the update. + ThreadsPerCore *int32 + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationModifyInstanceCpuOptionsMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsEc2query_serializeOpModifyInstanceCpuOptions{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsEc2query_deserializeOpModifyInstanceCpuOptions{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "ModifyInstanceCpuOptions"); err != nil { + return fmt.Errorf("add protocol finalizers: %v", err) + } + + if err = addlegacyEndpointContextSetter(stack, options); err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = addClientRequestID(stack); err != nil { + return err + } + if err = addComputeContentLength(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = addComputePayloadSHA256(stack); err != nil { + return err + } + if err = addRetry(stack, options); err != nil { + return err + } + if err = addRawResponseToMetadata(stack); err != nil { + return err + } + if err = addRecordResponseTiming(stack); err != nil { + return err + } + if err = addSpanRetryLoop(stack, options); err != nil { + return err + } + if err = addClientUserAgent(stack, options); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil { + return err + } + if err = addTimeOffsetBuild(stack, c); err != nil { + return err + } + if err = addUserAgentRetryMode(stack, options); err != nil { + return err + } + if err = addOpModifyInstanceCpuOptionsValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opModifyInstanceCpuOptions(options.Region), middleware.Before); err != nil { + return err + } + if err = addRecursionDetection(stack); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + if err = addDisableHTTPSMiddleware(stack, options); err != nil { + return err + } + if err = addSpanInitializeStart(stack); err != nil { + return err + } + if err = addSpanInitializeEnd(stack); err != nil { + return err + } + if err = addSpanBuildRequestStart(stack); err != nil { + return err + } + if err = addSpanBuildRequestEnd(stack); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opModifyInstanceCpuOptions(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "ModifyInstanceCpuOptions", + } +} diff --git a/service/ec2/api_op_ModifyInstanceCreditSpecification.go b/service/ec2/api_op_ModifyInstanceCreditSpecification.go index 66bec015ddb..454fdbea0a8 100644 --- a/service/ec2/api_op_ModifyInstanceCreditSpecification.go +++ b/service/ec2/api_op_ModifyInstanceCreditSpecification.go @@ -45,7 +45,7 @@ type ModifyInstanceCreditSpecificationInput struct { // [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html ClientToken *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_ModifyInstanceEventStartTime.go b/service/ec2/api_op_ModifyInstanceEventStartTime.go index 7f05289807f..2ee34b2394a 100644 --- a/service/ec2/api_op_ModifyInstanceEventStartTime.go +++ b/service/ec2/api_op_ModifyInstanceEventStartTime.go @@ -45,7 +45,7 @@ type ModifyInstanceEventStartTimeInput struct { // This member is required. NotBefore *time.Time - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_ModifyInstanceMetadataDefaults.go b/service/ec2/api_op_ModifyInstanceMetadataDefaults.go index 4d971cb538a..9ed51b509e8 100644 --- a/service/ec2/api_op_ModifyInstanceMetadataDefaults.go +++ b/service/ec2/api_op_ModifyInstanceMetadataDefaults.go @@ -37,7 +37,7 @@ func (c *Client) ModifyInstanceMetadataDefaults(ctx context.Context, params *Mod type ModifyInstanceMetadataDefaultsInput struct { - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_MonitorInstances.go b/service/ec2/api_op_MonitorInstances.go index e1e12fe5897..3d8f1250092 100644 --- a/service/ec2/api_op_MonitorInstances.go +++ b/service/ec2/api_op_MonitorInstances.go @@ -40,7 +40,7 @@ type MonitorInstancesInput struct { // This member is required. InstanceIds []string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_RebootInstances.go b/service/ec2/api_op_RebootInstances.go index 258005f94da..d18658f8579 100644 --- a/service/ec2/api_op_RebootInstances.go +++ b/service/ec2/api_op_RebootInstances.go @@ -43,7 +43,7 @@ type RebootInstancesInput struct { // This member is required. InstanceIds []string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_ReportInstanceStatus.go b/service/ec2/api_op_ReportInstanceStatus.go index e8216787fca..938ba9dba70 100644 --- a/service/ec2/api_op_ReportInstanceStatus.go +++ b/service/ec2/api_op_ReportInstanceStatus.go @@ -74,7 +74,7 @@ type ReportInstanceStatusInput struct { // Descriptive text about the health state of your instance. Description *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_ResetInstanceAttribute.go b/service/ec2/api_op_ResetInstanceAttribute.go index 670c6f405b2..e7cc497521e 100644 --- a/service/ec2/api_op_ResetInstanceAttribute.go +++ b/service/ec2/api_op_ResetInstanceAttribute.go @@ -50,7 +50,7 @@ type ResetInstanceAttributeInput struct { // This member is required. InstanceId *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_RunInstances.go b/service/ec2/api_op_RunInstances.go index 03f4adba309..c5b2289f0b9 100644 --- a/service/ec2/api_op_RunInstances.go +++ b/service/ec2/api_op_RunInstances.go @@ -167,7 +167,7 @@ type RunInstancesInput struct { // [ModifyInstanceAttribute]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html DisableApiTermination *bool - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_SendDiagnosticInterrupt.go b/service/ec2/api_op_SendDiagnosticInterrupt.go index fd815e80852..2e29fba8a4b 100644 --- a/service/ec2/api_op_SendDiagnosticInterrupt.go +++ b/service/ec2/api_op_SendDiagnosticInterrupt.go @@ -50,7 +50,7 @@ type SendDiagnosticInterruptInput struct { // This member is required. InstanceId *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_StartInstances.go b/service/ec2/api_op_StartInstances.go index e6dc23541d0..7d142fd9ce9 100644 --- a/service/ec2/api_op_StartInstances.go +++ b/service/ec2/api_op_StartInstances.go @@ -60,7 +60,7 @@ type StartInstancesInput struct { // Reserved. AdditionalInfo *string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_StopInstances.go b/service/ec2/api_op_StopInstances.go index 0fdf00fa556..ebb45289f0b 100644 --- a/service/ec2/api_op_StopInstances.go +++ b/service/ec2/api_op_StopInstances.go @@ -77,7 +77,7 @@ type StopInstancesInput struct { // This member is required. InstanceIds []string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_TerminateInstances.go b/service/ec2/api_op_TerminateInstances.go index bbc8e8bb786..f0a4e0e1223 100644 --- a/service/ec2/api_op_TerminateInstances.go +++ b/service/ec2/api_op_TerminateInstances.go @@ -91,7 +91,7 @@ type TerminateInstancesInput struct { // This member is required. InstanceIds []string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/api_op_UnmonitorInstances.go b/service/ec2/api_op_UnmonitorInstances.go index 871bb5519ff..339312272f9 100644 --- a/service/ec2/api_op_UnmonitorInstances.go +++ b/service/ec2/api_op_UnmonitorInstances.go @@ -37,7 +37,7 @@ type UnmonitorInstancesInput struct { // This member is required. InstanceIds []string - // Checks whether you have the required permissions for the action, without + // Checks whether you have the required permissions for the operation, without // actually making the request, and provides an error response. If you have the // required permissions, the error response is DryRunOperation . Otherwise, it is // UnauthorizedOperation . diff --git a/service/ec2/deserializers.go b/service/ec2/deserializers.go index 3e6a121c0d2..6bf05eb3a09 100644 --- a/service/ec2/deserializers.go +++ b/service/ec2/deserializers.go @@ -47207,6 +47207,101 @@ func awsEc2query_deserializeOpErrorModifyInstanceCapacityReservationAttributes(r } } +type awsEc2query_deserializeOpModifyInstanceCpuOptions struct { +} + +func (*awsEc2query_deserializeOpModifyInstanceCpuOptions) ID() string { + return "OperationDeserializer" +} + +func (m *awsEc2query_deserializeOpModifyInstanceCpuOptions) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + _, span := tracing.StartSpan(ctx, "OperationDeserializer") + endTimer := startMetricTimer(ctx, "client.call.deserialization_duration") + defer endTimer() + defer span.End() + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsEc2query_deserializeOpErrorModifyInstanceCpuOptions(response, &metadata) + } + output := &ModifyInstanceCpuOptionsOutput{} + out.Result = output + + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + body := io.TeeReader(response.Body, ringBuffer) + rootDecoder := xml.NewDecoder(body) + t, err := smithyxml.FetchRootElement(rootDecoder) + if err == io.EOF { + return out, metadata, nil + } + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + return out, metadata, &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + } + + decoder := smithyxml.WrapNodeDecoder(rootDecoder, t) + err = awsEc2query_deserializeOpDocumentModifyInstanceCpuOptionsOutput(&output, decoder) + if err != nil { + var snapshot bytes.Buffer + io.Copy(&snapshot, ringBuffer) + err = &smithy.DeserializationError{ + Err: fmt.Errorf("failed to decode response body, %w", err), + Snapshot: snapshot.Bytes(), + } + return out, metadata, err + } + + return out, metadata, err +} + +func awsEc2query_deserializeOpErrorModifyInstanceCpuOptions(response *smithyhttp.Response, metadata *middleware.Metadata) error { + var errorBuffer bytes.Buffer + if _, err := io.Copy(&errorBuffer, response.Body); err != nil { + return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)} + } + errorBody := bytes.NewReader(errorBuffer.Bytes()) + + errorCode := "UnknownError" + errorMessage := errorCode + + errorComponents, err := ec2query.GetErrorResponseComponents(errorBody) + if err != nil { + return err + } + awsmiddleware.SetRequestIDMetadata(metadata, errorComponents.RequestID) + if len(errorComponents.Code) != 0 { + errorCode = errorComponents.Code + } + if len(errorComponents.Message) != 0 { + errorMessage = errorComponents.Message + } + errorBody.Seek(0, io.SeekStart) + switch { + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + type awsEc2query_deserializeOpModifyInstanceCreditSpecification struct { } @@ -169190,6 +169285,89 @@ func awsEc2query_deserializeOpDocumentModifyInstanceCapacityReservationAttribute return nil } +func awsEc2query_deserializeOpDocumentModifyInstanceCpuOptionsOutput(v **ModifyInstanceCpuOptionsOutput, decoder smithyxml.NodeDecoder) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + var sv *ModifyInstanceCpuOptionsOutput + if *v == nil { + sv = &ModifyInstanceCpuOptionsOutput{} + } else { + sv = *v + } + + for { + t, done, err := decoder.Token() + if err != nil { + return err + } + if done { + break + } + originalDecoder := decoder + decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t) + switch { + case strings.EqualFold("coreCount", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + i64, err := strconv.ParseInt(xtv, 10, 64) + if err != nil { + return err + } + sv.CoreCount = ptr.Int32(int32(i64)) + } + + case strings.EqualFold("instanceId", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + sv.InstanceId = ptr.String(xtv) + } + + case strings.EqualFold("threadsPerCore", t.Name.Local): + val, err := decoder.Value() + if err != nil { + return err + } + if val == nil { + break + } + { + xtv := string(val) + i64, err := strconv.ParseInt(xtv, 10, 64) + if err != nil { + return err + } + sv.ThreadsPerCore = ptr.Int32(int32(i64)) + } + + default: + // Do nothing and ignore the unexpected tag element + err = decoder.Decoder.Skip() + if err != nil { + return err + } + + } + decoder = originalDecoder + } + *v = sv + return nil +} + func awsEc2query_deserializeOpDocumentModifyInstanceCreditSpecificationOutput(v **ModifyInstanceCreditSpecificationOutput, decoder smithyxml.NodeDecoder) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/ec2/generated.json b/service/ec2/generated.json index a536c547665..d7f472e7e93 100644 --- a/service/ec2/generated.json +++ b/service/ec2/generated.json @@ -517,6 +517,7 @@ "api_op_ModifyImageAttribute.go", "api_op_ModifyInstanceAttribute.go", "api_op_ModifyInstanceCapacityReservationAttributes.go", + "api_op_ModifyInstanceCpuOptions.go", "api_op_ModifyInstanceCreditSpecification.go", "api_op_ModifyInstanceEventStartTime.go", "api_op_ModifyInstanceEventWindow.go", diff --git a/service/ec2/serializers.go b/service/ec2/serializers.go index ceb9e662ee9..37fc33a40b3 100644 --- a/service/ec2/serializers.go +++ b/service/ec2/serializers.go @@ -35438,6 +35438,76 @@ func (m *awsEc2query_serializeOpModifyInstanceCapacityReservationAttributes) Han return next.HandleSerialize(ctx, in) } +type awsEc2query_serializeOpModifyInstanceCpuOptions struct { +} + +func (*awsEc2query_serializeOpModifyInstanceCpuOptions) ID() string { + return "OperationSerializer" +} + +func (m *awsEc2query_serializeOpModifyInstanceCpuOptions) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + _, span := tracing.StartSpan(ctx, "OperationSerializer") + endTimer := startMetricTimer(ctx, "client.call.serialization_duration") + defer endTimer() + defer span.End() + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*ModifyInstanceCpuOptionsInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + operationPath := "/" + if len(request.Request.URL.Path) == 0 { + request.Request.URL.Path = operationPath + } else { + request.Request.URL.Path = path.Join(request.Request.URL.Path, operationPath) + if request.Request.URL.Path != "/" && operationPath[len(operationPath)-1] == '/' { + request.Request.URL.Path += "/" + } + } + request.Request.Method = "POST" + httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header) + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + httpBindingEncoder.SetHeader("Content-Type").String("application/x-www-form-urlencoded") + + bodyWriter := bytes.NewBuffer(nil) + bodyEncoder := query.NewEncoder(bodyWriter) + body := bodyEncoder.Object() + body.Key("Action").String("ModifyInstanceCpuOptions") + body.Key("Version").String("2016-11-15") + + if err := awsEc2query_serializeOpDocumentModifyInstanceCpuOptionsInput(input, bodyEncoder.Value); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + err = bodyEncoder.Encode() + if err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request, err = request.SetStream(bytes.NewReader(bodyWriter.Bytes())); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + + if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil { + return out, metadata, &smithy.SerializationError{Err: err} + } + in.Request = request + + endTimer() + span.End() + return next.HandleSerialize(ctx, in) +} + type awsEc2query_serializeOpModifyInstanceCreditSpecification struct { } @@ -69649,6 +69719,33 @@ func awsEc2query_serializeOpDocumentModifyInstanceCapacityReservationAttributesI return nil } +func awsEc2query_serializeOpDocumentModifyInstanceCpuOptionsInput(v *ModifyInstanceCpuOptionsInput, value query.Value) error { + object := value.Object() + _ = object + + if v.CoreCount != nil { + objectKey := object.Key("CoreCount") + objectKey.Integer(*v.CoreCount) + } + + if v.DryRun != nil { + objectKey := object.Key("DryRun") + objectKey.Boolean(*v.DryRun) + } + + if v.InstanceId != nil { + objectKey := object.Key("InstanceId") + objectKey.String(*v.InstanceId) + } + + if v.ThreadsPerCore != nil { + objectKey := object.Key("ThreadsPerCore") + objectKey.Integer(*v.ThreadsPerCore) + } + + return nil +} + func awsEc2query_serializeOpDocumentModifyInstanceCreditSpecificationInput(v *ModifyInstanceCreditSpecificationInput, value query.Value) error { object := value.Object() _ = object diff --git a/service/ec2/snapshot/api_op_ModifyInstanceCpuOptions.go.snap b/service/ec2/snapshot/api_op_ModifyInstanceCpuOptions.go.snap new file mode 100644 index 00000000000..090e97a189c --- /dev/null +++ b/service/ec2/snapshot/api_op_ModifyInstanceCpuOptions.go.snap @@ -0,0 +1,41 @@ +ModifyInstanceCpuOptions + Initialize stack step + spanInitializeStart + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + spanInitializeEnd + Serialize stack step + spanBuildRequestStart + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + spanBuildRequestEnd + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + spanRetryLoop + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/ec2/snapshot_test.go b/service/ec2/snapshot_test.go index b3b98ed5212..6d570e76cd0 100644 --- a/service/ec2/snapshot_test.go +++ b/service/ec2/snapshot_test.go @@ -6134,6 +6134,18 @@ func TestCheckSnapshot_ModifyInstanceCapacityReservationAttributes(t *testing.T) } } +func TestCheckSnapshot_ModifyInstanceCpuOptions(t *testing.T) { + svc := New(Options{}) + _, err := svc.ModifyInstanceCpuOptions(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "ModifyInstanceCpuOptions") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestCheckSnapshot_ModifyInstanceCreditSpecification(t *testing.T) { svc := New(Options{}) _, err := svc.ModifyInstanceCreditSpecification(context.Background(), nil, func(o *Options) { @@ -13657,6 +13669,18 @@ func TestUpdateSnapshot_ModifyInstanceCapacityReservationAttributes(t *testing.T } } +func TestUpdateSnapshot_ModifyInstanceCpuOptions(t *testing.T) { + svc := New(Options{}) + _, err := svc.ModifyInstanceCpuOptions(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "ModifyInstanceCpuOptions") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} + func TestUpdateSnapshot_ModifyInstanceCreditSpecification(t *testing.T) { svc := New(Options{}) _, err := svc.ModifyInstanceCreditSpecification(context.Background(), nil, func(o *Options) { diff --git a/service/ec2/types/types.go b/service/ec2/types/types.go index 973381e43fc..4298f6f2659 100644 --- a/service/ec2/types/types.go +++ b/service/ec2/types/types.go @@ -2419,7 +2419,8 @@ type CreateFleetInstance struct { // Instance. Lifecycle InstanceLifecycle - // The value is Windows for Windows instances. Otherwise, the value is blank. + // The value is windows for Windows instances in an EC2 Fleet. Otherwise, the + // value is blank. Platform PlatformValues noSmithyDocumentSerde @@ -2478,19 +2479,19 @@ type CreateTransitGatewayVpcAttachmentRequestOptions struct { // Enable or disable IPv6 support. The default is disable . Ipv6Support Ipv6SupportValue - // Enables you to reference a security group across VPCs attached to a transit - // gateway to simplify security group management. + // This parameter is in preview and may not be available for your account. // - // This option is disabled by default. + // Enables you to reference a security group across VPCs attached to a transit + // gateway. Use this option to simplify security group management and control of + // instance-to-instance traffic across VPCs that are connected by transit gateway. + // You can also use this option to migrate from VPC peering (which was the only + // option that supported security group referencing) to transit gateways (which now + // also support security group referencing). This option is disabled by default and + // there are no additional costs to use this feature. // // If you don't enable or disable SecurityGroupReferencingSupport in the request, // the attachment will inherit the security group referencing support setting on // the transit gateway. - // - // For more information about security group referencing, see [Security group referencing] in the Amazon Web - // Services Transit Gateways Guide. - // - // [Security group referencing]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue noSmithyDocumentSerde @@ -2958,7 +2959,8 @@ type DescribeFleetsInstances struct { // Instance. Lifecycle InstanceLifecycle - // The value is Windows for Windows instances. Otherwise, the value is blank. + // The value is windows for Windows instances in an EC2 Fleet. Otherwise, the + // value is blank. Platform PlatformValues noSmithyDocumentSerde @@ -11333,15 +11335,15 @@ type ModifyTransitGatewayOptions struct { // Removes CIDR blocks for the transit gateway. RemoveTransitGatewayCidrBlocks []string - // Enables you to reference a security group across VPCs attached to a transit - // gateway to simplify security group management. - // - // This option is disabled by default. - // - // For more information about security group referencing, see [Security group referencing] in the Amazon Web - // Services Transit Gateways Guide. + // This parameter is in preview and may not be available for your account. // - // [Security group referencing]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security + // Enables you to reference a security group across VPCs attached to a transit + // gateway. Use this option to simplify security group management and control of + // instance-to-instance traffic across VPCs that are connected by transit gateway. + // You can also use this option to migrate from VPC peering (which was the only + // option that supported security group referencing) to transit gateways (which now + // also support security group referencing). This option is disabled by default and + // there are no additional costs to use this feature. SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue // Enable or disable Equal Cost Multipath Protocol support. @@ -11364,15 +11366,15 @@ type ModifyTransitGatewayVpcAttachmentRequestOptions struct { // Enable or disable IPv6 support. The default is enable . Ipv6Support Ipv6SupportValue - // Enables you to reference a security group across VPCs attached to a transit - // gateway to simplify security group management. - // - // This option is disabled by default. - // - // For more information about security group referencing, see [Security group referencing] in the Amazon Web - // Services Transit Gateways Guide. + // This parameter is in preview and may not be available for your account. // - // [Security group referencing]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security + // Enables you to reference a security group across VPCs attached to a transit + // gateway. Use this option to simplify security group management and control of + // instance-to-instance traffic across VPCs that are connected by transit gateway. + // You can also use this option to migrate from VPC peering (which was the only + // option that supported security group referencing) to transit gateways (which now + // also support security group referencing). This option is disabled by default and + // there are no additional costs to use this feature. SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue noSmithyDocumentSerde @@ -18081,15 +18083,15 @@ type TransitGatewayOptions struct { // The ID of the default propagation route table. PropagationDefaultRouteTableId *string - // Enables you to reference a security group across VPCs attached to a transit - // gateway to simplify security group management. - // - // This option is enabled by default. - // - // For more information about security group referencing, see [Security group referencing] in the Amazon Web - // Services Transit Gateways Guide. + // This parameter is in preview and may not be available for your account. // - // [Security group referencing]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security + // Enables you to reference a security group across VPCs attached to a transit + // gateway. Use this option to simplify security group management and control of + // instance-to-instance traffic across VPCs that are connected by transit gateway. + // You can also use this option to migrate from VPC peering (which was the only + // option that supported security group referencing) to transit gateways (which now + // also support security group referencing). This option is disabled by default and + // there are no additional costs to use this feature. SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue // The transit gateway CIDR blocks. @@ -18329,15 +18331,15 @@ type TransitGatewayRequestOptions struct { // Indicates whether multicast is enabled on the transit gateway MulticastSupport MulticastSupportValue - // Enables you to reference a security group across VPCs attached to a transit - // gateway to simplify security group management. - // - // This option is disabled by default. - // - // For more information about security group referencing, see [Security group referencing] in the Amazon Web - // Services Transit Gateways Guide. + // This parameter is in preview and may not be available for your account. // - // [Security group referencing]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security + // Enables you to reference a security group across VPCs attached to a transit + // gateway. Use this option to simplify security group management and control of + // instance-to-instance traffic across VPCs that are connected by transit gateway. + // You can also use this option to migrate from VPC peering (which was the only + // option that supported security group referencing) to transit gateways (which now + // also support security group referencing). This option is disabled by default and + // there are no additional costs to use this feature. SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue // One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size @@ -18574,15 +18576,15 @@ type TransitGatewayVpcAttachmentOptions struct { // Indicates whether IPv6 support is disabled. Ipv6Support Ipv6SupportValue - // Enables you to reference a security group across VPCs attached to a transit - // gateway to simplify security group management. - // - // This option is disabled by default. - // - // For more information about security group referencing, see [Security group referencing] in the Amazon Web - // Services Transit Gateways Guide. + // This parameter is in preview and may not be available for your account. // - // [Security group referencing]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security + // Enables you to reference a security group across VPCs attached to a transit + // gateway. Use this option to simplify security group management and control of + // instance-to-instance traffic across VPCs that are connected by transit gateway. + // You can also use this option to migrate from VPC peering (which was the only + // option that supported security group referencing) to transit gateways (which now + // also support security group referencing). This option is disabled by default and + // there are no additional costs to use this feature. SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue noSmithyDocumentSerde diff --git a/service/ec2/validators.go b/service/ec2/validators.go index 70cf387ef25..f0f593e62ca 100644 --- a/service/ec2/validators.go +++ b/service/ec2/validators.go @@ -6570,6 +6570,26 @@ func (m *validateOpModifyInstanceCapacityReservationAttributes) HandleInitialize return next.HandleInitialize(ctx, in) } +type validateOpModifyInstanceCpuOptions struct { +} + +func (*validateOpModifyInstanceCpuOptions) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpModifyInstanceCpuOptions) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*ModifyInstanceCpuOptionsInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpModifyInstanceCpuOptionsInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + type validateOpModifyInstanceCreditSpecification struct { } @@ -10142,6 +10162,10 @@ func addOpModifyInstanceCapacityReservationAttributesValidationMiddleware(stack return stack.Initialize.Add(&validateOpModifyInstanceCapacityReservationAttributes{}, middleware.After) } +func addOpModifyInstanceCpuOptionsValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpModifyInstanceCpuOptions{}, middleware.After) +} + func addOpModifyInstanceCreditSpecificationValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpModifyInstanceCreditSpecification{}, middleware.After) } @@ -16983,6 +17007,27 @@ func validateOpModifyInstanceCapacityReservationAttributesInput(v *ModifyInstanc } } +func validateOpModifyInstanceCpuOptionsInput(v *ModifyInstanceCpuOptionsInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "ModifyInstanceCpuOptionsInput"} + if v.InstanceId == nil { + invalidParams.Add(smithy.NewErrParamRequired("InstanceId")) + } + if v.CoreCount == nil { + invalidParams.Add(smithy.NewErrParamRequired("CoreCount")) + } + if v.ThreadsPerCore == nil { + invalidParams.Add(smithy.NewErrParamRequired("ThreadsPerCore")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpModifyInstanceCreditSpecificationInput(v *ModifyInstanceCreditSpecificationInput) error { if v == nil { return nil diff --git a/service/ec2instanceconnect/api_client.go b/service/ec2instanceconnect/api_client.go index 2a053fd15c3..3f55d21ee0d 100644 --- a/service/ec2instanceconnect/api_client.go +++ b/service/ec2instanceconnect/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ecr/api_client.go b/service/ecr/api_client.go index 189109eb556..66983e1c11f 100644 --- a/service/ecr/api_client.go +++ b/service/ecr/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ecrpublic/api_client.go b/service/ecrpublic/api_client.go index fb153d0dde6..183825aa21f 100644 --- a/service/ecrpublic/api_client.go +++ b/service/ecrpublic/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ecs/api_client.go b/service/ecs/api_client.go index 15fea102418..ab64ccb1bd6 100644 --- a/service/ecs/api_client.go +++ b/service/ecs/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/efs/api_client.go b/service/efs/api_client.go index eeb73185d3d..2c426536ec3 100644 --- a/service/efs/api_client.go +++ b/service/efs/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/eks/api_client.go b/service/eks/api_client.go index bca35f6b5dd..f1fb1c8620c 100644 --- a/service/eks/api_client.go +++ b/service/eks/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/eksauth/api_client.go b/service/eksauth/api_client.go index 7b7ae72a3ac..d15d80994b4 100644 --- a/service/eksauth/api_client.go +++ b/service/eksauth/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/elasticache/api_client.go b/service/elasticache/api_client.go index 469d7e719d9..e12f9b059ba 100644 --- a/service/elasticache/api_client.go +++ b/service/elasticache/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/elasticbeanstalk/api_client.go b/service/elasticbeanstalk/api_client.go index 84145bda5ba..7d2c5c83100 100644 --- a/service/elasticbeanstalk/api_client.go +++ b/service/elasticbeanstalk/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/elasticinference/api_client.go b/service/elasticinference/api_client.go index d5480d3017d..9bf01570511 100644 --- a/service/elasticinference/api_client.go +++ b/service/elasticinference/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/elasticloadbalancing/api_client.go b/service/elasticloadbalancing/api_client.go index e79d8ec7b32..2cb23dda2d4 100644 --- a/service/elasticloadbalancing/api_client.go +++ b/service/elasticloadbalancing/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/elasticloadbalancingv2/api_client.go b/service/elasticloadbalancingv2/api_client.go index 4443724445c..0687e601f40 100644 --- a/service/elasticloadbalancingv2/api_client.go +++ b/service/elasticloadbalancingv2/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/elasticsearchservice/api_client.go b/service/elasticsearchservice/api_client.go index 5d726af7e2a..7fafdb54011 100644 --- a/service/elasticsearchservice/api_client.go +++ b/service/elasticsearchservice/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/elastictranscoder/api_client.go b/service/elastictranscoder/api_client.go index 8d63a374551..512be4061ea 100644 --- a/service/elastictranscoder/api_client.go +++ b/service/elastictranscoder/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/emr/api_client.go b/service/emr/api_client.go index 7ca2e24460a..ebdf99b07b1 100644 --- a/service/emr/api_client.go +++ b/service/emr/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/emrcontainers/api_client.go b/service/emrcontainers/api_client.go index 88541f6d594..aadd442f8e0 100644 --- a/service/emrcontainers/api_client.go +++ b/service/emrcontainers/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/emrserverless/api_client.go b/service/emrserverless/api_client.go index 15ddff0e067..6672e455282 100644 --- a/service/emrserverless/api_client.go +++ b/service/emrserverless/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/entityresolution/api_client.go b/service/entityresolution/api_client.go index cbefdfe3e5f..09554b35ea4 100644 --- a/service/entityresolution/api_client.go +++ b/service/entityresolution/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/eventbridge/api_client.go b/service/eventbridge/api_client.go index 17a3dd9e1f1..72128bcb067 100644 --- a/service/eventbridge/api_client.go +++ b/service/eventbridge/api_client.go @@ -189,10 +189,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveHTTPSignerV4a(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/evidently/api_client.go b/service/evidently/api_client.go index 3883f2f9363..c558ffd5cd1 100644 --- a/service/evidently/api_client.go +++ b/service/evidently/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/finspace/api_client.go b/service/finspace/api_client.go index 20f3606e1cd..72a38dbf91d 100644 --- a/service/finspace/api_client.go +++ b/service/finspace/api_client.go @@ -192,10 +192,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/finspacedata/api_client.go b/service/finspacedata/api_client.go index 87c47d8dfba..f332f869c07 100644 --- a/service/finspacedata/api_client.go +++ b/service/finspacedata/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/firehose/api_client.go b/service/firehose/api_client.go index 47ef4a37628..24b7edf5636 100644 --- a/service/firehose/api_client.go +++ b/service/firehose/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/fis/api_client.go b/service/fis/api_client.go index d0f3c24cced..9adfd42c34f 100644 --- a/service/fis/api_client.go +++ b/service/fis/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/fms/api_client.go b/service/fms/api_client.go index 6a08597babb..ff2d35cc249 100644 --- a/service/fms/api_client.go +++ b/service/fms/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/forecast/api_client.go b/service/forecast/api_client.go index 19bcd21b9bb..8b7c89ffe3c 100644 --- a/service/forecast/api_client.go +++ b/service/forecast/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/forecastquery/api_client.go b/service/forecastquery/api_client.go index 7c63c9c53c7..7d7a41ead1b 100644 --- a/service/forecastquery/api_client.go +++ b/service/forecastquery/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/frauddetector/api_client.go b/service/frauddetector/api_client.go index ab6f5e1e377..f3fe3462dd8 100644 --- a/service/frauddetector/api_client.go +++ b/service/frauddetector/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/freetier/api_client.go b/service/freetier/api_client.go index 340abff5d58..ef43917a783 100644 --- a/service/freetier/api_client.go +++ b/service/freetier/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/fsx/api_client.go b/service/fsx/api_client.go index cceb8c97c28..dff09988df6 100644 --- a/service/fsx/api_client.go +++ b/service/fsx/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/gamelift/api_client.go b/service/gamelift/api_client.go index ec16473532e..e3fa05487c6 100644 --- a/service/gamelift/api_client.go +++ b/service/gamelift/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/glacier/api_client.go b/service/glacier/api_client.go index 55d128351d9..d7647f4c339 100644 --- a/service/glacier/api_client.go +++ b/service/glacier/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/globalaccelerator/api_client.go b/service/globalaccelerator/api_client.go index 6d35ee3f7fa..30d8a9150e5 100644 --- a/service/globalaccelerator/api_client.go +++ b/service/globalaccelerator/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/glue/api_client.go b/service/glue/api_client.go index f3edc7cd68e..dabcae5e3d9 100644 --- a/service/glue/api_client.go +++ b/service/glue/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/grafana/api_client.go b/service/grafana/api_client.go index cc65b43a326..7a9d2cb706d 100644 --- a/service/grafana/api_client.go +++ b/service/grafana/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/greengrass/api_client.go b/service/greengrass/api_client.go index 3331de4311a..53ceb59c989 100644 --- a/service/greengrass/api_client.go +++ b/service/greengrass/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/greengrassv2/api_client.go b/service/greengrassv2/api_client.go index db907cf12d8..413e82b532b 100644 --- a/service/greengrassv2/api_client.go +++ b/service/greengrassv2/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/groundstation/api_client.go b/service/groundstation/api_client.go index 16d627e9256..6f24a3de3d2 100644 --- a/service/groundstation/api_client.go +++ b/service/groundstation/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/guardduty/api_client.go b/service/guardduty/api_client.go index 9d4b51bfa3f..94354241136 100644 --- a/service/guardduty/api_client.go +++ b/service/guardduty/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/health/api_client.go b/service/health/api_client.go index 05b39cd6685..96b76263c3a 100644 --- a/service/health/api_client.go +++ b/service/health/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/healthlake/api_client.go b/service/healthlake/api_client.go index e99e9f788ff..9647128e457 100644 --- a/service/healthlake/api_client.go +++ b/service/healthlake/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iam/api_client.go b/service/iam/api_client.go index 4bfff9e461f..57c28186fc6 100644 --- a/service/iam/api_client.go +++ b/service/iam/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/identitystore/api_client.go b/service/identitystore/api_client.go index 6fab7ad129e..e723395ecdf 100644 --- a/service/identitystore/api_client.go +++ b/service/identitystore/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/imagebuilder/api_client.go b/service/imagebuilder/api_client.go index 3cee8633a55..509f6688797 100644 --- a/service/imagebuilder/api_client.go +++ b/service/imagebuilder/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/inspector/api_client.go b/service/inspector/api_client.go index 364fa4f4ebd..6ba0180b686 100644 --- a/service/inspector/api_client.go +++ b/service/inspector/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/inspector2/api_client.go b/service/inspector2/api_client.go index b4cf063482d..ff48cdfdc97 100644 --- a/service/inspector2/api_client.go +++ b/service/inspector2/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/inspectorscan/api_client.go b/service/inspectorscan/api_client.go index 43a6bbfcf7c..08ceae4c78d 100644 --- a/service/inspectorscan/api_client.go +++ b/service/inspectorscan/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/internetmonitor/api_client.go b/service/internetmonitor/api_client.go index 557373cf666..f8ed9674e35 100644 --- a/service/internetmonitor/api_client.go +++ b/service/internetmonitor/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iot/api_client.go b/service/iot/api_client.go index 169f646809b..0bb9865fe07 100644 --- a/service/iot/api_client.go +++ b/service/iot/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iot/api_op_AssociateSbomWithPackageVersion.go b/service/iot/api_op_AssociateSbomWithPackageVersion.go index fc987599ad0..5b9d5d53a23 100644 --- a/service/iot/api_op_AssociateSbomWithPackageVersion.go +++ b/service/iot/api_op_AssociateSbomWithPackageVersion.go @@ -11,8 +11,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Associates a software bill of materials (SBOM) with a specific software package -// version. +// Associates the selected software bill of materials (SBOM) with a specific +// software package version. // // Requires permission to access the [AssociateSbomWithPackageVersion] action. // @@ -39,8 +39,8 @@ type AssociateSbomWithPackageVersionInput struct { // This member is required. PackageName *string - // The Amazon S3 location for the software bill of materials associated with a - // software package version. + // A specific software bill of matrerials associated with a software package + // version. // // This member is required. Sbom *types.Sbom @@ -63,12 +63,13 @@ type AssociateSbomWithPackageVersionOutput struct { // The name of the new software package. PackageName *string - // The Amazon S3 location for the software bill of materials associated with a - // software package version. + // A specific software bill of matrerials associated with a software package + // version. Sbom *types.Sbom - // The status of the initial validation for the SBOM against the Software Package - // Data Exchange (SPDX) and CycloneDX industry standard format. + // The status of the initial validation for the software bill of materials against + // the Software Package Data Exchange (SPDX) and CycloneDX industry standard + // formats. SbomValidationStatus types.SbomValidationStatus // The name of the new package version. diff --git a/service/iot/api_op_CreateBillingGroup.go b/service/iot/api_op_CreateBillingGroup.go index 66a56e96748..e7556d1ff64 100644 --- a/service/iot/api_op_CreateBillingGroup.go +++ b/service/iot/api_op_CreateBillingGroup.go @@ -11,7 +11,10 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates a billing group. +// Creates a billing group. If this call is made multiple times using the same +// billing group name and configuration, the call will succeed. If this call is +// made with the same billing group name but different configuration a +// ResourceAlreadyExistsException is thrown. // // Requires permission to access the [CreateBillingGroup] action. // diff --git a/service/iot/api_op_CreateDomainConfiguration.go b/service/iot/api_op_CreateDomainConfiguration.go index fc6b453088f..562a43bb139 100644 --- a/service/iot/api_op_CreateDomainConfiguration.go +++ b/service/iot/api_op_CreateDomainConfiguration.go @@ -38,9 +38,50 @@ type CreateDomainConfigurationInput struct { // This member is required. DomainConfigurationName *string + // An enumerated string that specifies the application-layer protocol. + // + // - SECURE_MQTT - MQTT over TLS. + // + // - MQTT_WSS - MQTT over WebSocket. + // + // - HTTPS - HTTP over TLS. + // + // - DEFAULT - Use a combination of port and Application Layer Protocol + // Negotiation (ALPN) to specify application_layer protocol. For more information, + // see [Device communication protocols]. + // + // [Device communication protocols]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html + ApplicationProtocol types.ApplicationProtocol + + // An enumerated string that specifies the authentication type. + // + // - CUSTOM_AUTH_X509 - Use custom authentication and authorization with + // additional details from the X.509 client certificate. + // + // - CUSTOM_AUTH - Use custom authentication and authorization. For more + // information, see [Custom authentication and authorization]. + // + // - AWS_X509 - Use X.509 client certificates without custom authentication and + // authorization. For more information, see [X.509 client certificates]. + // + // - AWS_SIGV4 - Use Amazon Web Services Signature Version 4. For more + // information, see [IAM users, groups, and roles]. + // + // - DEFAULT - Use a combination of port and Application Layer Protocol + // Negotiation (ALPN) to specify authentication type. For more information, see [Device communication protocols]. + // + // [Custom authentication and authorization]: https://docs.aws.amazon.com/iot/latest/developerguide/custom-authentication.html + // [X.509 client certificates]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html + // [IAM users, groups, and roles]: https://docs.aws.amazon.com/iot/latest/developerguide/custom-authentication.html + // [Device communication protocols]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html + AuthenticationType types.AuthenticationType + // An object that specifies the authorization service for a domain. AuthorizerConfig *types.AuthorizerConfig + // An object that specifies the client certificate configuration for a domain. + ClientCertificateConfig *types.ClientCertificateConfig + // The name of the domain. DomainName *string diff --git a/service/iot/api_op_CreatePackageVersion.go b/service/iot/api_op_CreatePackageVersion.go index 019b17978bf..d541eb7f15c 100644 --- a/service/iot/api_op_CreatePackageVersion.go +++ b/service/iot/api_op_CreatePackageVersion.go @@ -65,7 +65,7 @@ type CreatePackageVersionInput struct { Description *string // The inline job document associated with a software package version used for a - // quick job deployment via IoT Jobs. + // quick job deployment. Recipe *string // Metadata that can be used to manage the package version. diff --git a/service/iot/api_op_CreateRoleAlias.go b/service/iot/api_op_CreateRoleAlias.go index f52382b847b..f199e38f9ad 100644 --- a/service/iot/api_op_CreateRoleAlias.go +++ b/service/iot/api_op_CreateRoleAlias.go @@ -15,7 +15,14 @@ import ( // // Requires permission to access the [CreateRoleAlias] action. // +// The value of [credentialDurationSeconds]credentialDurationSeconds must be less than or equal to the +// maximum session duration of the IAM role that the role alias references. For +// more information, see [Modifying a role maximum session duration (Amazon Web Services API)]from the Amazon Web Services Identity and Access +// Management User Guide. +// // [CreateRoleAlias]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions +// [Modifying a role maximum session duration (Amazon Web Services API)]: https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-api.html#roles-modify_max-session-duration-api +// [credentialDurationSeconds]: https://docs.aws.amazon.com/iot/latest/apireference/API_CreateRoleAlias.html#iot-CreateRoleAlias-request-credentialDurationSeconds func (c *Client) CreateRoleAlias(ctx context.Context, params *CreateRoleAliasInput, optFns ...func(*Options)) (*CreateRoleAliasOutput, error) { if params == nil { params = &CreateRoleAliasInput{} diff --git a/service/iot/api_op_CreateThingType.go b/service/iot/api_op_CreateThingType.go index 464b171aedc..7f0bed205a7 100644 --- a/service/iot/api_op_CreateThingType.go +++ b/service/iot/api_op_CreateThingType.go @@ -11,7 +11,10 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Creates a new thing type. +// Creates a new thing type. If this call is made multiple times using the same +// thing type name and configuration, the call will succeed. If this call is made +// with the same thing type name but different configuration a +// ResourceAlreadyExistsException is thrown. // // Requires permission to access the [CreateThingType] action. // diff --git a/service/iot/api_op_DescribeDomainConfiguration.go b/service/iot/api_op_DescribeDomainConfiguration.go index 1442104a314..cb9c8a41ec7 100644 --- a/service/iot/api_op_DescribeDomainConfiguration.go +++ b/service/iot/api_op_DescribeDomainConfiguration.go @@ -44,9 +44,50 @@ type DescribeDomainConfigurationInput struct { type DescribeDomainConfigurationOutput struct { + // An enumerated string that specifies the application-layer protocol. + // + // - SECURE_MQTT - MQTT over TLS. + // + // - MQTT_WSS - MQTT over WebSocket. + // + // - HTTPS - HTTP over TLS. + // + // - DEFAULT - Use a combination of port and Application Layer Protocol + // Negotiation (ALPN) to specify application_layer protocol. For more information, + // see [Device communication protocols]. + // + // [Device communication protocols]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html + ApplicationProtocol types.ApplicationProtocol + + // An enumerated string that specifies the authentication type. + // + // - CUSTOM_AUTH_X509 - Use custom authentication and authorization with + // additional details from the X.509 client certificate. + // + // - CUSTOM_AUTH - Use custom authentication and authorization. For more + // information, see [Custom authentication and authorization]. + // + // - AWS_X509 - Use X.509 client certificates without custom authentication and + // authorization. For more information, see [X.509 client certificates]. + // + // - AWS_SIGV4 - Use Amazon Web Services Signature Version 4. For more + // information, see [IAM users, groups, and roles]. + // + // - DEFAULT - Use a combination of port and Application Layer Protocol + // Negotiation (ALPN) to specify authentication type. For more information, see [Device communication protocols]. + // + // [Custom authentication and authorization]: https://docs.aws.amazon.com/iot/latest/developerguide/custom-authentication.html + // [X.509 client certificates]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html + // [IAM users, groups, and roles]: https://docs.aws.amazon.com/iot/latest/developerguide/custom-authentication.html + // [Device communication protocols]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html + AuthenticationType types.AuthenticationType + // An object that specifies the authorization service for a domain. AuthorizerConfig *types.AuthorizerConfig + // An object that specifies the client certificate configuration for a domain. + ClientCertificateConfig *types.ClientCertificateConfig + // The ARN of the domain configuration. DomainConfigurationArn *string diff --git a/service/iot/api_op_DisassociateSbomFromPackageVersion.go b/service/iot/api_op_DisassociateSbomFromPackageVersion.go index ae0a3eaf7e9..845a424d03e 100644 --- a/service/iot/api_op_DisassociateSbomFromPackageVersion.go +++ b/service/iot/api_op_DisassociateSbomFromPackageVersion.go @@ -10,8 +10,8 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" ) -// Disassociates a software bill of materials (SBOM) from a specific software -// package version. +// Disassociates the selected software bill of materials (SBOM) from a specific +// software package version. // // Requires permission to access the [DisassociateSbomWithPackageVersion] action. // diff --git a/service/iot/api_op_GetPackageVersion.go b/service/iot/api_op_GetPackageVersion.go index 441198f33b8..568918cf82e 100644 --- a/service/iot/api_op_GetPackageVersion.go +++ b/service/iot/api_op_GetPackageVersion.go @@ -75,7 +75,7 @@ type GetPackageVersionOutput struct { PackageVersionArn *string // The inline job document associated with a software package version used for a - // quick job deployment via IoT Jobs. + // quick job deployment. Recipe *string // The software bill of materials for a software package version. diff --git a/service/iot/api_op_UpdateDomainConfiguration.go b/service/iot/api_op_UpdateDomainConfiguration.go index 6b7c2dbdeea..48303b88220 100644 --- a/service/iot/api_op_UpdateDomainConfiguration.go +++ b/service/iot/api_op_UpdateDomainConfiguration.go @@ -39,9 +39,50 @@ type UpdateDomainConfigurationInput struct { // This member is required. DomainConfigurationName *string + // An enumerated string that specifies the application-layer protocol. + // + // - SECURE_MQTT - MQTT over TLS. + // + // - MQTT_WSS - MQTT over WebSocket. + // + // - HTTPS - HTTP over TLS. + // + // - DEFAULT - Use a combination of port and Application Layer Protocol + // Negotiation (ALPN) to specify application_layer protocol. For more information, + // see [Device communication protocols]. + // + // [Device communication protocols]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html + ApplicationProtocol types.ApplicationProtocol + + // An enumerated string that specifies the authentication type. + // + // - CUSTOM_AUTH_X509 - Use custom authentication and authorization with + // additional details from the X.509 client certificate. + // + // - CUSTOM_AUTH - Use custom authentication and authorization. For more + // information, see [Custom authentication and authorization]. + // + // - AWS_X509 - Use X.509 client certificates without custom authentication and + // authorization. For more information, see [X.509 client certificates]. + // + // - AWS_SIGV4 - Use Amazon Web Services Signature Version 4. For more + // information, see [IAM users, groups, and roles]. + // + // - DEFAULT - Use a combination of port and Application Layer Protocol + // Negotiation (ALPN) to specify authentication type. For more information, see [Device communication protocols]. + // + // [Custom authentication and authorization]: https://docs.aws.amazon.com/iot/latest/developerguide/custom-authentication.html + // [X.509 client certificates]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html + // [IAM users, groups, and roles]: https://docs.aws.amazon.com/iot/latest/developerguide/custom-authentication.html + // [Device communication protocols]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html + AuthenticationType types.AuthenticationType + // An object that specifies the authorization service for a domain. AuthorizerConfig *types.AuthorizerConfig + // An object that specifies the client certificate configuration for a domain. + ClientCertificateConfig *types.ClientCertificateConfig + // The status to which the domain configuration should be updated. DomainConfigurationStatus types.DomainConfigurationStatus diff --git a/service/iot/api_op_UpdatePackageVersion.go b/service/iot/api_op_UpdatePackageVersion.go index cb212f7b93a..8ad0f7051b7 100644 --- a/service/iot/api_op_UpdatePackageVersion.go +++ b/service/iot/api_op_UpdatePackageVersion.go @@ -72,7 +72,7 @@ type UpdatePackageVersionInput struct { Description *string // The inline job document associated with a software package version used for a - // quick job deployment via IoT Jobs. + // quick job deployment. Recipe *string noSmithyDocumentSerde diff --git a/service/iot/api_op_UpdateRoleAlias.go b/service/iot/api_op_UpdateRoleAlias.go index 2dc8e69211a..400493401e2 100644 --- a/service/iot/api_op_UpdateRoleAlias.go +++ b/service/iot/api_op_UpdateRoleAlias.go @@ -14,6 +14,13 @@ import ( // // Requires permission to access the [UpdateRoleAlias] action. // +// The value of [credentialDurationSeconds]credentialDurationSeconds must be less than or equal to the +// maximum session duration of the IAM role that the role alias references. For +// more information, see [Modifying a role maximum session duration (Amazon Web Services API)]from the Amazon Web Services Identity and Access +// Management User Guide. +// +// [Modifying a role maximum session duration (Amazon Web Services API)]: https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-api.html#roles-modify_max-session-duration-api +// [credentialDurationSeconds]: https://docs.aws.amazon.com/iot/latest/apireference/API_UpdateRoleAlias.html#iot-UpdateRoleAlias-request-credentialDurationSeconds // [UpdateRoleAlias]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions func (c *Client) UpdateRoleAlias(ctx context.Context, params *UpdateRoleAliasInput, optFns ...func(*Options)) (*UpdateRoleAliasOutput, error) { if params == nil { diff --git a/service/iot/deserializers.go b/service/iot/deserializers.go index 85d7cc0da75..a71d45f6b27 100644 --- a/service/iot/deserializers.go +++ b/service/iot/deserializers.go @@ -14170,11 +14170,34 @@ func awsRestjson1_deserializeOpDocumentDescribeDomainConfigurationOutput(v **Des for key, value := range shape { switch key { + case "applicationProtocol": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ApplicationProtocol to be of type string, got %T instead", value) + } + sv.ApplicationProtocol = types.ApplicationProtocol(jtv) + } + + case "authenticationType": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AuthenticationType to be of type string, got %T instead", value) + } + sv.AuthenticationType = types.AuthenticationType(jtv) + } + case "authorizerConfig": if err := awsRestjson1_deserializeDocumentAuthorizerConfig(&sv.AuthorizerConfig, value); err != nil { return err } + case "clientCertificateConfig": + if err := awsRestjson1_deserializeDocumentClientCertificateConfig(&sv.ClientCertificateConfig, value); err != nil { + return err + } + case "domainConfigurationArn": if value != nil { jtv, ok := value.(string) @@ -46389,6 +46412,46 @@ func awsRestjson1_deserializeDocumentCidrs(v *[]string, value interface{}) error return nil } +func awsRestjson1_deserializeDocumentClientCertificateConfig(v **types.ClientCertificateConfig, 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.ClientCertificateConfig + if *v == nil { + sv = &types.ClientCertificateConfig{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "clientCertificateCallbackArn": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ClientCertificateCallbackArn to be of type string, got %T instead", value) + } + sv.ClientCertificateCallbackArn = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsRestjson1_deserializeDocumentClientProperties(v *map[string]string, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/iot/serializers.go b/service/iot/serializers.go index a28ae938a6a..b67edfc5f12 100644 --- a/service/iot/serializers.go +++ b/service/iot/serializers.go @@ -2305,6 +2305,16 @@ func awsRestjson1_serializeOpDocumentCreateDomainConfigurationInput(v *CreateDom object := value.Object() defer object.Close() + if len(v.ApplicationProtocol) > 0 { + ok := object.Key("applicationProtocol") + ok.String(string(v.ApplicationProtocol)) + } + + if len(v.AuthenticationType) > 0 { + ok := object.Key("authenticationType") + ok.String(string(v.AuthenticationType)) + } + if v.AuthorizerConfig != nil { ok := object.Key("authorizerConfig") if err := awsRestjson1_serializeDocumentAuthorizerConfig(v.AuthorizerConfig, ok); err != nil { @@ -2312,6 +2322,13 @@ func awsRestjson1_serializeOpDocumentCreateDomainConfigurationInput(v *CreateDom } } + if v.ClientCertificateConfig != nil { + ok := object.Key("clientCertificateConfig") + if err := awsRestjson1_serializeDocumentClientCertificateConfig(v.ClientCertificateConfig, ok); err != nil { + return err + } + } + if v.DomainName != nil { ok := object.Key("domainName") ok.String(*v.DomainName) @@ -20232,6 +20249,16 @@ func awsRestjson1_serializeOpDocumentUpdateDomainConfigurationInput(v *UpdateDom object := value.Object() defer object.Close() + if len(v.ApplicationProtocol) > 0 { + ok := object.Key("applicationProtocol") + ok.String(string(v.ApplicationProtocol)) + } + + if len(v.AuthenticationType) > 0 { + ok := object.Key("authenticationType") + ok.String(string(v.AuthenticationType)) + } + if v.AuthorizerConfig != nil { ok := object.Key("authorizerConfig") if err := awsRestjson1_serializeDocumentAuthorizerConfig(v.AuthorizerConfig, ok); err != nil { @@ -20239,6 +20266,13 @@ func awsRestjson1_serializeOpDocumentUpdateDomainConfigurationInput(v *UpdateDom } } + if v.ClientCertificateConfig != nil { + ok := object.Key("clientCertificateConfig") + if err := awsRestjson1_serializeDocumentClientCertificateConfig(v.ClientCertificateConfig, ok); err != nil { + return err + } + } + if len(v.DomainConfigurationStatus) > 0 { ok := object.Key("domainConfigurationStatus") ok.String(string(v.DomainConfigurationStatus)) @@ -23297,6 +23331,18 @@ func awsRestjson1_serializeDocumentCidrs(v []string, value smithyjson.Value) err return nil } +func awsRestjson1_serializeDocumentClientCertificateConfig(v *types.ClientCertificateConfig, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.ClientCertificateCallbackArn != nil { + ok := object.Key("clientCertificateCallbackArn") + ok.String(*v.ClientCertificateCallbackArn) + } + + return nil +} + func awsRestjson1_serializeDocumentClientProperties(v map[string]string, value smithyjson.Value) error { object := value.Object() defer object.Close() diff --git a/service/iot/types/enums.go b/service/iot/types/enums.go index af13f66b307..7645fae7d62 100644 --- a/service/iot/types/enums.go +++ b/service/iot/types/enums.go @@ -80,6 +80,29 @@ func (AlertTargetType) Values() []AlertTargetType { } } +type ApplicationProtocol string + +// Enum values for ApplicationProtocol +const ( + ApplicationProtocolSecureMqtt ApplicationProtocol = "SECURE_MQTT" + ApplicationProtocolMqttWss ApplicationProtocol = "MQTT_WSS" + ApplicationProtocolHttps ApplicationProtocol = "HTTPS" + ApplicationProtocolDefault ApplicationProtocol = "DEFAULT" +) + +// Values returns all known values for ApplicationProtocol. 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 (ApplicationProtocol) Values() []ApplicationProtocol { + return []ApplicationProtocol{ + "SECURE_MQTT", + "MQTT_WSS", + "HTTPS", + "DEFAULT", + } +} + type AuditCheckRunStatus string // Enum values for AuditCheckRunStatus @@ -285,6 +308,31 @@ func (AuthDecision) Values() []AuthDecision { } } +type AuthenticationType string + +// Enum values for AuthenticationType +const ( + AuthenticationTypeCustomAuthX509 AuthenticationType = "CUSTOM_AUTH_X509" + AuthenticationTypeCustomAuth AuthenticationType = "CUSTOM_AUTH" + AuthenticationTypeAwsX509 AuthenticationType = "AWS_X509" + AuthenticationTypeAwsSigv4 AuthenticationType = "AWS_SIGV4" + AuthenticationTypeDefault AuthenticationType = "DEFAULT" +) + +// Values returns all known values for AuthenticationType. 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 (AuthenticationType) Values() []AuthenticationType { + return []AuthenticationType{ + "CUSTOM_AUTH_X509", + "CUSTOM_AUTH", + "AWS_X509", + "AWS_SIGV4", + "DEFAULT", + } +} + type AuthorizerStatus string // Enum values for AuthorizerStatus diff --git a/service/iot/types/types.go b/service/iot/types/types.go index 6f0ef74c2ac..a9304af4c0a 100644 --- a/service/iot/types/types.go +++ b/service/iot/types/types.go @@ -1119,6 +1119,16 @@ type CertificateValidity struct { noSmithyDocumentSerde } +// An object that specifies the client certificate configuration for a domain. +type ClientCertificateConfig struct { + + // The ARN of the Lambda function that IoT invokes after mutual TLS authentication + // during the connection. + ClientCertificateCallbackArn *string + + noSmithyDocumentSerde +} + // Describes an action that updates a CloudWatch alarm. type CloudwatchAlarmAction struct { @@ -3037,8 +3047,7 @@ type PackageSummary struct { noSmithyDocumentSerde } -// The Amazon S3 location for the artifacts associated with a software package -// version. +// A specific package version artifact associated with a software package version. type PackageVersionArtifact struct { // The S3 location. @@ -3502,8 +3511,8 @@ type SalesforceAction struct { noSmithyDocumentSerde } -// The Amazon S3 location for the software bill of materials associated with a -// software package version. +// A specific software bill of matrerials associated with a software package +// version. type Sbom struct { // The S3 location. @@ -4062,7 +4071,7 @@ type ThingDocument struct { // [IoT Device Shadow service.]: https://docs.aws.amazon.com/iot/latest/developerguide/iot-device-shadows.html Shadow *string - // Thing group names. + // Thing group and billing group names. ThingGroupNames []string // The thing ID. diff --git a/service/iot1clickdevicesservice/api_client.go b/service/iot1clickdevicesservice/api_client.go index c437a0d362a..2ab338b6461 100644 --- a/service/iot1clickdevicesservice/api_client.go +++ b/service/iot1clickdevicesservice/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iot1clickprojects/api_client.go b/service/iot1clickprojects/api_client.go index eb885cb5688..bf12c7b5f87 100644 --- a/service/iot1clickprojects/api_client.go +++ b/service/iot1clickprojects/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iotanalytics/api_client.go b/service/iotanalytics/api_client.go index 87695d2ddd2..eb501958878 100644 --- a/service/iotanalytics/api_client.go +++ b/service/iotanalytics/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iotdataplane/api_client.go b/service/iotdataplane/api_client.go index 91853ffc077..13f3fbb9058 100644 --- a/service/iotdataplane/api_client.go +++ b/service/iotdataplane/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iotdeviceadvisor/api_client.go b/service/iotdeviceadvisor/api_client.go index 284e48cd902..8d313315be1 100644 --- a/service/iotdeviceadvisor/api_client.go +++ b/service/iotdeviceadvisor/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iotevents/api_client.go b/service/iotevents/api_client.go index 2616c5c4518..63bc3f79bf9 100644 --- a/service/iotevents/api_client.go +++ b/service/iotevents/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ioteventsdata/api_client.go b/service/ioteventsdata/api_client.go index 0d52e557fd8..28cc06e37c0 100644 --- a/service/ioteventsdata/api_client.go +++ b/service/ioteventsdata/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iotfleethub/api_client.go b/service/iotfleethub/api_client.go index fe5731e0fe5..27ade82dbd3 100644 --- a/service/iotfleethub/api_client.go +++ b/service/iotfleethub/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iotfleetwise/api_client.go b/service/iotfleetwise/api_client.go index 5625533e432..62d105d0f34 100644 --- a/service/iotfleetwise/api_client.go +++ b/service/iotfleetwise/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iotjobsdataplane/api_client.go b/service/iotjobsdataplane/api_client.go index 910d35fb1f5..ee7f7e5085d 100644 --- a/service/iotjobsdataplane/api_client.go +++ b/service/iotjobsdataplane/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iotsecuretunneling/api_client.go b/service/iotsecuretunneling/api_client.go index 24ccdd1a545..73c845441e5 100644 --- a/service/iotsecuretunneling/api_client.go +++ b/service/iotsecuretunneling/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iotsitewise/api_client.go b/service/iotsitewise/api_client.go index a16801e2089..92988d69d51 100644 --- a/service/iotsitewise/api_client.go +++ b/service/iotsitewise/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iotthingsgraph/api_client.go b/service/iotthingsgraph/api_client.go index ed0c819494b..0554cedef3e 100644 --- a/service/iotthingsgraph/api_client.go +++ b/service/iotthingsgraph/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iottwinmaker/api_client.go b/service/iottwinmaker/api_client.go index b77b22ff317..76245deb741 100644 --- a/service/iottwinmaker/api_client.go +++ b/service/iottwinmaker/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/iotwireless/api_client.go b/service/iotwireless/api_client.go index b2d02e5e801..91aefc37b35 100644 --- a/service/iotwireless/api_client.go +++ b/service/iotwireless/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ivs/api_client.go b/service/ivs/api_client.go index c3c55813e20..2b5c1628913 100644 --- a/service/ivs/api_client.go +++ b/service/ivs/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ivschat/api_client.go b/service/ivschat/api_client.go index 0d7dcb3931c..6bba44a2fe1 100644 --- a/service/ivschat/api_client.go +++ b/service/ivschat/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ivsrealtime/api_client.go b/service/ivsrealtime/api_client.go index 10c7dade7d3..38cc068678f 100644 --- a/service/ivsrealtime/api_client.go +++ b/service/ivsrealtime/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kafka/api_client.go b/service/kafka/api_client.go index c2802d7c28f..45d0e9c57d6 100644 --- a/service/kafka/api_client.go +++ b/service/kafka/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kafkaconnect/api_client.go b/service/kafkaconnect/api_client.go index 4dad789bc67..4da4684a7c0 100644 --- a/service/kafkaconnect/api_client.go +++ b/service/kafkaconnect/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kendra/api_client.go b/service/kendra/api_client.go index 9112685b727..9880623e63c 100644 --- a/service/kendra/api_client.go +++ b/service/kendra/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kendraranking/api_client.go b/service/kendraranking/api_client.go index e575b2b0be8..13b13d66b8f 100644 --- a/service/kendraranking/api_client.go +++ b/service/kendraranking/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/keyspaces/api_client.go b/service/keyspaces/api_client.go index ddeac8b36c9..c3a8f1e93bf 100644 --- a/service/keyspaces/api_client.go +++ b/service/keyspaces/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kinesis/api_client.go b/service/kinesis/api_client.go index f9970ccdef3..f54daf6590c 100644 --- a/service/kinesis/api_client.go +++ b/service/kinesis/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kinesisanalytics/api_client.go b/service/kinesisanalytics/api_client.go index 636874e749f..0f404861d09 100644 --- a/service/kinesisanalytics/api_client.go +++ b/service/kinesisanalytics/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kinesisanalyticsv2/api_client.go b/service/kinesisanalyticsv2/api_client.go index 4d16d0c35fe..6219e8a5c04 100644 --- a/service/kinesisanalyticsv2/api_client.go +++ b/service/kinesisanalyticsv2/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kinesisvideo/api_client.go b/service/kinesisvideo/api_client.go index 9acea3f268b..488c9bcab3a 100644 --- a/service/kinesisvideo/api_client.go +++ b/service/kinesisvideo/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kinesisvideoarchivedmedia/api_client.go b/service/kinesisvideoarchivedmedia/api_client.go index 9ee7f3ccf96..73efbee5299 100644 --- a/service/kinesisvideoarchivedmedia/api_client.go +++ b/service/kinesisvideoarchivedmedia/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kinesisvideomedia/api_client.go b/service/kinesisvideomedia/api_client.go index a0f672dfc0f..4724a55ec25 100644 --- a/service/kinesisvideomedia/api_client.go +++ b/service/kinesisvideomedia/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kinesisvideosignaling/api_client.go b/service/kinesisvideosignaling/api_client.go index 82fb2127bb7..fe6bd5687aa 100644 --- a/service/kinesisvideosignaling/api_client.go +++ b/service/kinesisvideosignaling/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kinesisvideowebrtcstorage/api_client.go b/service/kinesisvideowebrtcstorage/api_client.go index 25d7c0b45ac..58a1314e08a 100644 --- a/service/kinesisvideowebrtcstorage/api_client.go +++ b/service/kinesisvideowebrtcstorage/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/kms/api_client.go b/service/kms/api_client.go index c5e6b2a2e20..5c50c166dc7 100644 --- a/service/kms/api_client.go +++ b/service/kms/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/lakeformation/api_client.go b/service/lakeformation/api_client.go index 59daeee944b..018797eb787 100644 --- a/service/lakeformation/api_client.go +++ b/service/lakeformation/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/lambda/api_client.go b/service/lambda/api_client.go index 5ae893f6aeb..870e0e1df35 100644 --- a/service/lambda/api_client.go +++ b/service/lambda/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/launchwizard/api_client.go b/service/launchwizard/api_client.go index 3e8c893b07f..af0e34ab262 100644 --- a/service/launchwizard/api_client.go +++ b/service/launchwizard/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/lexmodelbuildingservice/api_client.go b/service/lexmodelbuildingservice/api_client.go index 3d5f2d81168..76f9b7a9f2b 100644 --- a/service/lexmodelbuildingservice/api_client.go +++ b/service/lexmodelbuildingservice/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/lexmodelsv2/api_client.go b/service/lexmodelsv2/api_client.go index bc04e7ab4c3..671fb099ded 100644 --- a/service/lexmodelsv2/api_client.go +++ b/service/lexmodelsv2/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/lexruntimeservice/api_client.go b/service/lexruntimeservice/api_client.go index 222513f79be..3a28fcaf22f 100644 --- a/service/lexruntimeservice/api_client.go +++ b/service/lexruntimeservice/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/lexruntimev2/api_client.go b/service/lexruntimev2/api_client.go index 1271a11c20b..8271fc058e8 100644 --- a/service/lexruntimev2/api_client.go +++ b/service/lexruntimev2/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/licensemanager/api_client.go b/service/licensemanager/api_client.go index a038fc82b16..f89b60e94e8 100644 --- a/service/licensemanager/api_client.go +++ b/service/licensemanager/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/licensemanagerlinuxsubscriptions/api_client.go b/service/licensemanagerlinuxsubscriptions/api_client.go index a4dbd71fcca..cc36e4e60b6 100644 --- a/service/licensemanagerlinuxsubscriptions/api_client.go +++ b/service/licensemanagerlinuxsubscriptions/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/licensemanagerusersubscriptions/api_client.go b/service/licensemanagerusersubscriptions/api_client.go index bd56cbde64d..4e12b016139 100644 --- a/service/licensemanagerusersubscriptions/api_client.go +++ b/service/licensemanagerusersubscriptions/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/lightsail/api_client.go b/service/lightsail/api_client.go index 5da76840c2e..62c5c753309 100644 --- a/service/lightsail/api_client.go +++ b/service/lightsail/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/location/api_client.go b/service/location/api_client.go index a3f02d3c48b..ec5feb4d453 100644 --- a/service/location/api_client.go +++ b/service/location/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/lookoutequipment/api_client.go b/service/lookoutequipment/api_client.go index 114fe6ad053..7174fdd0520 100644 --- a/service/lookoutequipment/api_client.go +++ b/service/lookoutequipment/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/lookoutmetrics/api_client.go b/service/lookoutmetrics/api_client.go index edb53e772a4..03525af0688 100644 --- a/service/lookoutmetrics/api_client.go +++ b/service/lookoutmetrics/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/lookoutvision/api_client.go b/service/lookoutvision/api_client.go index 3209ea9ec5b..7b0a67b093f 100644 --- a/service/lookoutvision/api_client.go +++ b/service/lookoutvision/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/m2/api_client.go b/service/m2/api_client.go index 0ba064806f3..9ee048c43d3 100644 --- a/service/m2/api_client.go +++ b/service/m2/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/machinelearning/api_client.go b/service/machinelearning/api_client.go index b268ba07828..859e3b331c7 100644 --- a/service/machinelearning/api_client.go +++ b/service/machinelearning/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/macie2/api_client.go b/service/macie2/api_client.go index 063f5fd89bb..e65bfd1de2c 100644 --- a/service/macie2/api_client.go +++ b/service/macie2/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mailmanager/api_client.go b/service/mailmanager/api_client.go index ce20e946eed..10a5fff7f27 100644 --- a/service/mailmanager/api_client.go +++ b/service/mailmanager/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/managedblockchain/api_client.go b/service/managedblockchain/api_client.go index ef167a5b169..4159452364e 100644 --- a/service/managedblockchain/api_client.go +++ b/service/managedblockchain/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/managedblockchainquery/api_client.go b/service/managedblockchainquery/api_client.go index 3e5595039a4..1f3cd77b9b6 100644 --- a/service/managedblockchainquery/api_client.go +++ b/service/managedblockchainquery/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/marketplaceagreement/api_client.go b/service/marketplaceagreement/api_client.go index b35679ab487..92b5e20e219 100644 --- a/service/marketplaceagreement/api_client.go +++ b/service/marketplaceagreement/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/marketplacecatalog/api_client.go b/service/marketplacecatalog/api_client.go index e23474d61b8..c380c7ffe19 100644 --- a/service/marketplacecatalog/api_client.go +++ b/service/marketplacecatalog/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/marketplacecommerceanalytics/api_client.go b/service/marketplacecommerceanalytics/api_client.go index 0b5943753a8..517bac59813 100644 --- a/service/marketplacecommerceanalytics/api_client.go +++ b/service/marketplacecommerceanalytics/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/marketplacedeployment/api_client.go b/service/marketplacedeployment/api_client.go index d7e2eb70956..567a7bce400 100644 --- a/service/marketplacedeployment/api_client.go +++ b/service/marketplacedeployment/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/marketplaceentitlementservice/api_client.go b/service/marketplaceentitlementservice/api_client.go index 8486f569e0b..f2eca3fceb6 100644 --- a/service/marketplaceentitlementservice/api_client.go +++ b/service/marketplaceentitlementservice/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/marketplacemetering/api_client.go b/service/marketplacemetering/api_client.go index 6eaa22e0f6f..aa622287373 100644 --- a/service/marketplacemetering/api_client.go +++ b/service/marketplacemetering/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/marketplacereporting/LICENSE.txt b/service/marketplacereporting/LICENSE.txt new file mode 100644 index 00000000000..d6456956733 --- /dev/null +++ b/service/marketplacereporting/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/service/marketplacereporting/api_client.go b/service/marketplacereporting/api_client.go new file mode 100644 index 00000000000..227451c3496 --- /dev/null +++ b/service/marketplacereporting/api_client.go @@ -0,0 +1,911 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting + +import ( + "context" + "errors" + "fmt" + "github.com/aws/aws-sdk-go-v2/aws" + "github.com/aws/aws-sdk-go-v2/aws/defaults" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + "github.com/aws/aws-sdk-go-v2/aws/retry" + "github.com/aws/aws-sdk-go-v2/aws/signer/v4" + awshttp "github.com/aws/aws-sdk-go-v2/aws/transport/http" + internalauth "github.com/aws/aws-sdk-go-v2/internal/auth" + internalauthsmithy "github.com/aws/aws-sdk-go-v2/internal/auth/smithy" + internalConfig "github.com/aws/aws-sdk-go-v2/internal/configsources" + internalmiddleware "github.com/aws/aws-sdk-go-v2/internal/middleware" + smithy "github.com/aws/smithy-go" + smithyauth "github.com/aws/smithy-go/auth" + smithydocument "github.com/aws/smithy-go/document" + "github.com/aws/smithy-go/logging" + "github.com/aws/smithy-go/metrics" + "github.com/aws/smithy-go/middleware" + "github.com/aws/smithy-go/tracing" + smithyhttp "github.com/aws/smithy-go/transport/http" + "net" + "net/http" + "sync/atomic" + "time" +) + +const ServiceID = "Marketplace Reporting" +const ServiceAPIVersion = "2018-05-10" + +type operationMetrics struct { + Duration metrics.Float64Histogram + SerializeDuration metrics.Float64Histogram + ResolveIdentityDuration metrics.Float64Histogram + ResolveEndpointDuration metrics.Float64Histogram + SignRequestDuration metrics.Float64Histogram + DeserializeDuration metrics.Float64Histogram +} + +func (m *operationMetrics) histogramFor(name string) metrics.Float64Histogram { + switch name { + case "client.call.duration": + return m.Duration + case "client.call.serialization_duration": + return m.SerializeDuration + case "client.call.resolve_identity_duration": + return m.ResolveIdentityDuration + case "client.call.resolve_endpoint_duration": + return m.ResolveEndpointDuration + case "client.call.signing_duration": + return m.SignRequestDuration + case "client.call.deserialization_duration": + return m.DeserializeDuration + default: + panic("unrecognized operation metric") + } +} + +func timeOperationMetric[T any]( + ctx context.Context, metric string, fn func() (T, error), + opts ...metrics.RecordMetricOption, +) (T, error) { + instr := getOperationMetrics(ctx).histogramFor(metric) + opts = append([]metrics.RecordMetricOption{withOperationMetadata(ctx)}, opts...) + + start := time.Now() + v, err := fn() + end := time.Now() + + elapsed := end.Sub(start) + instr.Record(ctx, float64(elapsed)/1e9, opts...) + return v, err +} + +func startMetricTimer(ctx context.Context, metric string, opts ...metrics.RecordMetricOption) func() { + instr := getOperationMetrics(ctx).histogramFor(metric) + opts = append([]metrics.RecordMetricOption{withOperationMetadata(ctx)}, opts...) + + var ended bool + start := time.Now() + return func() { + if ended { + return + } + ended = true + + end := time.Now() + + elapsed := end.Sub(start) + instr.Record(ctx, float64(elapsed)/1e9, opts...) + } +} + +func withOperationMetadata(ctx context.Context) metrics.RecordMetricOption { + return func(o *metrics.RecordMetricOptions) { + o.Properties.Set("rpc.service", middleware.GetServiceID(ctx)) + o.Properties.Set("rpc.method", middleware.GetOperationName(ctx)) + } +} + +type operationMetricsKey struct{} + +func withOperationMetrics(parent context.Context, mp metrics.MeterProvider) (context.Context, error) { + meter := mp.Meter("github.com/aws/aws-sdk-go-v2/service/marketplacereporting") + om := &operationMetrics{} + + var err error + + om.Duration, err = operationMetricTimer(meter, "client.call.duration", + "Overall call duration (including retries and time to send or receive request and response body)") + if err != nil { + return nil, err + } + om.SerializeDuration, err = operationMetricTimer(meter, "client.call.serialization_duration", + "The time it takes to serialize a message body") + if err != nil { + return nil, err + } + om.ResolveIdentityDuration, err = operationMetricTimer(meter, "client.call.auth.resolve_identity_duration", + "The time taken to acquire an identity (AWS credentials, bearer token, etc) from an Identity Provider") + if err != nil { + return nil, err + } + om.ResolveEndpointDuration, err = operationMetricTimer(meter, "client.call.resolve_endpoint_duration", + "The time it takes to resolve an endpoint (endpoint resolver, not DNS) for the request") + if err != nil { + return nil, err + } + om.SignRequestDuration, err = operationMetricTimer(meter, "client.call.auth.signing_duration", + "The time it takes to sign a request") + if err != nil { + return nil, err + } + om.DeserializeDuration, err = operationMetricTimer(meter, "client.call.deserialization_duration", + "The time it takes to deserialize a message body") + if err != nil { + return nil, err + } + + return context.WithValue(parent, operationMetricsKey{}, om), nil +} + +func operationMetricTimer(m metrics.Meter, name, desc string) (metrics.Float64Histogram, error) { + return m.Float64Histogram(name, func(o *metrics.InstrumentOptions) { + o.UnitLabel = "s" + o.Description = desc + }) +} + +func getOperationMetrics(ctx context.Context) *operationMetrics { + return ctx.Value(operationMetricsKey{}).(*operationMetrics) +} + +func operationTracer(p tracing.TracerProvider) tracing.Tracer { + return p.Tracer("github.com/aws/aws-sdk-go-v2/service/marketplacereporting") +} + +// Client provides the API client to make operations call for AWS Marketplace +// Reporting Service. +type Client struct { + options Options + + // Difference between the time reported by the server and the client + timeOffset *atomic.Int64 +} + +// New returns an initialized Client based on the functional options. Provide +// additional functional options to further configure the behavior of the client, +// such as changing the client's endpoint or adding custom middleware behavior. +func New(options Options, optFns ...func(*Options)) *Client { + options = options.Copy() + + resolveDefaultLogger(&options) + + setResolvedDefaultsMode(&options) + + resolveRetryer(&options) + + resolveHTTPClient(&options) + + resolveHTTPSignerV4(&options) + + resolveEndpointResolverV2(&options) + + resolveTracerProvider(&options) + + resolveMeterProvider(&options) + + resolveAuthSchemeResolver(&options) + + for _, fn := range optFns { + fn(&options) + } + + finalizeRetryMaxAttempts(&options) + + ignoreAnonymousAuth(&options) + + wrapWithAnonymousAuth(&options) + + resolveAuthSchemes(&options) + + client := &Client{ + options: options, + } + + initializeTimeOffsetResolver(client) + + return client +} + +// Options returns a copy of the client configuration. +// +// Callers SHOULD NOT perform mutations on any inner structures within client +// config. Config overrides should instead be made on a per-operation basis through +// functional options. +func (c *Client) Options() Options { + return c.options.Copy() +} + +func (c *Client) invokeOperation( + ctx context.Context, opID string, params interface{}, optFns []func(*Options), stackFns ...func(*middleware.Stack, Options) error, +) ( + result interface{}, metadata middleware.Metadata, err error, +) { + ctx = middleware.ClearStackValues(ctx) + ctx = middleware.WithServiceID(ctx, ServiceID) + ctx = middleware.WithOperationName(ctx, opID) + + stack := middleware.NewStack(opID, smithyhttp.NewStackRequest) + options := c.options.Copy() + + for _, fn := range optFns { + fn(&options) + } + + finalizeOperationRetryMaxAttempts(&options, *c) + + finalizeClientEndpointResolverOptions(&options) + + for _, fn := range stackFns { + if err := fn(stack, options); err != nil { + return nil, metadata, err + } + } + + for _, fn := range options.APIOptions { + if err := fn(stack); err != nil { + return nil, metadata, err + } + } + + ctx, err = withOperationMetrics(ctx, options.MeterProvider) + if err != nil { + return nil, metadata, err + } + + tracer := operationTracer(options.TracerProvider) + spanName := fmt.Sprintf("%s.%s", ServiceID, opID) + + ctx = tracing.WithOperationTracer(ctx, tracer) + + ctx, span := tracer.StartSpan(ctx, spanName, func(o *tracing.SpanOptions) { + o.Kind = tracing.SpanKindClient + o.Properties.Set("rpc.system", "aws-api") + o.Properties.Set("rpc.method", opID) + o.Properties.Set("rpc.service", ServiceID) + }) + endTimer := startMetricTimer(ctx, "client.call.duration") + defer endTimer() + defer span.End() + + handler := smithyhttp.NewClientHandler(options.HTTPClient) + decorated := middleware.DecorateHandler(handler, stack) + result, metadata, err = decorated.Handle(ctx, params) + if err != nil { + span.SetProperty("exception.type", fmt.Sprintf("%T", err)) + span.SetProperty("exception.message", err.Error()) + + var aerr smithy.APIError + if errors.As(err, &aerr) { + span.SetProperty("api.error_code", aerr.ErrorCode()) + span.SetProperty("api.error_message", aerr.ErrorMessage()) + span.SetProperty("api.error_fault", aerr.ErrorFault().String()) + } + + err = &smithy.OperationError{ + ServiceID: ServiceID, + OperationName: opID, + Err: err, + } + } + + span.SetProperty("error", err != nil) + if err == nil { + span.SetStatus(tracing.SpanStatusOK) + } else { + span.SetStatus(tracing.SpanStatusError) + } + + return result, metadata, err +} + +type operationInputKey struct{} + +func setOperationInput(ctx context.Context, input interface{}) context.Context { + return middleware.WithStackValue(ctx, operationInputKey{}, input) +} + +func getOperationInput(ctx context.Context) interface{} { + return middleware.GetStackValue(ctx, operationInputKey{}) +} + +type setOperationInputMiddleware struct { +} + +func (*setOperationInputMiddleware) ID() string { + return "setOperationInput" +} + +func (m *setOperationInputMiddleware) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + ctx = setOperationInput(ctx, in.Parameters) + return next.HandleSerialize(ctx, in) +} + +func addProtocolFinalizerMiddlewares(stack *middleware.Stack, options Options, operation string) error { + if err := stack.Finalize.Add(&resolveAuthSchemeMiddleware{operation: operation, options: options}, middleware.Before); err != nil { + return fmt.Errorf("add ResolveAuthScheme: %w", err) + } + if err := stack.Finalize.Insert(&getIdentityMiddleware{options: options}, "ResolveAuthScheme", middleware.After); err != nil { + return fmt.Errorf("add GetIdentity: %v", err) + } + if err := stack.Finalize.Insert(&resolveEndpointV2Middleware{options: options}, "GetIdentity", middleware.After); err != nil { + return fmt.Errorf("add ResolveEndpointV2: %v", err) + } + if err := stack.Finalize.Insert(&signRequestMiddleware{options: options}, "ResolveEndpointV2", middleware.After); err != nil { + return fmt.Errorf("add Signing: %w", err) + } + return nil +} +func resolveAuthSchemeResolver(options *Options) { + if options.AuthSchemeResolver == nil { + options.AuthSchemeResolver = &defaultAuthSchemeResolver{} + } +} + +func resolveAuthSchemes(options *Options) { + if options.AuthSchemes == nil { + options.AuthSchemes = []smithyhttp.AuthScheme{ + internalauth.NewHTTPAuthScheme("aws.auth#sigv4", &internalauthsmithy.V4SignerAdapter{ + Signer: options.HTTPSignerV4, + Logger: options.Logger, + LogSigning: options.ClientLogMode.IsSigning(), + }), + } + } +} + +type noSmithyDocumentSerde = smithydocument.NoSerde + +type legacyEndpointContextSetter struct { + LegacyResolver EndpointResolver +} + +func (*legacyEndpointContextSetter) ID() string { + return "legacyEndpointContextSetter" +} + +func (m *legacyEndpointContextSetter) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + if m.LegacyResolver != nil { + ctx = awsmiddleware.SetRequiresLegacyEndpoints(ctx, true) + } + + return next.HandleInitialize(ctx, in) + +} +func addlegacyEndpointContextSetter(stack *middleware.Stack, o Options) error { + return stack.Initialize.Add(&legacyEndpointContextSetter{ + LegacyResolver: o.EndpointResolver, + }, middleware.Before) +} + +func resolveDefaultLogger(o *Options) { + if o.Logger != nil { + return + } + o.Logger = logging.Nop{} +} + +func addSetLoggerMiddleware(stack *middleware.Stack, o Options) error { + return middleware.AddSetLoggerMiddleware(stack, o.Logger) +} + +func setResolvedDefaultsMode(o *Options) { + if len(o.resolvedDefaultsMode) > 0 { + return + } + + var mode aws.DefaultsMode + mode.SetFromString(string(o.DefaultsMode)) + + if mode == aws.DefaultsModeAuto { + mode = defaults.ResolveDefaultsModeAuto(o.Region, o.RuntimeEnvironment) + } + + o.resolvedDefaultsMode = mode +} + +// NewFromConfig returns a new client from the provided config. +func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client { + opts := Options{ + Region: cfg.Region, + DefaultsMode: cfg.DefaultsMode, + RuntimeEnvironment: cfg.RuntimeEnvironment, + HTTPClient: cfg.HTTPClient, + Credentials: cfg.Credentials, + APIOptions: cfg.APIOptions, + Logger: cfg.Logger, + ClientLogMode: cfg.ClientLogMode, + AppID: cfg.AppID, + } + resolveAWSRetryerProvider(cfg, &opts) + resolveAWSRetryMaxAttempts(cfg, &opts) + resolveAWSRetryMode(cfg, &opts) + resolveAWSEndpointResolver(cfg, &opts) + resolveUseDualStackEndpoint(cfg, &opts) + resolveUseFIPSEndpoint(cfg, &opts) + resolveBaseEndpoint(cfg, &opts) + return New(opts, optFns...) +} + +func resolveHTTPClient(o *Options) { + var buildable *awshttp.BuildableClient + + if o.HTTPClient != nil { + var ok bool + buildable, ok = o.HTTPClient.(*awshttp.BuildableClient) + if !ok { + return + } + } else { + buildable = awshttp.NewBuildableClient() + } + + modeConfig, err := defaults.GetModeConfiguration(o.resolvedDefaultsMode) + if err == nil { + buildable = buildable.WithDialerOptions(func(dialer *net.Dialer) { + if dialerTimeout, ok := modeConfig.GetConnectTimeout(); ok { + dialer.Timeout = dialerTimeout + } + }) + + buildable = buildable.WithTransportOptions(func(transport *http.Transport) { + if tlsHandshakeTimeout, ok := modeConfig.GetTLSNegotiationTimeout(); ok { + transport.TLSHandshakeTimeout = tlsHandshakeTimeout + } + }) + } + + o.HTTPClient = buildable +} + +func resolveRetryer(o *Options) { + if o.Retryer != nil { + return + } + + if len(o.RetryMode) == 0 { + modeConfig, err := defaults.GetModeConfiguration(o.resolvedDefaultsMode) + if err == nil { + o.RetryMode = modeConfig.RetryMode + } + } + if len(o.RetryMode) == 0 { + o.RetryMode = aws.RetryModeStandard + } + + var standardOptions []func(*retry.StandardOptions) + if v := o.RetryMaxAttempts; v != 0 { + standardOptions = append(standardOptions, func(so *retry.StandardOptions) { + so.MaxAttempts = v + }) + } + + switch o.RetryMode { + case aws.RetryModeAdaptive: + var adaptiveOptions []func(*retry.AdaptiveModeOptions) + if len(standardOptions) != 0 { + adaptiveOptions = append(adaptiveOptions, func(ao *retry.AdaptiveModeOptions) { + ao.StandardOptions = append(ao.StandardOptions, standardOptions...) + }) + } + o.Retryer = retry.NewAdaptiveMode(adaptiveOptions...) + + default: + o.Retryer = retry.NewStandard(standardOptions...) + } +} + +func resolveAWSRetryerProvider(cfg aws.Config, o *Options) { + if cfg.Retryer == nil { + return + } + o.Retryer = cfg.Retryer() +} + +func resolveAWSRetryMode(cfg aws.Config, o *Options) { + if len(cfg.RetryMode) == 0 { + return + } + o.RetryMode = cfg.RetryMode +} +func resolveAWSRetryMaxAttempts(cfg aws.Config, o *Options) { + if cfg.RetryMaxAttempts == 0 { + return + } + o.RetryMaxAttempts = cfg.RetryMaxAttempts +} + +func finalizeRetryMaxAttempts(o *Options) { + if o.RetryMaxAttempts == 0 { + return + } + + o.Retryer = retry.AddWithMaxAttempts(o.Retryer, o.RetryMaxAttempts) +} + +func finalizeOperationRetryMaxAttempts(o *Options, client Client) { + if v := o.RetryMaxAttempts; v == 0 || v == client.options.RetryMaxAttempts { + return + } + + o.Retryer = retry.AddWithMaxAttempts(o.Retryer, o.RetryMaxAttempts) +} + +func resolveAWSEndpointResolver(cfg aws.Config, o *Options) { + if cfg.EndpointResolver == nil && cfg.EndpointResolverWithOptions == nil { + return + } + o.EndpointResolver = withEndpointResolver(cfg.EndpointResolver, cfg.EndpointResolverWithOptions) +} + +func addClientUserAgent(stack *middleware.Stack, options Options) error { + ua, err := getOrAddRequestUserAgent(stack) + if err != nil { + return err + } + + ua.AddSDKAgentKeyValue(awsmiddleware.APIMetadata, "marketplacereporting", goModuleVersion) + if len(options.AppID) > 0 { + ua.AddSDKAgentKey(awsmiddleware.ApplicationIdentifier, options.AppID) + } + + return nil +} + +func getOrAddRequestUserAgent(stack *middleware.Stack) (*awsmiddleware.RequestUserAgent, error) { + id := (*awsmiddleware.RequestUserAgent)(nil).ID() + mw, ok := stack.Build.Get(id) + if !ok { + mw = awsmiddleware.NewRequestUserAgent() + if err := stack.Build.Add(mw, middleware.After); err != nil { + return nil, err + } + } + + ua, ok := mw.(*awsmiddleware.RequestUserAgent) + if !ok { + return nil, fmt.Errorf("%T for %s middleware did not match expected type", mw, id) + } + + return ua, nil +} + +type HTTPSignerV4 interface { + SignHTTP(ctx context.Context, credentials aws.Credentials, r *http.Request, payloadHash string, service string, region string, signingTime time.Time, optFns ...func(*v4.SignerOptions)) error +} + +func resolveHTTPSignerV4(o *Options) { + if o.HTTPSignerV4 != nil { + return + } + o.HTTPSignerV4 = newDefaultV4Signer(*o) +} + +func newDefaultV4Signer(o Options) *v4.Signer { + return v4.NewSigner(func(so *v4.SignerOptions) { + so.Logger = o.Logger + so.LogSigning = o.ClientLogMode.IsSigning() + }) +} + +func addClientRequestID(stack *middleware.Stack) error { + return stack.Build.Add(&awsmiddleware.ClientRequestID{}, middleware.After) +} + +func addComputeContentLength(stack *middleware.Stack) error { + return stack.Build.Add(&smithyhttp.ComputeContentLength{}, middleware.After) +} + +func addRawResponseToMetadata(stack *middleware.Stack) error { + return stack.Deserialize.Add(&awsmiddleware.AddRawResponse{}, middleware.Before) +} + +func addRecordResponseTiming(stack *middleware.Stack) error { + return stack.Deserialize.Add(&awsmiddleware.RecordResponseTiming{}, middleware.After) +} + +func addSpanRetryLoop(stack *middleware.Stack, options Options) error { + return stack.Finalize.Insert(&spanRetryLoop{options: options}, "Retry", middleware.Before) +} + +type spanRetryLoop struct { + options Options +} + +func (*spanRetryLoop) ID() string { + return "spanRetryLoop" +} + +func (m *spanRetryLoop) HandleFinalize( + ctx context.Context, in middleware.FinalizeInput, next middleware.FinalizeHandler, +) ( + middleware.FinalizeOutput, middleware.Metadata, error, +) { + tracer := operationTracer(m.options.TracerProvider) + ctx, span := tracer.StartSpan(ctx, "RetryLoop") + defer span.End() + + return next.HandleFinalize(ctx, in) +} +func addStreamingEventsPayload(stack *middleware.Stack) error { + return stack.Finalize.Add(&v4.StreamingEventsPayload{}, middleware.Before) +} + +func addUnsignedPayload(stack *middleware.Stack) error { + return stack.Finalize.Insert(&v4.UnsignedPayload{}, "ResolveEndpointV2", middleware.After) +} + +func addComputePayloadSHA256(stack *middleware.Stack) error { + return stack.Finalize.Insert(&v4.ComputePayloadSHA256{}, "ResolveEndpointV2", middleware.After) +} + +func addContentSHA256Header(stack *middleware.Stack) error { + return stack.Finalize.Insert(&v4.ContentSHA256Header{}, (*v4.ComputePayloadSHA256)(nil).ID(), middleware.After) +} + +func addIsWaiterUserAgent(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + ua, err := getOrAddRequestUserAgent(stack) + if err != nil { + return err + } + + ua.AddUserAgentFeature(awsmiddleware.UserAgentFeatureWaiter) + return nil + }) +} + +func addIsPaginatorUserAgent(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + ua, err := getOrAddRequestUserAgent(stack) + if err != nil { + return err + } + + ua.AddUserAgentFeature(awsmiddleware.UserAgentFeaturePaginator) + return nil + }) +} + +func addRetry(stack *middleware.Stack, o Options) error { + attempt := retry.NewAttemptMiddleware(o.Retryer, smithyhttp.RequestCloner, func(m *retry.Attempt) { + m.LogAttempts = o.ClientLogMode.IsRetries() + m.OperationMeter = o.MeterProvider.Meter("github.com/aws/aws-sdk-go-v2/service/marketplacereporting") + }) + if err := stack.Finalize.Insert(attempt, "Signing", middleware.Before); err != nil { + return err + } + if err := stack.Finalize.Insert(&retry.MetricsHeader{}, attempt.ID(), middleware.After); err != nil { + return err + } + return nil +} + +// resolves dual-stack endpoint configuration +func resolveUseDualStackEndpoint(cfg aws.Config, o *Options) error { + if len(cfg.ConfigSources) == 0 { + return nil + } + value, found, err := internalConfig.ResolveUseDualStackEndpoint(context.Background(), cfg.ConfigSources) + if err != nil { + return err + } + if found { + o.EndpointOptions.UseDualStackEndpoint = value + } + return nil +} + +// resolves FIPS endpoint configuration +func resolveUseFIPSEndpoint(cfg aws.Config, o *Options) error { + if len(cfg.ConfigSources) == 0 { + return nil + } + value, found, err := internalConfig.ResolveUseFIPSEndpoint(context.Background(), cfg.ConfigSources) + if err != nil { + return err + } + if found { + o.EndpointOptions.UseFIPSEndpoint = value + } + return nil +} + +func resolveAccountID(identity smithyauth.Identity, mode aws.AccountIDEndpointMode) *string { + if mode == aws.AccountIDEndpointModeDisabled { + return nil + } + + if ca, ok := identity.(*internalauthsmithy.CredentialsAdapter); ok && ca.Credentials.AccountID != "" { + return aws.String(ca.Credentials.AccountID) + } + + return nil +} + +func addTimeOffsetBuild(stack *middleware.Stack, c *Client) error { + mw := internalmiddleware.AddTimeOffsetMiddleware{Offset: c.timeOffset} + if err := stack.Build.Add(&mw, middleware.After); err != nil { + return err + } + return stack.Deserialize.Insert(&mw, "RecordResponseTiming", middleware.Before) +} +func initializeTimeOffsetResolver(c *Client) { + c.timeOffset = new(atomic.Int64) +} + +func addUserAgentRetryMode(stack *middleware.Stack, options Options) error { + ua, err := getOrAddRequestUserAgent(stack) + if err != nil { + return err + } + + switch options.Retryer.(type) { + case *retry.Standard: + ua.AddUserAgentFeature(awsmiddleware.UserAgentFeatureRetryModeStandard) + case *retry.AdaptiveMode: + ua.AddUserAgentFeature(awsmiddleware.UserAgentFeatureRetryModeAdaptive) + } + return nil +} + +func resolveTracerProvider(options *Options) { + if options.TracerProvider == nil { + options.TracerProvider = &tracing.NopTracerProvider{} + } +} + +func resolveMeterProvider(options *Options) { + if options.MeterProvider == nil { + options.MeterProvider = metrics.NopMeterProvider{} + } +} + +func addRecursionDetection(stack *middleware.Stack) error { + return stack.Build.Add(&awsmiddleware.RecursionDetection{}, middleware.After) +} + +func addRequestIDRetrieverMiddleware(stack *middleware.Stack) error { + return stack.Deserialize.Insert(&awsmiddleware.RequestIDRetriever{}, "OperationDeserializer", middleware.Before) + +} + +func addResponseErrorMiddleware(stack *middleware.Stack) error { + return stack.Deserialize.Insert(&awshttp.ResponseErrorWrapper{}, "RequestIDRetriever", middleware.Before) + +} + +func addRequestResponseLogging(stack *middleware.Stack, o Options) error { + return stack.Deserialize.Add(&smithyhttp.RequestResponseLogger{ + LogRequest: o.ClientLogMode.IsRequest(), + LogRequestWithBody: o.ClientLogMode.IsRequestWithBody(), + LogResponse: o.ClientLogMode.IsResponse(), + LogResponseWithBody: o.ClientLogMode.IsResponseWithBody(), + }, middleware.After) +} + +type disableHTTPSMiddleware struct { + DisableHTTPS bool +} + +func (*disableHTTPSMiddleware) ID() string { + return "disableHTTPS" +} + +func (m *disableHTTPSMiddleware) HandleFinalize(ctx context.Context, in middleware.FinalizeInput, next middleware.FinalizeHandler) ( + out middleware.FinalizeOutput, metadata middleware.Metadata, err error, +) { + req, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, fmt.Errorf("unknown transport type %T", in.Request) + } + + if m.DisableHTTPS && !smithyhttp.GetHostnameImmutable(ctx) { + req.URL.Scheme = "http" + } + + return next.HandleFinalize(ctx, in) +} + +func addDisableHTTPSMiddleware(stack *middleware.Stack, o Options) error { + return stack.Finalize.Insert(&disableHTTPSMiddleware{ + DisableHTTPS: o.EndpointOptions.DisableHTTPS, + }, "ResolveEndpointV2", middleware.After) +} + +type spanInitializeStart struct { +} + +func (*spanInitializeStart) ID() string { + return "spanInitializeStart" +} + +func (m *spanInitializeStart) HandleInitialize( + ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler, +) ( + middleware.InitializeOutput, middleware.Metadata, error, +) { + ctx, _ = tracing.StartSpan(ctx, "Initialize") + + return next.HandleInitialize(ctx, in) +} + +type spanInitializeEnd struct { +} + +func (*spanInitializeEnd) ID() string { + return "spanInitializeEnd" +} + +func (m *spanInitializeEnd) HandleInitialize( + ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler, +) ( + middleware.InitializeOutput, middleware.Metadata, error, +) { + ctx, span := tracing.PopSpan(ctx) + span.End() + + return next.HandleInitialize(ctx, in) +} + +type spanBuildRequestStart struct { +} + +func (*spanBuildRequestStart) ID() string { + return "spanBuildRequestStart" +} + +func (m *spanBuildRequestStart) HandleSerialize( + ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler, +) ( + middleware.SerializeOutput, middleware.Metadata, error, +) { + ctx, _ = tracing.StartSpan(ctx, "BuildRequest") + + return next.HandleSerialize(ctx, in) +} + +type spanBuildRequestEnd struct { +} + +func (*spanBuildRequestEnd) ID() string { + return "spanBuildRequestEnd" +} + +func (m *spanBuildRequestEnd) HandleBuild( + ctx context.Context, in middleware.BuildInput, next middleware.BuildHandler, +) ( + middleware.BuildOutput, middleware.Metadata, error, +) { + ctx, span := tracing.PopSpan(ctx) + span.End() + + return next.HandleBuild(ctx, in) +} + +func addSpanInitializeStart(stack *middleware.Stack) error { + return stack.Initialize.Add(&spanInitializeStart{}, middleware.Before) +} + +func addSpanInitializeEnd(stack *middleware.Stack) error { + return stack.Initialize.Add(&spanInitializeEnd{}, middleware.After) +} + +func addSpanBuildRequestStart(stack *middleware.Stack) error { + return stack.Serialize.Add(&spanBuildRequestStart{}, middleware.Before) +} + +func addSpanBuildRequestEnd(stack *middleware.Stack) error { + return stack.Build.Add(&spanBuildRequestEnd{}, middleware.After) +} diff --git a/service/marketplacereporting/api_client_test.go b/service/marketplacereporting/api_client_test.go new file mode 100644 index 00000000000..cc18a28e582 --- /dev/null +++ b/service/marketplacereporting/api_client_test.go @@ -0,0 +1,127 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting + +import ( + "context" + "github.com/aws/aws-sdk-go-v2/aws" + "github.com/aws/smithy-go/middleware" + smithyhttp "github.com/aws/smithy-go/transport/http" + "io/ioutil" + "net/http" + "strings" + "testing" +) + +func TestClient_resolveRetryOptions(t *testing.T) { + nopClient := smithyhttp.ClientDoFunc(func(_ *http.Request) (*http.Response, error) { + return &http.Response{ + StatusCode: 200, + Header: http.Header{}, + Body: ioutil.NopCloser(strings.NewReader("")), + }, nil + }) + + cases := map[string]struct { + defaultsMode aws.DefaultsMode + retryer aws.Retryer + retryMaxAttempts int + opRetryMaxAttempts *int + retryMode aws.RetryMode + expectClientRetryMode aws.RetryMode + expectClientMaxAttempts int + expectOpMaxAttempts int + }{ + "defaults": { + defaultsMode: aws.DefaultsModeStandard, + expectClientRetryMode: aws.RetryModeStandard, + expectClientMaxAttempts: 3, + expectOpMaxAttempts: 3, + }, + "custom default retry": { + retryMode: aws.RetryModeAdaptive, + retryMaxAttempts: 10, + expectClientRetryMode: aws.RetryModeAdaptive, + expectClientMaxAttempts: 10, + expectOpMaxAttempts: 10, + }, + "custom op max attempts": { + retryMode: aws.RetryModeAdaptive, + retryMaxAttempts: 10, + opRetryMaxAttempts: aws.Int(2), + expectClientRetryMode: aws.RetryModeAdaptive, + expectClientMaxAttempts: 10, + expectOpMaxAttempts: 2, + }, + "custom op no change max attempts": { + retryMode: aws.RetryModeAdaptive, + retryMaxAttempts: 10, + opRetryMaxAttempts: aws.Int(10), + expectClientRetryMode: aws.RetryModeAdaptive, + expectClientMaxAttempts: 10, + expectOpMaxAttempts: 10, + }, + "custom op 0 max attempts": { + retryMode: aws.RetryModeAdaptive, + retryMaxAttempts: 10, + opRetryMaxAttempts: aws.Int(0), + expectClientRetryMode: aws.RetryModeAdaptive, + expectClientMaxAttempts: 10, + expectOpMaxAttempts: 10, + }, + } + + for name, c := range cases { + t.Run(name, func(t *testing.T) { + client := NewFromConfig(aws.Config{ + DefaultsMode: c.defaultsMode, + Retryer: func() func() aws.Retryer { + if c.retryer == nil { + return nil + } + + return func() aws.Retryer { return c.retryer } + }(), + HTTPClient: nopClient, + RetryMaxAttempts: c.retryMaxAttempts, + RetryMode: c.retryMode, + }, func(o *Options) { + if o.Retryer == nil { + t.Errorf("retryer must not be nil in functional options") + } + }) + + if e, a := c.expectClientRetryMode, client.options.RetryMode; e != a { + t.Errorf("expect %v retry mode, got %v", e, a) + } + if e, a := c.expectClientMaxAttempts, client.options.Retryer.MaxAttempts(); e != a { + t.Errorf("expect %v max attempts, got %v", e, a) + } + + _, _, err := client.invokeOperation(context.Background(), "mockOperation", struct{}{}, + []func(*Options){ + func(o *Options) { + if c.opRetryMaxAttempts == nil { + return + } + o.RetryMaxAttempts = *c.opRetryMaxAttempts + }, + }, + func(s *middleware.Stack, o Options) error { + s.Initialize.Clear() + s.Serialize.Clear() + s.Build.Clear() + s.Finalize.Clear() + s.Deserialize.Clear() + + if e, a := c.expectOpMaxAttempts, o.Retryer.MaxAttempts(); e != a { + t.Errorf("expect %v op max attempts, got %v", e, a) + } + return nil + }) + if err != nil { + t.Fatalf("expect no operation error, got %v", err) + } + }) + } +} diff --git a/service/marketplacereporting/api_op_GetBuyerDashboard.go b/service/marketplacereporting/api_op_GetBuyerDashboard.go new file mode 100644 index 00000000000..f37fe30348b --- /dev/null +++ b/service/marketplacereporting/api_op_GetBuyerDashboard.go @@ -0,0 +1,190 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting + +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" +) + +// Generates an embedding URL for an Amazon QuickSight dashboard for an anonymous +// user. +// +// The following rules apply to a generated URL: +// +// - It contains a temporary bearer token, valid for 5 minutes after it is +// generated. Once redeemed within that period, it cannot be re-used again. +// +// - It has a session lifetime of one hour. The 5-minute validity period runs +// separately from the session lifetime. +func (c *Client) GetBuyerDashboard(ctx context.Context, params *GetBuyerDashboardInput, optFns ...func(*Options)) (*GetBuyerDashboardOutput, error) { + if params == nil { + params = &GetBuyerDashboardInput{} + } + + result, metadata, err := c.invokeOperation(ctx, "GetBuyerDashboard", params, optFns, c.addOperationGetBuyerDashboardMiddlewares) + if err != nil { + return nil, err + } + + out := result.(*GetBuyerDashboardOutput) + out.ResultMetadata = metadata + return out, nil +} + +type GetBuyerDashboardInput struct { + + // The ARN of the requested dashboard. + // + // This member is required. + DashboardIdentifier *string + + // Fully qualified domains that you add to the allow list for access to the + // generated URL that is then embedded. You can list up to two domains or + // subdomains in each API call. To include all subdomains under a specific domain, + // use * . For example, https://*.amazon.com includes all subdomains under + // https://aws.amazon.com . + // + // This member is required. + EmbeddingDomains []string + + noSmithyDocumentSerde +} + +type GetBuyerDashboardOutput struct { + + // The ARN of the returned dashboard. + // + // This member is required. + DashboardIdentifier *string + + // The dashboard's embedding URL. + // + // This member is required. + EmbedUrl *string + + // The fully qualified domains specified in the request. The domains enable access + // to the generated URL that is then embedded. You can list up to two domains or + // subdomains in each API call. To include all subdomains under a specific domain, + // use * . For example, https://*.amazon.com includes all subdomains under + // https://aws.amazon.com . + // + // This member is required. + EmbeddingDomains []string + + // Metadata pertaining to the operation's result. + ResultMetadata middleware.Metadata + + noSmithyDocumentSerde +} + +func (c *Client) addOperationGetBuyerDashboardMiddlewares(stack *middleware.Stack, options Options) (err error) { + if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil { + return err + } + err = stack.Serialize.Add(&awsRestjson1_serializeOpGetBuyerDashboard{}, middleware.After) + if err != nil { + return err + } + err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetBuyerDashboard{}, middleware.After) + if err != nil { + return err + } + if err := addProtocolFinalizerMiddlewares(stack, options, "GetBuyerDashboard"); err != nil { + return fmt.Errorf("add protocol finalizers: %v", err) + } + + if err = addlegacyEndpointContextSetter(stack, options); err != nil { + return err + } + if err = addSetLoggerMiddleware(stack, options); err != nil { + return err + } + if err = addClientRequestID(stack); err != nil { + return err + } + if err = addComputeContentLength(stack); err != nil { + return err + } + if err = addResolveEndpointMiddleware(stack, options); err != nil { + return err + } + if err = addComputePayloadSHA256(stack); err != nil { + return err + } + if err = addRetry(stack, options); err != nil { + return err + } + if err = addRawResponseToMetadata(stack); err != nil { + return err + } + if err = addRecordResponseTiming(stack); err != nil { + return err + } + if err = addSpanRetryLoop(stack, options); err != nil { + return err + } + if err = addClientUserAgent(stack, options); err != nil { + return err + } + if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { + return err + } + if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil { + return err + } + if err = addTimeOffsetBuild(stack, c); err != nil { + return err + } + if err = addUserAgentRetryMode(stack, options); err != nil { + return err + } + if err = addOpGetBuyerDashboardValidationMiddleware(stack); err != nil { + return err + } + if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetBuyerDashboard(options.Region), middleware.Before); err != nil { + return err + } + if err = addRecursionDetection(stack); err != nil { + return err + } + if err = addRequestIDRetrieverMiddleware(stack); err != nil { + return err + } + if err = addResponseErrorMiddleware(stack); err != nil { + return err + } + if err = addRequestResponseLogging(stack, options); err != nil { + return err + } + if err = addDisableHTTPSMiddleware(stack, options); err != nil { + return err + } + if err = addSpanInitializeStart(stack); err != nil { + return err + } + if err = addSpanInitializeEnd(stack); err != nil { + return err + } + if err = addSpanBuildRequestStart(stack); err != nil { + return err + } + if err = addSpanBuildRequestEnd(stack); err != nil { + return err + } + return nil +} + +func newServiceMetadataMiddleware_opGetBuyerDashboard(region string) *awsmiddleware.RegisterServiceMetadata { + return &awsmiddleware.RegisterServiceMetadata{ + Region: region, + ServiceID: ServiceID, + OperationName: "GetBuyerDashboard", + } +} diff --git a/service/marketplacereporting/auth.go b/service/marketplacereporting/auth.go new file mode 100644 index 00000000000..a32054cee77 --- /dev/null +++ b/service/marketplacereporting/auth.go @@ -0,0 +1,313 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting + +import ( + "context" + "fmt" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + smithy "github.com/aws/smithy-go" + smithyauth "github.com/aws/smithy-go/auth" + "github.com/aws/smithy-go/metrics" + "github.com/aws/smithy-go/middleware" + "github.com/aws/smithy-go/tracing" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +func bindAuthParamsRegion(_ interface{}, params *AuthResolverParameters, _ interface{}, options Options) { + params.Region = options.Region +} + +type setLegacyContextSigningOptionsMiddleware struct { +} + +func (*setLegacyContextSigningOptionsMiddleware) ID() string { + return "setLegacyContextSigningOptions" +} + +func (m *setLegacyContextSigningOptionsMiddleware) HandleFinalize(ctx context.Context, in middleware.FinalizeInput, next middleware.FinalizeHandler) ( + out middleware.FinalizeOutput, metadata middleware.Metadata, err error, +) { + rscheme := getResolvedAuthScheme(ctx) + schemeID := rscheme.Scheme.SchemeID() + + if sn := awsmiddleware.GetSigningName(ctx); sn != "" { + if schemeID == "aws.auth#sigv4" { + smithyhttp.SetSigV4SigningName(&rscheme.SignerProperties, sn) + } else if schemeID == "aws.auth#sigv4a" { + smithyhttp.SetSigV4ASigningName(&rscheme.SignerProperties, sn) + } + } + + if sr := awsmiddleware.GetSigningRegion(ctx); sr != "" { + if schemeID == "aws.auth#sigv4" { + smithyhttp.SetSigV4SigningRegion(&rscheme.SignerProperties, sr) + } else if schemeID == "aws.auth#sigv4a" { + smithyhttp.SetSigV4ASigningRegions(&rscheme.SignerProperties, []string{sr}) + } + } + + return next.HandleFinalize(ctx, in) +} + +func addSetLegacyContextSigningOptionsMiddleware(stack *middleware.Stack) error { + return stack.Finalize.Insert(&setLegacyContextSigningOptionsMiddleware{}, "Signing", middleware.Before) +} + +type withAnonymous struct { + resolver AuthSchemeResolver +} + +var _ AuthSchemeResolver = (*withAnonymous)(nil) + +func (v *withAnonymous) ResolveAuthSchemes(ctx context.Context, params *AuthResolverParameters) ([]*smithyauth.Option, error) { + opts, err := v.resolver.ResolveAuthSchemes(ctx, params) + if err != nil { + return nil, err + } + + opts = append(opts, &smithyauth.Option{ + SchemeID: smithyauth.SchemeIDAnonymous, + }) + return opts, nil +} + +func wrapWithAnonymousAuth(options *Options) { + if _, ok := options.AuthSchemeResolver.(*defaultAuthSchemeResolver); !ok { + return + } + + options.AuthSchemeResolver = &withAnonymous{ + resolver: options.AuthSchemeResolver, + } +} + +// AuthResolverParameters contains the set of inputs necessary for auth scheme +// resolution. +type AuthResolverParameters struct { + // The name of the operation being invoked. + Operation string + + // The region in which the operation is being invoked. + Region string +} + +func bindAuthResolverParams(ctx context.Context, operation string, input interface{}, options Options) *AuthResolverParameters { + params := &AuthResolverParameters{ + Operation: operation, + } + + bindAuthParamsRegion(ctx, params, input, options) + + return params +} + +// AuthSchemeResolver returns a set of possible authentication options for an +// operation. +type AuthSchemeResolver interface { + ResolveAuthSchemes(context.Context, *AuthResolverParameters) ([]*smithyauth.Option, error) +} + +type defaultAuthSchemeResolver struct{} + +var _ AuthSchemeResolver = (*defaultAuthSchemeResolver)(nil) + +func (*defaultAuthSchemeResolver) ResolveAuthSchemes(ctx context.Context, params *AuthResolverParameters) ([]*smithyauth.Option, error) { + if overrides, ok := operationAuthOptions[params.Operation]; ok { + return overrides(params), nil + } + return serviceAuthOptions(params), nil +} + +var operationAuthOptions = map[string]func(*AuthResolverParameters) []*smithyauth.Option{} + +func serviceAuthOptions(params *AuthResolverParameters) []*smithyauth.Option { + return []*smithyauth.Option{ + { + SchemeID: smithyauth.SchemeIDSigV4, + SignerProperties: func() smithy.Properties { + var props smithy.Properties + smithyhttp.SetSigV4SigningName(&props, "aws-marketplace") + smithyhttp.SetSigV4SigningRegion(&props, params.Region) + return props + }(), + }, + } +} + +type resolveAuthSchemeMiddleware struct { + operation string + options Options +} + +func (*resolveAuthSchemeMiddleware) ID() string { + return "ResolveAuthScheme" +} + +func (m *resolveAuthSchemeMiddleware) HandleFinalize(ctx context.Context, in middleware.FinalizeInput, next middleware.FinalizeHandler) ( + out middleware.FinalizeOutput, metadata middleware.Metadata, err error, +) { + _, span := tracing.StartSpan(ctx, "ResolveAuthScheme") + defer span.End() + + params := bindAuthResolverParams(ctx, m.operation, getOperationInput(ctx), m.options) + options, err := m.options.AuthSchemeResolver.ResolveAuthSchemes(ctx, params) + if err != nil { + return out, metadata, fmt.Errorf("resolve auth scheme: %w", err) + } + + scheme, ok := m.selectScheme(options) + if !ok { + return out, metadata, fmt.Errorf("could not select an auth scheme") + } + + ctx = setResolvedAuthScheme(ctx, scheme) + + span.SetProperty("auth.scheme_id", scheme.Scheme.SchemeID()) + span.End() + return next.HandleFinalize(ctx, in) +} + +func (m *resolveAuthSchemeMiddleware) selectScheme(options []*smithyauth.Option) (*resolvedAuthScheme, bool) { + for _, option := range options { + if option.SchemeID == smithyauth.SchemeIDAnonymous { + return newResolvedAuthScheme(smithyhttp.NewAnonymousScheme(), option), true + } + + for _, scheme := range m.options.AuthSchemes { + if scheme.SchemeID() != option.SchemeID { + continue + } + + if scheme.IdentityResolver(m.options) != nil { + return newResolvedAuthScheme(scheme, option), true + } + } + } + + return nil, false +} + +type resolvedAuthSchemeKey struct{} + +type resolvedAuthScheme struct { + Scheme smithyhttp.AuthScheme + IdentityProperties smithy.Properties + SignerProperties smithy.Properties +} + +func newResolvedAuthScheme(scheme smithyhttp.AuthScheme, option *smithyauth.Option) *resolvedAuthScheme { + return &resolvedAuthScheme{ + Scheme: scheme, + IdentityProperties: option.IdentityProperties, + SignerProperties: option.SignerProperties, + } +} + +func setResolvedAuthScheme(ctx context.Context, scheme *resolvedAuthScheme) context.Context { + return middleware.WithStackValue(ctx, resolvedAuthSchemeKey{}, scheme) +} + +func getResolvedAuthScheme(ctx context.Context) *resolvedAuthScheme { + v, _ := middleware.GetStackValue(ctx, resolvedAuthSchemeKey{}).(*resolvedAuthScheme) + return v +} + +type getIdentityMiddleware struct { + options Options +} + +func (*getIdentityMiddleware) ID() string { + return "GetIdentity" +} + +func (m *getIdentityMiddleware) HandleFinalize(ctx context.Context, in middleware.FinalizeInput, next middleware.FinalizeHandler) ( + out middleware.FinalizeOutput, metadata middleware.Metadata, err error, +) { + innerCtx, span := tracing.StartSpan(ctx, "GetIdentity") + defer span.End() + + rscheme := getResolvedAuthScheme(innerCtx) + if rscheme == nil { + return out, metadata, fmt.Errorf("no resolved auth scheme") + } + + resolver := rscheme.Scheme.IdentityResolver(m.options) + if resolver == nil { + return out, metadata, fmt.Errorf("no identity resolver") + } + + identity, err := timeOperationMetric(ctx, "client.call.resolve_identity_duration", + func() (smithyauth.Identity, error) { + return resolver.GetIdentity(innerCtx, rscheme.IdentityProperties) + }, + func(o *metrics.RecordMetricOptions) { + o.Properties.Set("auth.scheme_id", rscheme.Scheme.SchemeID()) + }) + if err != nil { + return out, metadata, fmt.Errorf("get identity: %w", err) + } + + ctx = setIdentity(ctx, identity) + + span.End() + return next.HandleFinalize(ctx, in) +} + +type identityKey struct{} + +func setIdentity(ctx context.Context, identity smithyauth.Identity) context.Context { + return middleware.WithStackValue(ctx, identityKey{}, identity) +} + +func getIdentity(ctx context.Context) smithyauth.Identity { + v, _ := middleware.GetStackValue(ctx, identityKey{}).(smithyauth.Identity) + return v +} + +type signRequestMiddleware struct { + options Options +} + +func (*signRequestMiddleware) ID() string { + return "Signing" +} + +func (m *signRequestMiddleware) HandleFinalize(ctx context.Context, in middleware.FinalizeInput, next middleware.FinalizeHandler) ( + out middleware.FinalizeOutput, metadata middleware.Metadata, err error, +) { + _, span := tracing.StartSpan(ctx, "SignRequest") + defer span.End() + + req, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, fmt.Errorf("unexpected transport type %T", in.Request) + } + + rscheme := getResolvedAuthScheme(ctx) + if rscheme == nil { + return out, metadata, fmt.Errorf("no resolved auth scheme") + } + + identity := getIdentity(ctx) + if identity == nil { + return out, metadata, fmt.Errorf("no identity") + } + + signer := rscheme.Scheme.Signer() + if signer == nil { + return out, metadata, fmt.Errorf("no signer") + } + + _, err = timeOperationMetric(ctx, "client.call.signing_duration", func() (any, error) { + return nil, signer.SignRequest(ctx, req, identity, rscheme.SignerProperties) + }, func(o *metrics.RecordMetricOptions) { + o.Properties.Set("auth.scheme_id", rscheme.Scheme.SchemeID()) + }) + if err != nil { + return out, metadata, fmt.Errorf("sign request: %w", err) + } + + span.End() + return next.HandleFinalize(ctx, in) +} diff --git a/service/marketplacereporting/deserializers.go b/service/marketplacereporting/deserializers.go new file mode 100644 index 00000000000..76999e59728 --- /dev/null +++ b/service/marketplacereporting/deserializers.go @@ -0,0 +1,549 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting + +import ( + "bytes" + "context" + "encoding/json" + "fmt" + "github.com/aws/aws-sdk-go-v2/aws/protocol/restjson" + "github.com/aws/aws-sdk-go-v2/service/marketplacereporting/types" + smithy "github.com/aws/smithy-go" + smithyio "github.com/aws/smithy-go/io" + "github.com/aws/smithy-go/middleware" + "github.com/aws/smithy-go/ptr" + smithytime "github.com/aws/smithy-go/time" + "github.com/aws/smithy-go/tracing" + smithyhttp "github.com/aws/smithy-go/transport/http" + "io" + "strings" + "time" +) + +func deserializeS3Expires(v string) (*time.Time, error) { + t, err := smithytime.ParseHTTPDate(v) + if err != nil { + return nil, nil + } + return &t, nil +} + +type awsRestjson1_deserializeOpGetBuyerDashboard struct { +} + +func (*awsRestjson1_deserializeOpGetBuyerDashboard) ID() string { + return "OperationDeserializer" +} + +func (m *awsRestjson1_deserializeOpGetBuyerDashboard) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) ( + out middleware.DeserializeOutput, metadata middleware.Metadata, err error, +) { + out, metadata, err = next.HandleDeserialize(ctx, in) + if err != nil { + return out, metadata, err + } + + _, span := tracing.StartSpan(ctx, "OperationDeserializer") + endTimer := startMetricTimer(ctx, "client.call.deserialization_duration") + defer endTimer() + defer span.End() + response, ok := out.RawResponse.(*smithyhttp.Response) + if !ok { + return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)} + } + + if response.StatusCode < 200 || response.StatusCode >= 300 { + return out, metadata, awsRestjson1_deserializeOpErrorGetBuyerDashboard(response, &metadata) + } + output := &GetBuyerDashboardOutput{} + 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_deserializeOpDocumentGetBuyerDashboardOutput(&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(), + } + } + + span.End() + return out, metadata, err +} + +func awsRestjson1_deserializeOpErrorGetBuyerDashboard(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("BadRequestException", errorCode): + return awsRestjson1_deserializeErrorBadRequestException(response, errorBody) + + case strings.EqualFold("InternalServerException", errorCode): + return awsRestjson1_deserializeErrorInternalServerException(response, errorBody) + + case strings.EqualFold("UnauthorizedException", errorCode): + return awsRestjson1_deserializeErrorUnauthorizedException(response, errorBody) + + default: + genericError := &smithy.GenericAPIError{ + Code: errorCode, + Message: errorMessage, + } + return genericError + + } +} + +func awsRestjson1_deserializeOpDocumentGetBuyerDashboardOutput(v **GetBuyerDashboardOutput, 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 *GetBuyerDashboardOutput + if *v == nil { + sv = &GetBuyerDashboardOutput{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "dashboardIdentifier": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected DashboardIdentifier to be of type string, got %T instead", value) + } + sv.DashboardIdentifier = ptr.String(jtv) + } + + case "embeddingDomains": + if err := awsRestjson1_deserializeDocumentEmbeddingDomains(&sv.EmbeddingDomains, value); err != nil { + return err + } + + case "embedUrl": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.EmbedUrl = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeErrorAccessDeniedException(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.AccessDeniedException{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, 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 err + } + + err := awsRestjson1_deserializeDocumentAccessDeniedException(&output, shape) + + 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) + + return output +} + +func awsRestjson1_deserializeErrorBadRequestException(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.BadRequestException{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, 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 err + } + + err := awsRestjson1_deserializeDocumentBadRequestException(&output, shape) + + 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) + + return output +} + +func awsRestjson1_deserializeErrorInternalServerException(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.InternalServerException{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, 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 err + } + + err := awsRestjson1_deserializeDocumentInternalServerException(&output, shape) + + 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) + + return output +} + +func awsRestjson1_deserializeErrorUnauthorizedException(response *smithyhttp.Response, errorBody *bytes.Reader) error { + output := &types.UnauthorizedException{} + var buff [1024]byte + ringBuffer := smithyio.NewRingBuffer(buff[:]) + + body := io.TeeReader(errorBody, 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 err + } + + err := awsRestjson1_deserializeDocumentUnauthorizedException(&output, shape) + + 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) + + return output +} + +func awsRestjson1_deserializeDocumentAccessDeniedException(v **types.AccessDeniedException, 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.AccessDeniedException + if *v == nil { + sv = &types.AccessDeniedException{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "message": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Message = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentBadRequestException(v **types.BadRequestException, 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.BadRequestException + if *v == nil { + sv = &types.BadRequestException{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "message": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Message = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentEmbeddingDomains(v *[]string, value interface{}) error { + if v == nil { + return fmt.Errorf("unexpected nil of type %T", v) + } + if value == nil { + return nil + } + + shape, ok := value.([]interface{}) + if !ok { + return fmt.Errorf("unexpected JSON type %v", value) + } + + var cv []string + if *v == nil { + cv = []string{} + } else { + cv = *v + } + + for _, value := range shape { + var col string + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected EmbeddingDomain to be of type string, got %T instead", value) + } + col = jtv + } + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsRestjson1_deserializeDocumentInternalServerException(v **types.InternalServerException, 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.InternalServerException + if *v == nil { + sv = &types.InternalServerException{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "message": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Message = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentUnauthorizedException(v **types.UnauthorizedException, 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.UnauthorizedException + if *v == nil { + sv = &types.UnauthorizedException{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "message": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected String to be of type string, got %T instead", value) + } + sv.Message = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} diff --git a/service/marketplacereporting/doc.go b/service/marketplacereporting/doc.go new file mode 100644 index 00000000000..1d8802d22dc --- /dev/null +++ b/service/marketplacereporting/doc.go @@ -0,0 +1,52 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +// Package marketplacereporting provides the API client, operations, and parameter +// types for AWS Marketplace Reporting Service. +// +// The AWS Marketplace GetBuyerDashboard API enables you to get a procurement +// insights dashboard programmatically. The API gets the agreement and cost +// analysis dashboards with data for all of the Amazon Web Services accounts in +// your Amazon Web Services organization. +// +// To use the API, you must complete the following prerequisites: +// +// - Enable all features for your organization. For more information, see [Enabling all features for an organization with Amazon Web Services Organizations], in +// the Amazon Web Services Organizations User Guide. +// +// - Call the service as the Amazon Web Services Organizations management +// account or an account registered as a delegated administrator for the +// procurement insights service. Users without management or delegated +// administrator accounts can use the dashboard, but they only see data for their +// accounts. +// +// For more information about management accounts, see [Tutorial: Creating and configuring an organization]and [Managing the management account with Amazon Web Services Organizations], both in the Amazon +// +// Web Services Organizations User Guide. +// +// For more information about delegated administrators, see [Using delegated administrators], in the AWS +// +// Marketplace Buyer Guide. +// +// - Create an IAM policy that enables the aws-marketplace:GetBuyerDashboard and +// organizations:DescribeOrganization permissions. In addition, the management +// account requires the organizations:EnableAWSServiceAccess and +// iam:CreateServiceLinkedRole permissions to create For more information about +// creating the policy, see [Policies and permissions in Amazon Web Services Identity and Access Management], in the IAM User Guide. +// +// - Use the Amazon Web Services Marketplace console to create the +// AWSServiceRoleForProcurementInsightsPolicy service-linked role. The role +// enables AWS Marketplace procurement visibility integration. The management +// account requires an IAM policy with the organizations:EnableAWSServiceAccess +// and iam:CreateServiceLinkedRole permissions to create the service-linked role +// and enable the service access. For more information, see [Granting access to Amazon Web Services Organizations], and [Service-linked role to share procurement data], in the +// Amazon Web Services Marketplace Buyer Guide. +// +// [Enabling all features for an organization with Amazon Web Services Organizations]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_support-all-features.html +// [Using delegated administrators]: https://docs.aws.amazon.com/marketplace/latest/buyerguide/management-delegates.html +// [Tutorial: Creating and configuring an organization]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_tutorials_basic.html +// [Managing the management account with Amazon Web Services Organizations]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs-manage_accounts_management.html +// +// [Granting access to Amazon Web Services Organizations]: https://docs.aws.amazon.com/marketplace/latest/buyerguide/orgs-access-slr.html +// [Policies and permissions in Amazon Web Services Identity and Access Management]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html +// [Service-linked role to share procurement data]: https://docs.aws.amazon.com/marketplace/latest/buyerguide/buyer-service-linked-role-procurement.html +package marketplacereporting diff --git a/service/marketplacereporting/endpoints.go b/service/marketplacereporting/endpoints.go new file mode 100644 index 00000000000..30e4a705ed4 --- /dev/null +++ b/service/marketplacereporting/endpoints.go @@ -0,0 +1,537 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting + +import ( + "context" + "errors" + "fmt" + "github.com/aws/aws-sdk-go-v2/aws" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + internalConfig "github.com/aws/aws-sdk-go-v2/internal/configsources" + "github.com/aws/aws-sdk-go-v2/internal/endpoints" + "github.com/aws/aws-sdk-go-v2/internal/endpoints/awsrulesfn" + internalendpoints "github.com/aws/aws-sdk-go-v2/service/marketplacereporting/internal/endpoints" + smithyauth "github.com/aws/smithy-go/auth" + smithyendpoints "github.com/aws/smithy-go/endpoints" + "github.com/aws/smithy-go/middleware" + "github.com/aws/smithy-go/ptr" + "github.com/aws/smithy-go/tracing" + smithyhttp "github.com/aws/smithy-go/transport/http" + "net/http" + "net/url" + "os" + "strings" +) + +// EndpointResolverOptions is the service endpoint resolver options +type EndpointResolverOptions = internalendpoints.Options + +// EndpointResolver interface for resolving service endpoints. +type EndpointResolver interface { + ResolveEndpoint(region string, options EndpointResolverOptions) (aws.Endpoint, error) +} + +var _ EndpointResolver = &internalendpoints.Resolver{} + +// NewDefaultEndpointResolver constructs a new service endpoint resolver +func NewDefaultEndpointResolver() *internalendpoints.Resolver { + return internalendpoints.New() +} + +// EndpointResolverFunc is a helper utility that wraps a function so it satisfies +// the EndpointResolver interface. This is useful when you want to add additional +// endpoint resolving logic, or stub out specific endpoints with custom values. +type EndpointResolverFunc func(region string, options EndpointResolverOptions) (aws.Endpoint, error) + +func (fn EndpointResolverFunc) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error) { + return fn(region, options) +} + +// EndpointResolverFromURL returns an EndpointResolver configured using the +// provided endpoint url. By default, the resolved endpoint resolver uses the +// client region as signing region, and the endpoint source is set to +// EndpointSourceCustom.You can provide functional options to configure endpoint +// values for the resolved endpoint. +func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver { + e := aws.Endpoint{URL: url, Source: aws.EndpointSourceCustom} + for _, fn := range optFns { + fn(&e) + } + + return EndpointResolverFunc( + func(region string, options EndpointResolverOptions) (aws.Endpoint, error) { + if len(e.SigningRegion) == 0 { + e.SigningRegion = region + } + return e, nil + }, + ) +} + +type ResolveEndpoint struct { + Resolver EndpointResolver + Options EndpointResolverOptions +} + +func (*ResolveEndpoint) ID() string { + return "ResolveEndpoint" +} + +func (m *ResolveEndpoint) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + if !awsmiddleware.GetRequiresLegacyEndpoints(ctx) { + return next.HandleSerialize(ctx, in) + } + + req, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, fmt.Errorf("unknown transport type %T", in.Request) + } + + if m.Resolver == nil { + return out, metadata, fmt.Errorf("expected endpoint resolver to not be nil") + } + + eo := m.Options + eo.Logger = middleware.GetLogger(ctx) + + var endpoint aws.Endpoint + endpoint, err = m.Resolver.ResolveEndpoint(awsmiddleware.GetRegion(ctx), eo) + if err != nil { + nf := (&aws.EndpointNotFoundError{}) + if errors.As(err, &nf) { + ctx = awsmiddleware.SetRequiresLegacyEndpoints(ctx, false) + return next.HandleSerialize(ctx, in) + } + return out, metadata, fmt.Errorf("failed to resolve service endpoint, %w", err) + } + + req.URL, err = url.Parse(endpoint.URL) + if err != nil { + return out, metadata, fmt.Errorf("failed to parse endpoint URL: %w", err) + } + + if len(awsmiddleware.GetSigningName(ctx)) == 0 { + signingName := endpoint.SigningName + if len(signingName) == 0 { + signingName = "aws-marketplace" + } + ctx = awsmiddleware.SetSigningName(ctx, signingName) + } + ctx = awsmiddleware.SetEndpointSource(ctx, endpoint.Source) + ctx = smithyhttp.SetHostnameImmutable(ctx, endpoint.HostnameImmutable) + ctx = awsmiddleware.SetSigningRegion(ctx, endpoint.SigningRegion) + ctx = awsmiddleware.SetPartitionID(ctx, endpoint.PartitionID) + return next.HandleSerialize(ctx, in) +} +func addResolveEndpointMiddleware(stack *middleware.Stack, o Options) error { + return stack.Serialize.Insert(&ResolveEndpoint{ + Resolver: o.EndpointResolver, + Options: o.EndpointOptions, + }, "OperationSerializer", middleware.Before) +} + +func removeResolveEndpointMiddleware(stack *middleware.Stack) error { + _, err := stack.Serialize.Remove((&ResolveEndpoint{}).ID()) + return err +} + +type wrappedEndpointResolver struct { + awsResolver aws.EndpointResolverWithOptions +} + +func (w *wrappedEndpointResolver) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error) { + return w.awsResolver.ResolveEndpoint(ServiceID, region, options) +} + +type awsEndpointResolverAdaptor func(service, region string) (aws.Endpoint, error) + +func (a awsEndpointResolverAdaptor) ResolveEndpoint(service, region string, options ...interface{}) (aws.Endpoint, error) { + return a(service, region) +} + +var _ aws.EndpointResolverWithOptions = awsEndpointResolverAdaptor(nil) + +// withEndpointResolver returns an aws.EndpointResolverWithOptions that first delegates endpoint resolution to the awsResolver. +// If awsResolver returns aws.EndpointNotFoundError error, the v1 resolver middleware will swallow the error, +// and set an appropriate context flag such that fallback will occur when EndpointResolverV2 is invoked +// via its middleware. +// +// If another error (besides aws.EndpointNotFoundError) is returned, then that error will be propagated. +func withEndpointResolver(awsResolver aws.EndpointResolver, awsResolverWithOptions aws.EndpointResolverWithOptions) EndpointResolver { + var resolver aws.EndpointResolverWithOptions + + if awsResolverWithOptions != nil { + resolver = awsResolverWithOptions + } else if awsResolver != nil { + resolver = awsEndpointResolverAdaptor(awsResolver.ResolveEndpoint) + } + + return &wrappedEndpointResolver{ + awsResolver: resolver, + } +} + +func finalizeClientEndpointResolverOptions(options *Options) { + options.EndpointOptions.LogDeprecated = options.ClientLogMode.IsDeprecatedUsage() + + if len(options.EndpointOptions.ResolvedRegion) == 0 { + const fipsInfix = "-fips-" + const fipsPrefix = "fips-" + const fipsSuffix = "-fips" + + if strings.Contains(options.Region, fipsInfix) || + strings.Contains(options.Region, fipsPrefix) || + strings.Contains(options.Region, fipsSuffix) { + options.EndpointOptions.ResolvedRegion = strings.ReplaceAll(strings.ReplaceAll(strings.ReplaceAll( + options.Region, fipsInfix, "-"), fipsPrefix, ""), fipsSuffix, "") + options.EndpointOptions.UseFIPSEndpoint = aws.FIPSEndpointStateEnabled + } + } + +} + +func resolveEndpointResolverV2(options *Options) { + if options.EndpointResolverV2 == nil { + options.EndpointResolverV2 = NewDefaultEndpointResolverV2() + } +} + +func resolveBaseEndpoint(cfg aws.Config, o *Options) { + if cfg.BaseEndpoint != nil { + o.BaseEndpoint = cfg.BaseEndpoint + } + + _, g := os.LookupEnv("AWS_ENDPOINT_URL") + _, s := os.LookupEnv("AWS_ENDPOINT_URL_MARKETPLACE_REPORTING") + + if g && !s { + return + } + + value, found, err := internalConfig.ResolveServiceBaseEndpoint(context.Background(), "Marketplace Reporting", cfg.ConfigSources) + if found && err == nil { + o.BaseEndpoint = &value + } +} + +func bindRegion(region string) *string { + if region == "" { + return nil + } + return aws.String(endpoints.MapFIPSRegion(region)) +} + +// EndpointParameters provides the parameters that influence how endpoints are +// resolved. +type EndpointParameters struct { + // The AWS region used to dispatch the request. + // + // Parameter is + // required. + // + // AWS::Region + Region *string + + // When true, use the dual-stack endpoint. If the configured endpoint does not + // support dual-stack, dispatching the request MAY return an error. + // + // Defaults to + // false if no value is provided. + // + // AWS::UseDualStack + UseDualStack *bool + + // When true, send this request to the FIPS-compliant regional endpoint. If the + // configured endpoint does not have a FIPS compliant endpoint, dispatching the + // request will return an error. + // + // Defaults to false if no value is + // provided. + // + // AWS::UseFIPS + UseFIPS *bool + + // Override the endpoint used to send this request + // + // Parameter is + // required. + // + // SDK::Endpoint + Endpoint *string +} + +// ValidateRequired validates required parameters are set. +func (p EndpointParameters) ValidateRequired() error { + if p.UseDualStack == nil { + return fmt.Errorf("parameter UseDualStack is required") + } + + if p.UseFIPS == nil { + return fmt.Errorf("parameter UseFIPS is required") + } + + return nil +} + +// WithDefaults returns a shallow copy of EndpointParameterswith default values +// applied to members where applicable. +func (p EndpointParameters) WithDefaults() EndpointParameters { + if p.UseDualStack == nil { + p.UseDualStack = ptr.Bool(false) + } + + if p.UseFIPS == nil { + p.UseFIPS = ptr.Bool(false) + } + return p +} + +type stringSlice []string + +func (s stringSlice) Get(i int) *string { + if i < 0 || i >= len(s) { + return nil + } + + v := s[i] + return &v +} + +// EndpointResolverV2 provides the interface for resolving service endpoints. +type EndpointResolverV2 interface { + // ResolveEndpoint attempts to resolve the endpoint with the provided options, + // returning the endpoint if found. Otherwise an error is returned. + ResolveEndpoint(ctx context.Context, params EndpointParameters) ( + smithyendpoints.Endpoint, error, + ) +} + +// resolver provides the implementation for resolving endpoints. +type resolver struct{} + +func NewDefaultEndpointResolverV2() EndpointResolverV2 { + return &resolver{} +} + +// ResolveEndpoint attempts to resolve the endpoint with the provided options, +// returning the endpoint if found. Otherwise an error is returned. +func (r *resolver) ResolveEndpoint( + ctx context.Context, params EndpointParameters, +) ( + endpoint smithyendpoints.Endpoint, err error, +) { + params = params.WithDefaults() + if err = params.ValidateRequired(); err != nil { + return endpoint, fmt.Errorf("endpoint parameters are not valid, %w", err) + } + _UseDualStack := *params.UseDualStack + _UseFIPS := *params.UseFIPS + + if exprVal := params.Endpoint; exprVal != nil { + _Endpoint := *exprVal + _ = _Endpoint + if _UseFIPS == true { + return endpoint, fmt.Errorf("endpoint rule error, %s", "Invalid Configuration: FIPS and custom endpoint are not supported") + } + if _UseDualStack == true { + return endpoint, fmt.Errorf("endpoint rule error, %s", "Invalid Configuration: Dualstack and custom endpoint are not supported") + } + uriString := _Endpoint + + uri, err := url.Parse(uriString) + if err != nil { + return endpoint, fmt.Errorf("Failed to parse uri: %s", uriString) + } + + return smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + }, nil + } + if exprVal := params.Region; exprVal != nil { + _Region := *exprVal + _ = _Region + if exprVal := awsrulesfn.GetPartition(_Region); exprVal != nil { + _PartitionResult := *exprVal + _ = _PartitionResult + if _UseFIPS == true { + if _UseDualStack == true { + if true == _PartitionResult.SupportsFIPS { + if true == _PartitionResult.SupportsDualStack { + uriString := func() string { + var out strings.Builder + out.WriteString("https://reporting-marketplace-fips.") + out.WriteString(_Region) + out.WriteString(".") + out.WriteString(_PartitionResult.DualStackDnsSuffix) + return out.String() + }() + + uri, err := url.Parse(uriString) + if err != nil { + return endpoint, fmt.Errorf("Failed to parse uri: %s", uriString) + } + + return smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + }, nil + } + } + return endpoint, fmt.Errorf("endpoint rule error, %s", "FIPS and DualStack are enabled, but this partition does not support one or both") + } + } + if _UseFIPS == true { + if _PartitionResult.SupportsFIPS == true { + uriString := func() string { + var out strings.Builder + out.WriteString("https://reporting-marketplace-fips.") + out.WriteString(_Region) + out.WriteString(".") + out.WriteString(_PartitionResult.DnsSuffix) + return out.String() + }() + + uri, err := url.Parse(uriString) + if err != nil { + return endpoint, fmt.Errorf("Failed to parse uri: %s", uriString) + } + + return smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + }, nil + } + return endpoint, fmt.Errorf("endpoint rule error, %s", "FIPS is enabled but this partition does not support FIPS") + } + if _UseDualStack == true { + if true == _PartitionResult.SupportsDualStack { + uriString := func() string { + var out strings.Builder + out.WriteString("https://reporting-marketplace.") + out.WriteString(_Region) + out.WriteString(".") + out.WriteString(_PartitionResult.DualStackDnsSuffix) + return out.String() + }() + + uri, err := url.Parse(uriString) + if err != nil { + return endpoint, fmt.Errorf("Failed to parse uri: %s", uriString) + } + + return smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + }, nil + } + return endpoint, fmt.Errorf("endpoint rule error, %s", "DualStack is enabled but this partition does not support DualStack") + } + uriString := func() string { + var out strings.Builder + out.WriteString("https://reporting-marketplace.") + out.WriteString(_Region) + out.WriteString(".") + out.WriteString(_PartitionResult.DnsSuffix) + return out.String() + }() + + uri, err := url.Parse(uriString) + if err != nil { + return endpoint, fmt.Errorf("Failed to parse uri: %s", uriString) + } + + return smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + }, nil + } + return endpoint, fmt.Errorf("Endpoint resolution failed. Invalid operation or environment input.") + } + return endpoint, fmt.Errorf("endpoint rule error, %s", "Invalid Configuration: Missing Region") +} + +type endpointParamsBinder interface { + bindEndpointParams(*EndpointParameters) +} + +func bindEndpointParams(ctx context.Context, input interface{}, options Options) *EndpointParameters { + params := &EndpointParameters{} + + params.Region = bindRegion(options.Region) + params.UseDualStack = aws.Bool(options.EndpointOptions.UseDualStackEndpoint == aws.DualStackEndpointStateEnabled) + params.UseFIPS = aws.Bool(options.EndpointOptions.UseFIPSEndpoint == aws.FIPSEndpointStateEnabled) + params.Endpoint = options.BaseEndpoint + + if b, ok := input.(endpointParamsBinder); ok { + b.bindEndpointParams(params) + } + + return params +} + +type resolveEndpointV2Middleware struct { + options Options +} + +func (*resolveEndpointV2Middleware) ID() string { + return "ResolveEndpointV2" +} + +func (m *resolveEndpointV2Middleware) HandleFinalize(ctx context.Context, in middleware.FinalizeInput, next middleware.FinalizeHandler) ( + out middleware.FinalizeOutput, metadata middleware.Metadata, err error, +) { + _, span := tracing.StartSpan(ctx, "ResolveEndpoint") + defer span.End() + + if awsmiddleware.GetRequiresLegacyEndpoints(ctx) { + return next.HandleFinalize(ctx, in) + } + + req, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, fmt.Errorf("unknown transport type %T", in.Request) + } + + if m.options.EndpointResolverV2 == nil { + return out, metadata, fmt.Errorf("expected endpoint resolver to not be nil") + } + + params := bindEndpointParams(ctx, getOperationInput(ctx), m.options) + endpt, err := timeOperationMetric(ctx, "client.call.resolve_endpoint_duration", + func() (smithyendpoints.Endpoint, error) { + return m.options.EndpointResolverV2.ResolveEndpoint(ctx, *params) + }) + if err != nil { + return out, metadata, fmt.Errorf("failed to resolve service endpoint, %w", err) + } + + span.SetProperty("client.call.resolved_endpoint", endpt.URI.String()) + + if endpt.URI.RawPath == "" && req.URL.RawPath != "" { + endpt.URI.RawPath = endpt.URI.Path + } + req.URL.Scheme = endpt.URI.Scheme + req.URL.Host = endpt.URI.Host + req.URL.Path = smithyhttp.JoinPath(endpt.URI.Path, req.URL.Path) + req.URL.RawPath = smithyhttp.JoinPath(endpt.URI.RawPath, req.URL.RawPath) + for k := range endpt.Headers { + req.Header.Set(k, endpt.Headers.Get(k)) + } + + rscheme := getResolvedAuthScheme(ctx) + if rscheme == nil { + return out, metadata, fmt.Errorf("no resolved auth scheme") + } + + opts, _ := smithyauth.GetAuthOptions(&endpt.Properties) + for _, o := range opts { + rscheme.SignerProperties.SetAll(&o.SignerProperties) + } + + span.End() + return next.HandleFinalize(ctx, in) +} diff --git a/service/marketplacereporting/endpoints_config_test.go b/service/marketplacereporting/endpoints_config_test.go new file mode 100644 index 00000000000..a809c2f4b28 --- /dev/null +++ b/service/marketplacereporting/endpoints_config_test.go @@ -0,0 +1,139 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting + +import ( + "context" + "github.com/aws/aws-sdk-go-v2/aws" + "os" + "reflect" + "testing" +) + +type mockConfigSource struct { + global string + service string + ignore bool +} + +// GetIgnoreConfiguredEndpoints is used in knowing when to disable configured +// endpoints feature. +func (m mockConfigSource) GetIgnoreConfiguredEndpoints(context.Context) (bool, bool, error) { + return m.ignore, m.ignore, nil +} + +// GetServiceBaseEndpoint is used to retrieve a normalized SDK ID for use +// with configured endpoints. +func (m mockConfigSource) GetServiceBaseEndpoint(ctx context.Context, sdkID string) (string, bool, error) { + if m.service != "" { + return m.service, true, nil + } + return "", false, nil +} + +func TestResolveBaseEndpoint(t *testing.T) { + cases := map[string]struct { + envGlobal string + envService string + envIgnore bool + configGlobal string + configService string + configIgnore bool + clientEndpoint *string + expectURL *string + }{ + "env ignore": { + envGlobal: "https://env-global.dev", + envService: "https://env-marketplace-reporting.dev", + envIgnore: true, + configGlobal: "http://config-global.dev", + configService: "http://config-marketplace-reporting.dev", + expectURL: nil, + }, + "env global": { + envGlobal: "https://env-global.dev", + configGlobal: "http://config-global.dev", + configService: "http://config-marketplace-reporting.dev", + expectURL: aws.String("https://env-global.dev"), + }, + "env service": { + envGlobal: "https://env-global.dev", + envService: "https://env-marketplace-reporting.dev", + configGlobal: "http://config-global.dev", + configService: "http://config-marketplace-reporting.dev", + expectURL: aws.String("https://env-marketplace-reporting.dev"), + }, + "config ignore": { + envGlobal: "https://env-global.dev", + envService: "https://env-marketplace-reporting.dev", + configGlobal: "http://config-global.dev", + configService: "http://config-marketplace-reporting.dev", + configIgnore: true, + expectURL: nil, + }, + "config global": { + configGlobal: "http://config-global.dev", + expectURL: aws.String("http://config-global.dev"), + }, + "config service": { + configGlobal: "http://config-global.dev", + configService: "http://config-marketplace-reporting.dev", + expectURL: aws.String("http://config-marketplace-reporting.dev"), + }, + "client": { + envGlobal: "https://env-global.dev", + envService: "https://env-marketplace-reporting.dev", + configGlobal: "http://config-global.dev", + configService: "http://config-marketplace-reporting.dev", + clientEndpoint: aws.String("https://client-marketplace-reporting.dev"), + expectURL: aws.String("https://client-marketplace-reporting.dev"), + }, + } + + for name, c := range cases { + t.Run(name, func(t *testing.T) { + os.Clearenv() + + awsConfig := aws.Config{} + ignore := c.envIgnore || c.configIgnore + + if c.configGlobal != "" && !ignore { + awsConfig.BaseEndpoint = aws.String(c.configGlobal) + } + + if c.envGlobal != "" { + t.Setenv("AWS_ENDPOINT_URL", c.envGlobal) + if !ignore { + awsConfig.BaseEndpoint = aws.String(c.envGlobal) + } + } + + if c.envService != "" { + t.Setenv("AWS_ENDPOINT_URL_MARKETPLACE_REPORTING", c.envService) + } + + awsConfig.ConfigSources = []interface{}{ + mockConfigSource{ + global: c.envGlobal, + service: c.envService, + ignore: c.envIgnore, + }, + mockConfigSource{ + global: c.configGlobal, + service: c.configService, + ignore: c.configIgnore, + }, + } + + client := NewFromConfig(awsConfig, func(o *Options) { + if c.clientEndpoint != nil { + o.BaseEndpoint = c.clientEndpoint + } + }) + + if e, a := c.expectURL, client.options.BaseEndpoint; !reflect.DeepEqual(e, a) { + t.Errorf("expect endpoint %v , got %v", e, a) + } + }) + } +} diff --git a/service/marketplacereporting/endpoints_test.go b/service/marketplacereporting/endpoints_test.go new file mode 100644 index 00000000000..1dc6a1e537f --- /dev/null +++ b/service/marketplacereporting/endpoints_test.go @@ -0,0 +1,820 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting + +import ( + "context" + smithy "github.com/aws/smithy-go" + smithyendpoints "github.com/aws/smithy-go/endpoints" + "github.com/aws/smithy-go/ptr" + "net/http" + "net/url" + "reflect" + "strings" + "testing" +) + +// For region us-east-1 with FIPS enabled and DualStack enabled +func TestEndpointCase0(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-east-1"), + UseFIPS: ptr.Bool(true), + UseDualStack: ptr.Bool(true), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace-fips.us-east-1.api.aws") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region us-east-1 with FIPS enabled and DualStack disabled +func TestEndpointCase1(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-east-1"), + UseFIPS: ptr.Bool(true), + UseDualStack: ptr.Bool(false), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace-fips.us-east-1.amazonaws.com") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region us-east-1 with FIPS disabled and DualStack enabled +func TestEndpointCase2(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-east-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(true), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace.us-east-1.api.aws") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region us-east-1 with FIPS disabled and DualStack disabled +func TestEndpointCase3(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-east-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(false), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace.us-east-1.amazonaws.com") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region cn-north-1 with FIPS enabled and DualStack enabled +func TestEndpointCase4(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("cn-north-1"), + UseFIPS: ptr.Bool(true), + UseDualStack: ptr.Bool(true), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace-fips.cn-north-1.api.amazonwebservices.com.cn") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region cn-north-1 with FIPS enabled and DualStack disabled +func TestEndpointCase5(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("cn-north-1"), + UseFIPS: ptr.Bool(true), + UseDualStack: ptr.Bool(false), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace-fips.cn-north-1.amazonaws.com.cn") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region cn-north-1 with FIPS disabled and DualStack enabled +func TestEndpointCase6(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("cn-north-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(true), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace.cn-north-1.api.amazonwebservices.com.cn") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region cn-north-1 with FIPS disabled and DualStack disabled +func TestEndpointCase7(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("cn-north-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(false), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace.cn-north-1.amazonaws.com.cn") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region us-gov-east-1 with FIPS enabled and DualStack enabled +func TestEndpointCase8(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-gov-east-1"), + UseFIPS: ptr.Bool(true), + UseDualStack: ptr.Bool(true), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace-fips.us-gov-east-1.api.aws") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region us-gov-east-1 with FIPS enabled and DualStack disabled +func TestEndpointCase9(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-gov-east-1"), + UseFIPS: ptr.Bool(true), + UseDualStack: ptr.Bool(false), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace-fips.us-gov-east-1.amazonaws.com") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region us-gov-east-1 with FIPS disabled and DualStack enabled +func TestEndpointCase10(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-gov-east-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(true), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace.us-gov-east-1.api.aws") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region us-gov-east-1 with FIPS disabled and DualStack disabled +func TestEndpointCase11(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-gov-east-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(false), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace.us-gov-east-1.amazonaws.com") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region us-iso-east-1 with FIPS enabled and DualStack enabled +func TestEndpointCase12(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-iso-east-1"), + UseFIPS: ptr.Bool(true), + UseDualStack: ptr.Bool(true), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err == nil { + t.Fatalf("expect error, got none") + } + if e, a := "FIPS and DualStack are enabled, but this partition does not support one or both", err.Error(); !strings.Contains(a, e) { + t.Errorf("expect %v error in %v", e, a) + } +} + +// For region us-iso-east-1 with FIPS enabled and DualStack disabled +func TestEndpointCase13(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-iso-east-1"), + UseFIPS: ptr.Bool(true), + UseDualStack: ptr.Bool(false), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace-fips.us-iso-east-1.c2s.ic.gov") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region us-iso-east-1 with FIPS disabled and DualStack enabled +func TestEndpointCase14(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-iso-east-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(true), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err == nil { + t.Fatalf("expect error, got none") + } + if e, a := "DualStack is enabled but this partition does not support DualStack", err.Error(); !strings.Contains(a, e) { + t.Errorf("expect %v error in %v", e, a) + } +} + +// For region us-iso-east-1 with FIPS disabled and DualStack disabled +func TestEndpointCase15(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-iso-east-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(false), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace.us-iso-east-1.c2s.ic.gov") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region us-isob-east-1 with FIPS enabled and DualStack enabled +func TestEndpointCase16(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-isob-east-1"), + UseFIPS: ptr.Bool(true), + UseDualStack: ptr.Bool(true), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err == nil { + t.Fatalf("expect error, got none") + } + if e, a := "FIPS and DualStack are enabled, but this partition does not support one or both", err.Error(); !strings.Contains(a, e) { + t.Errorf("expect %v error in %v", e, a) + } +} + +// For region us-isob-east-1 with FIPS enabled and DualStack disabled +func TestEndpointCase17(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-isob-east-1"), + UseFIPS: ptr.Bool(true), + UseDualStack: ptr.Bool(false), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace-fips.us-isob-east-1.sc2s.sgov.gov") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For region us-isob-east-1 with FIPS disabled and DualStack enabled +func TestEndpointCase18(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-isob-east-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(true), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err == nil { + t.Fatalf("expect error, got none") + } + if e, a := "DualStack is enabled but this partition does not support DualStack", err.Error(); !strings.Contains(a, e) { + t.Errorf("expect %v error in %v", e, a) + } +} + +// For region us-isob-east-1 with FIPS disabled and DualStack disabled +func TestEndpointCase19(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-isob-east-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(false), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://reporting-marketplace.us-isob-east-1.sc2s.sgov.gov") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For custom endpoint with region set and fips disabled and dualstack disabled +func TestEndpointCase20(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-east-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(false), + Endpoint: ptr.String("https://example.com"), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://example.com") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For custom endpoint with region not set and fips disabled and dualstack disabled +func TestEndpointCase21(t *testing.T) { + var params = EndpointParameters{ + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(false), + Endpoint: ptr.String("https://example.com"), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err != nil { + t.Fatalf("expect no error, got %v", err) + } + + uri, _ := url.Parse("https://example.com") + + expectEndpoint := smithyendpoints.Endpoint{ + URI: *uri, + Headers: http.Header{}, + Properties: smithy.Properties{}, + } + + if e, a := expectEndpoint.URI, result.URI; e != a { + t.Errorf("expect %v URI, got %v", e, a) + } + + if !reflect.DeepEqual(expectEndpoint.Headers, result.Headers) { + t.Errorf("expect headers to match\n%v != %v", expectEndpoint.Headers, result.Headers) + } + + if !reflect.DeepEqual(expectEndpoint.Properties, result.Properties) { + t.Errorf("expect properties to match\n%v != %v", expectEndpoint.Properties, result.Properties) + } +} + +// For custom endpoint with fips enabled and dualstack disabled +func TestEndpointCase22(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-east-1"), + UseFIPS: ptr.Bool(true), + UseDualStack: ptr.Bool(false), + Endpoint: ptr.String("https://example.com"), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err == nil { + t.Fatalf("expect error, got none") + } + if e, a := "Invalid Configuration: FIPS and custom endpoint are not supported", err.Error(); !strings.Contains(a, e) { + t.Errorf("expect %v error in %v", e, a) + } +} + +// For custom endpoint with fips disabled and dualstack enabled +func TestEndpointCase23(t *testing.T) { + var params = EndpointParameters{ + Region: ptr.String("us-east-1"), + UseFIPS: ptr.Bool(false), + UseDualStack: ptr.Bool(true), + Endpoint: ptr.String("https://example.com"), + } + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err == nil { + t.Fatalf("expect error, got none") + } + if e, a := "Invalid Configuration: Dualstack and custom endpoint are not supported", err.Error(); !strings.Contains(a, e) { + t.Errorf("expect %v error in %v", e, a) + } +} + +// Missing region +func TestEndpointCase24(t *testing.T) { + var params = EndpointParameters{} + + resolver := NewDefaultEndpointResolverV2() + result, err := resolver.ResolveEndpoint(context.Background(), params) + _, _ = result, err + + if err == nil { + t.Fatalf("expect error, got none") + } + if e, a := "Invalid Configuration: Missing Region", err.Error(); !strings.Contains(a, e) { + t.Errorf("expect %v error in %v", e, a) + } +} diff --git a/service/marketplacereporting/generated.json b/service/marketplacereporting/generated.json new file mode 100644 index 00000000000..b1add1b876a --- /dev/null +++ b/service/marketplacereporting/generated.json @@ -0,0 +1,32 @@ +{ + "dependencies": { + "github.com/aws/aws-sdk-go-v2": "v1.4.0", + "github.com/aws/aws-sdk-go-v2/internal/configsources": "v0.0.0-00010101000000-000000000000", + "github.com/aws/aws-sdk-go-v2/internal/endpoints/v2": "v2.0.0-00010101000000-000000000000", + "github.com/aws/smithy-go": "v1.4.0" + }, + "files": [ + "api_client.go", + "api_client_test.go", + "api_op_GetBuyerDashboard.go", + "auth.go", + "deserializers.go", + "doc.go", + "endpoints.go", + "endpoints_config_test.go", + "endpoints_test.go", + "generated.json", + "internal/endpoints/endpoints.go", + "internal/endpoints/endpoints_test.go", + "options.go", + "protocol_test.go", + "serializers.go", + "snapshot_test.go", + "types/errors.go", + "types/types.go", + "validators.go" + ], + "go": "1.15", + "module": "github.com/aws/aws-sdk-go-v2/service/marketplacereporting", + "unstable": false +} diff --git a/service/marketplacereporting/go.mod b/service/marketplacereporting/go.mod new file mode 100644 index 00000000000..1999a898642 --- /dev/null +++ b/service/marketplacereporting/go.mod @@ -0,0 +1,16 @@ +module github.com/aws/aws-sdk-go-v2/service/marketplacereporting + +go 1.21 + +require ( + github.com/aws/aws-sdk-go-v2 v1.31.0 + github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.18 + github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.18 + github.com/aws/smithy-go v1.21.0 +) + +replace github.com/aws/aws-sdk-go-v2 => ../../ + +replace github.com/aws/aws-sdk-go-v2/internal/configsources => ../../internal/configsources/ + +replace github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 => ../../internal/endpoints/v2/ diff --git a/service/marketplacereporting/go.sum b/service/marketplacereporting/go.sum new file mode 100644 index 00000000000..9c6d66fd5d1 --- /dev/null +++ b/service/marketplacereporting/go.sum @@ -0,0 +1,2 @@ +github.com/aws/smithy-go v1.21.0 h1:H7L8dtDRk0P1Qm6y0ji7MCYMQObJ5R9CRpyPhRUkLYA= +github.com/aws/smithy-go v1.21.0/go.mod h1:irrKGvNn1InZwb2d7fkIRNucdfwR8R+Ts3wxYa/cJHg= diff --git a/service/marketplacereporting/go_module_metadata.go b/service/marketplacereporting/go_module_metadata.go new file mode 100644 index 00000000000..e71cff17529 --- /dev/null +++ b/service/marketplacereporting/go_module_metadata.go @@ -0,0 +1,6 @@ +// Code generated by internal/repotools/cmd/updatemodulemeta DO NOT EDIT. + +package marketplacereporting + +// goModuleVersion is the tagged release for this module +const goModuleVersion = "tip" diff --git a/service/marketplacereporting/internal/endpoints/endpoints.go b/service/marketplacereporting/internal/endpoints/endpoints.go new file mode 100644 index 00000000000..e5e47c6076e --- /dev/null +++ b/service/marketplacereporting/internal/endpoints/endpoints.go @@ -0,0 +1,296 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package endpoints + +import ( + "github.com/aws/aws-sdk-go-v2/aws" + endpoints "github.com/aws/aws-sdk-go-v2/internal/endpoints/v2" + "github.com/aws/smithy-go/logging" + "regexp" +) + +// Options is the endpoint resolver configuration options +type Options struct { + // Logger is a logging implementation that log events should be sent to. + Logger logging.Logger + + // LogDeprecated indicates that deprecated endpoints should be logged to the + // provided logger. + LogDeprecated bool + + // ResolvedRegion is used to override the region to be resolved, rather then the + // using the value passed to the ResolveEndpoint method. This value is used by the + // SDK to translate regions like fips-us-east-1 or us-east-1-fips to an alternative + // name. You must not set this value directly in your application. + ResolvedRegion string + + // DisableHTTPS informs the resolver to return an endpoint that does not use the + // HTTPS scheme. + DisableHTTPS bool + + // UseDualStackEndpoint specifies the resolver must resolve a dual-stack endpoint. + UseDualStackEndpoint aws.DualStackEndpointState + + // UseFIPSEndpoint specifies the resolver must resolve a FIPS endpoint. + UseFIPSEndpoint aws.FIPSEndpointState +} + +func (o Options) GetResolvedRegion() string { + return o.ResolvedRegion +} + +func (o Options) GetDisableHTTPS() bool { + return o.DisableHTTPS +} + +func (o Options) GetUseDualStackEndpoint() aws.DualStackEndpointState { + return o.UseDualStackEndpoint +} + +func (o Options) GetUseFIPSEndpoint() aws.FIPSEndpointState { + return o.UseFIPSEndpoint +} + +func transformToSharedOptions(options Options) endpoints.Options { + return endpoints.Options{ + Logger: options.Logger, + LogDeprecated: options.LogDeprecated, + ResolvedRegion: options.ResolvedRegion, + DisableHTTPS: options.DisableHTTPS, + UseDualStackEndpoint: options.UseDualStackEndpoint, + UseFIPSEndpoint: options.UseFIPSEndpoint, + } +} + +// Resolver Marketplace Reporting endpoint resolver +type Resolver struct { + partitions endpoints.Partitions +} + +// ResolveEndpoint resolves the service endpoint for the given region and options +func (r *Resolver) ResolveEndpoint(region string, options Options) (endpoint aws.Endpoint, err error) { + if len(region) == 0 { + return endpoint, &aws.MissingRegionError{} + } + + opt := transformToSharedOptions(options) + return r.partitions.ResolveEndpoint(region, opt) +} + +// New returns a new Resolver +func New() *Resolver { + return &Resolver{ + partitions: defaultPartitions, + } +} + +var partitionRegexp = struct { + Aws *regexp.Regexp + AwsCn *regexp.Regexp + AwsIso *regexp.Regexp + AwsIsoB *regexp.Regexp + AwsIsoE *regexp.Regexp + AwsIsoF *regexp.Regexp + AwsUsGov *regexp.Regexp +}{ + + Aws: regexp.MustCompile("^(us|eu|ap|sa|ca|me|af|il|mx)\\-\\w+\\-\\d+$"), + AwsCn: regexp.MustCompile("^cn\\-\\w+\\-\\d+$"), + AwsIso: regexp.MustCompile("^us\\-iso\\-\\w+\\-\\d+$"), + AwsIsoB: regexp.MustCompile("^us\\-isob\\-\\w+\\-\\d+$"), + AwsIsoE: regexp.MustCompile("^eu\\-isoe\\-\\w+\\-\\d+$"), + AwsIsoF: regexp.MustCompile("^us\\-isof\\-\\w+\\-\\d+$"), + AwsUsGov: regexp.MustCompile("^us\\-gov\\-\\w+\\-\\d+$"), +} + +var defaultPartitions = endpoints.Partitions{ + { + ID: "aws", + Defaults: map[endpoints.DefaultKey]endpoints.Endpoint{ + { + Variant: endpoints.DualStackVariant, + }: { + Hostname: "reporting-marketplace.{region}.api.aws", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: endpoints.FIPSVariant, + }: { + Hostname: "reporting-marketplace-fips.{region}.amazonaws.com", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: endpoints.FIPSVariant | endpoints.DualStackVariant, + }: { + Hostname: "reporting-marketplace-fips.{region}.api.aws", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: 0, + }: { + Hostname: "reporting-marketplace.{region}.amazonaws.com", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + }, + RegionRegex: partitionRegexp.Aws, + IsRegionalized: true, + }, + { + ID: "aws-cn", + Defaults: map[endpoints.DefaultKey]endpoints.Endpoint{ + { + Variant: endpoints.DualStackVariant, + }: { + Hostname: "reporting-marketplace.{region}.api.amazonwebservices.com.cn", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: endpoints.FIPSVariant, + }: { + Hostname: "reporting-marketplace-fips.{region}.amazonaws.com.cn", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: endpoints.FIPSVariant | endpoints.DualStackVariant, + }: { + Hostname: "reporting-marketplace-fips.{region}.api.amazonwebservices.com.cn", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: 0, + }: { + Hostname: "reporting-marketplace.{region}.amazonaws.com.cn", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + }, + RegionRegex: partitionRegexp.AwsCn, + IsRegionalized: true, + }, + { + ID: "aws-iso", + Defaults: map[endpoints.DefaultKey]endpoints.Endpoint{ + { + Variant: endpoints.FIPSVariant, + }: { + Hostname: "reporting-marketplace-fips.{region}.c2s.ic.gov", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: 0, + }: { + Hostname: "reporting-marketplace.{region}.c2s.ic.gov", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + }, + RegionRegex: partitionRegexp.AwsIso, + IsRegionalized: true, + }, + { + ID: "aws-iso-b", + Defaults: map[endpoints.DefaultKey]endpoints.Endpoint{ + { + Variant: endpoints.FIPSVariant, + }: { + Hostname: "reporting-marketplace-fips.{region}.sc2s.sgov.gov", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: 0, + }: { + Hostname: "reporting-marketplace.{region}.sc2s.sgov.gov", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + }, + RegionRegex: partitionRegexp.AwsIsoB, + IsRegionalized: true, + }, + { + ID: "aws-iso-e", + Defaults: map[endpoints.DefaultKey]endpoints.Endpoint{ + { + Variant: endpoints.FIPSVariant, + }: { + Hostname: "reporting-marketplace-fips.{region}.cloud.adc-e.uk", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: 0, + }: { + Hostname: "reporting-marketplace.{region}.cloud.adc-e.uk", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + }, + RegionRegex: partitionRegexp.AwsIsoE, + IsRegionalized: true, + }, + { + ID: "aws-iso-f", + Defaults: map[endpoints.DefaultKey]endpoints.Endpoint{ + { + Variant: endpoints.FIPSVariant, + }: { + Hostname: "reporting-marketplace-fips.{region}.csp.hci.ic.gov", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: 0, + }: { + Hostname: "reporting-marketplace.{region}.csp.hci.ic.gov", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + }, + RegionRegex: partitionRegexp.AwsIsoF, + IsRegionalized: true, + }, + { + ID: "aws-us-gov", + Defaults: map[endpoints.DefaultKey]endpoints.Endpoint{ + { + Variant: endpoints.DualStackVariant, + }: { + Hostname: "reporting-marketplace.{region}.api.aws", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: endpoints.FIPSVariant, + }: { + Hostname: "reporting-marketplace-fips.{region}.amazonaws.com", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: endpoints.FIPSVariant | endpoints.DualStackVariant, + }: { + Hostname: "reporting-marketplace-fips.{region}.api.aws", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + { + Variant: 0, + }: { + Hostname: "reporting-marketplace.{region}.amazonaws.com", + Protocols: []string{"https"}, + SignatureVersions: []string{"v4"}, + }, + }, + RegionRegex: partitionRegexp.AwsUsGov, + IsRegionalized: true, + }, +} diff --git a/service/marketplacereporting/internal/endpoints/endpoints_test.go b/service/marketplacereporting/internal/endpoints/endpoints_test.go new file mode 100644 index 00000000000..08e5da2d833 --- /dev/null +++ b/service/marketplacereporting/internal/endpoints/endpoints_test.go @@ -0,0 +1,11 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package endpoints + +import ( + "testing" +) + +func TestRegexCompile(t *testing.T) { + _ = defaultPartitions +} diff --git a/service/marketplacereporting/options.go b/service/marketplacereporting/options.go new file mode 100644 index 00000000000..befb2e90199 --- /dev/null +++ b/service/marketplacereporting/options.go @@ -0,0 +1,232 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting + +import ( + "context" + "github.com/aws/aws-sdk-go-v2/aws" + awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" + internalauthsmithy "github.com/aws/aws-sdk-go-v2/internal/auth/smithy" + smithyauth "github.com/aws/smithy-go/auth" + "github.com/aws/smithy-go/logging" + "github.com/aws/smithy-go/metrics" + "github.com/aws/smithy-go/middleware" + "github.com/aws/smithy-go/tracing" + smithyhttp "github.com/aws/smithy-go/transport/http" + "net/http" +) + +type HTTPClient interface { + Do(*http.Request) (*http.Response, error) +} + +type Options struct { + // Set of options to modify how an operation is invoked. These apply to all + // operations invoked for this client. Use functional options on operation call to + // modify this list for per operation behavior. + APIOptions []func(*middleware.Stack) error + + // The optional application specific identifier appended to the User-Agent header. + AppID string + + // This endpoint will be given as input to an EndpointResolverV2. It is used for + // providing a custom base endpoint that is subject to modifications by the + // processing EndpointResolverV2. + BaseEndpoint *string + + // Configures the events that will be sent to the configured logger. + ClientLogMode aws.ClientLogMode + + // The credentials object to use when signing requests. + Credentials aws.CredentialsProvider + + // The configuration DefaultsMode that the SDK should use when constructing the + // clients initial default settings. + DefaultsMode aws.DefaultsMode + + // The endpoint options to be used when attempting to resolve an endpoint. + EndpointOptions EndpointResolverOptions + + // The service endpoint resolver. + // + // Deprecated: Deprecated: EndpointResolver and WithEndpointResolver. Providing a + // value for this field will likely prevent you from using any endpoint-related + // service features released after the introduction of EndpointResolverV2 and + // BaseEndpoint. + // + // To migrate an EndpointResolver implementation that uses a custom endpoint, set + // the client option BaseEndpoint instead. + EndpointResolver EndpointResolver + + // Resolves the endpoint used for a particular service operation. This should be + // used over the deprecated EndpointResolver. + EndpointResolverV2 EndpointResolverV2 + + // Signature Version 4 (SigV4) Signer + HTTPSignerV4 HTTPSignerV4 + + // The logger writer interface to write logging messages to. + Logger logging.Logger + + // The client meter provider. + MeterProvider metrics.MeterProvider + + // The region to send requests to. (Required) + Region string + + // RetryMaxAttempts specifies the maximum number attempts an API client will call + // an operation that fails with a retryable error. A value of 0 is ignored, and + // will not be used to configure the API client created default retryer, or modify + // per operation call's retry max attempts. + // + // If specified in an operation call's functional options with a value that is + // different than the constructed client's Options, the Client's Retryer will be + // wrapped to use the operation's specific RetryMaxAttempts value. + RetryMaxAttempts int + + // RetryMode specifies the retry mode the API client will be created with, if + // Retryer option is not also specified. + // + // When creating a new API Clients this member will only be used if the Retryer + // Options member is nil. This value will be ignored if Retryer is not nil. + // + // Currently does not support per operation call overrides, may in the future. + RetryMode aws.RetryMode + + // Retryer guides how HTTP requests should be retried in case of recoverable + // failures. When nil the API client will use a default retryer. The kind of + // default retry created by the API client can be changed with the RetryMode + // option. + Retryer aws.Retryer + + // The RuntimeEnvironment configuration, only populated if the DefaultsMode is set + // to DefaultsModeAuto and is initialized using config.LoadDefaultConfig . You + // should not populate this structure programmatically, or rely on the values here + // within your applications. + RuntimeEnvironment aws.RuntimeEnvironment + + // The client tracer provider. + TracerProvider tracing.TracerProvider + + // The initial DefaultsMode used when the client options were constructed. If the + // DefaultsMode was set to aws.DefaultsModeAuto this will store what the resolved + // value was at that point in time. + // + // Currently does not support per operation call overrides, may in the future. + resolvedDefaultsMode aws.DefaultsMode + + // The HTTP client to invoke API calls with. Defaults to client's default HTTP + // implementation if nil. + HTTPClient HTTPClient + + // The auth scheme resolver which determines how to authenticate for each + // operation. + AuthSchemeResolver AuthSchemeResolver + + // The list of auth schemes supported by the client. + AuthSchemes []smithyhttp.AuthScheme +} + +// Copy creates a clone where the APIOptions list is deep copied. +func (o Options) Copy() Options { + to := o + to.APIOptions = make([]func(*middleware.Stack) error, len(o.APIOptions)) + copy(to.APIOptions, o.APIOptions) + + return to +} + +func (o Options) GetIdentityResolver(schemeID string) smithyauth.IdentityResolver { + if schemeID == "aws.auth#sigv4" { + return getSigV4IdentityResolver(o) + } + if schemeID == "smithy.api#noAuth" { + return &smithyauth.AnonymousIdentityResolver{} + } + return nil +} + +// WithAPIOptions returns a functional option for setting the Client's APIOptions +// option. +func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options) { + return func(o *Options) { + o.APIOptions = append(o.APIOptions, optFns...) + } +} + +// Deprecated: EndpointResolver and WithEndpointResolver. Providing a value for +// this field will likely prevent you from using any endpoint-related service +// features released after the introduction of EndpointResolverV2 and BaseEndpoint. +// +// To migrate an EndpointResolver implementation that uses a custom endpoint, set +// the client option BaseEndpoint instead. +func WithEndpointResolver(v EndpointResolver) func(*Options) { + return func(o *Options) { + o.EndpointResolver = v + } +} + +// WithEndpointResolverV2 returns a functional option for setting the Client's +// EndpointResolverV2 option. +func WithEndpointResolverV2(v EndpointResolverV2) func(*Options) { + return func(o *Options) { + o.EndpointResolverV2 = v + } +} + +func getSigV4IdentityResolver(o Options) smithyauth.IdentityResolver { + if o.Credentials != nil { + return &internalauthsmithy.CredentialsProviderAdapter{Provider: o.Credentials} + } + return nil +} + +// WithSigV4SigningName applies an override to the authentication workflow to +// use the given signing name for SigV4-authenticated operations. +// +// This is an advanced setting. The value here is FINAL, taking precedence over +// the resolved signing name from both auth scheme resolution and endpoint +// resolution. +func WithSigV4SigningName(name string) func(*Options) { + fn := func(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, + ) { + return next.HandleInitialize(awsmiddleware.SetSigningName(ctx, name), in) + } + return func(o *Options) { + o.APIOptions = append(o.APIOptions, func(s *middleware.Stack) error { + return s.Initialize.Add( + middleware.InitializeMiddlewareFunc("withSigV4SigningName", fn), + middleware.Before, + ) + }) + } +} + +// WithSigV4SigningRegion applies an override to the authentication workflow to +// use the given signing region for SigV4-authenticated operations. +// +// This is an advanced setting. The value here is FINAL, taking precedence over +// the resolved signing region from both auth scheme resolution and endpoint +// resolution. +func WithSigV4SigningRegion(region string) func(*Options) { + fn := func(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, + ) { + return next.HandleInitialize(awsmiddleware.SetSigningRegion(ctx, region), in) + } + return func(o *Options) { + o.APIOptions = append(o.APIOptions, func(s *middleware.Stack) error { + return s.Initialize.Add( + middleware.InitializeMiddlewareFunc("withSigV4SigningRegion", fn), + middleware.Before, + ) + }) + } +} + +func ignoreAnonymousAuth(options *Options) { + if aws.IsCredentialsProvider(options.Credentials, (*aws.AnonymousCredentials)(nil)) { + options.Credentials = nil + } +} diff --git a/service/marketplacereporting/protocol_test.go b/service/marketplacereporting/protocol_test.go new file mode 100644 index 00000000000..f96023f9175 --- /dev/null +++ b/service/marketplacereporting/protocol_test.go @@ -0,0 +1,3 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting diff --git a/service/marketplacereporting/serializers.go b/service/marketplacereporting/serializers.go new file mode 100644 index 00000000000..458a6d69839 --- /dev/null +++ b/service/marketplacereporting/serializers.go @@ -0,0 +1,114 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting + +import ( + "bytes" + "context" + "fmt" + smithy "github.com/aws/smithy-go" + "github.com/aws/smithy-go/encoding/httpbinding" + smithyjson "github.com/aws/smithy-go/encoding/json" + "github.com/aws/smithy-go/middleware" + "github.com/aws/smithy-go/tracing" + smithyhttp "github.com/aws/smithy-go/transport/http" +) + +type awsRestjson1_serializeOpGetBuyerDashboard struct { +} + +func (*awsRestjson1_serializeOpGetBuyerDashboard) ID() string { + return "OperationSerializer" +} + +func (m *awsRestjson1_serializeOpGetBuyerDashboard) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) ( + out middleware.SerializeOutput, metadata middleware.Metadata, err error, +) { + _, span := tracing.StartSpan(ctx, "OperationSerializer") + endTimer := startMetricTimer(ctx, "client.call.serialization_duration") + defer endTimer() + defer span.End() + request, ok := in.Request.(*smithyhttp.Request) + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)} + } + + input, ok := in.Parameters.(*GetBuyerDashboardInput) + _ = input + if !ok { + return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)} + } + + opPath, opQuery := httpbinding.SplitURI("/getBuyerDashboard") + 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} + } + + restEncoder.SetHeader("Content-Type").String("application/json") + + jsonEncoder := smithyjson.NewEncoder() + if err := awsRestjson1_serializeOpDocumentGetBuyerDashboardInput(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 + + endTimer() + span.End() + return next.HandleSerialize(ctx, in) +} +func awsRestjson1_serializeOpHttpBindingsGetBuyerDashboardInput(v *GetBuyerDashboardInput, encoder *httpbinding.Encoder) error { + if v == nil { + return fmt.Errorf("unsupported serialization of nil %T", v) + } + + return nil +} + +func awsRestjson1_serializeOpDocumentGetBuyerDashboardInput(v *GetBuyerDashboardInput, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.DashboardIdentifier != nil { + ok := object.Key("dashboardIdentifier") + ok.String(*v.DashboardIdentifier) + } + + if v.EmbeddingDomains != nil { + ok := object.Key("embeddingDomains") + if err := awsRestjson1_serializeDocumentEmbeddingDomains(v.EmbeddingDomains, ok); err != nil { + return err + } + } + + return nil +} + +func awsRestjson1_serializeDocumentEmbeddingDomains(v []string, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + av.String(v[i]) + } + return nil +} diff --git a/service/marketplacereporting/snapshot/api_op_GetBuyerDashboard.go.snap b/service/marketplacereporting/snapshot/api_op_GetBuyerDashboard.go.snap new file mode 100644 index 00000000000..830ac4af5fb --- /dev/null +++ b/service/marketplacereporting/snapshot/api_op_GetBuyerDashboard.go.snap @@ -0,0 +1,41 @@ +GetBuyerDashboard + Initialize stack step + spanInitializeStart + RegisterServiceMetadata + legacyEndpointContextSetter + SetLogger + OperationInputValidation + spanInitializeEnd + Serialize stack step + spanBuildRequestStart + setOperationInput + ResolveEndpoint + OperationSerializer + Build stack step + ClientRequestID + ComputeContentLength + UserAgent + AddTimeOffsetMiddleware + RecursionDetection + spanBuildRequestEnd + Finalize stack step + ResolveAuthScheme + GetIdentity + ResolveEndpointV2 + disableHTTPS + ComputePayloadHash + spanRetryLoop + Retry + RetryMetricsHeader + setLegacyContextSigningOptions + Signing + Deserialize stack step + AddRawResponseToMetadata + ErrorCloseResponseBody + CloseResponseBody + ResponseErrorWrapper + RequestIDRetriever + OperationDeserializer + AddTimeOffsetMiddleware + RecordResponseTiming + RequestResponseLogger diff --git a/service/marketplacereporting/snapshot_test.go b/service/marketplacereporting/snapshot_test.go new file mode 100644 index 00000000000..d859e9c5784 --- /dev/null +++ b/service/marketplacereporting/snapshot_test.go @@ -0,0 +1,86 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +//go:build snapshot + +package marketplacereporting + +import ( + "context" + "errors" + "fmt" + "github.com/aws/smithy-go/middleware" + "io" + "io/fs" + "os" + "testing" +) + +const ssprefix = "snapshot" + +type snapshotOK struct{} + +func (snapshotOK) Error() string { return "error: success" } + +func createp(path string) (*os.File, error) { + if err := os.Mkdir(ssprefix, 0700); err != nil && !errors.Is(err, fs.ErrExist) { + return nil, err + } + return os.Create(path) +} + +func sspath(op string) string { + return fmt.Sprintf("%s/api_op_%s.go.snap", ssprefix, op) +} + +func updateSnapshot(stack *middleware.Stack, operation string) error { + f, err := createp(sspath(operation)) + if err != nil { + return err + } + defer f.Close() + if _, err := f.Write([]byte(stack.String())); err != nil { + return err + } + return snapshotOK{} +} + +func testSnapshot(stack *middleware.Stack, operation string) error { + f, err := os.Open(sspath(operation)) + if errors.Is(err, fs.ErrNotExist) { + return snapshotOK{} + } + if err != nil { + return err + } + defer f.Close() + expected, err := io.ReadAll(f) + if err != nil { + return err + } + if actual := stack.String(); actual != string(expected) { + return fmt.Errorf("%s != %s", expected, actual) + } + return snapshotOK{} +} +func TestCheckSnapshot_GetBuyerDashboard(t *testing.T) { + svc := New(Options{}) + _, err := svc.GetBuyerDashboard(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return testSnapshot(stack, "GetBuyerDashboard") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} +func TestUpdateSnapshot_GetBuyerDashboard(t *testing.T) { + svc := New(Options{}) + _, err := svc.GetBuyerDashboard(context.Background(), nil, func(o *Options) { + o.APIOptions = append(o.APIOptions, func(stack *middleware.Stack) error { + return updateSnapshot(stack, "GetBuyerDashboard") + }) + }) + if _, ok := err.(snapshotOK); !ok && err != nil { + t.Fatal(err) + } +} diff --git a/service/marketplacereporting/types/errors.go b/service/marketplacereporting/types/errors.go new file mode 100644 index 00000000000..7e88caf7f25 --- /dev/null +++ b/service/marketplacereporting/types/errors.go @@ -0,0 +1,113 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package types + +import ( + "fmt" + smithy "github.com/aws/smithy-go" +) + +// You do not have sufficient access to perform this action. +type AccessDeniedException struct { + Message *string + + ErrorCodeOverride *string + + noSmithyDocumentSerde +} + +func (e *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage()) +} +func (e *AccessDeniedException) ErrorMessage() string { + if e.Message == nil { + return "" + } + return *e.Message +} +func (e *AccessDeniedException) ErrorCode() string { + if e == nil || e.ErrorCodeOverride == nil { + return "AccessDeniedException" + } + return *e.ErrorCodeOverride +} +func (e *AccessDeniedException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } + +// The request is malformed, or it contains an error such as an invalid parameter. +// Ensure the request has all required parameters. +type BadRequestException struct { + Message *string + + ErrorCodeOverride *string + + noSmithyDocumentSerde +} + +func (e *BadRequestException) Error() string { + return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage()) +} +func (e *BadRequestException) ErrorMessage() string { + if e.Message == nil { + return "" + } + return *e.Message +} +func (e *BadRequestException) ErrorCode() string { + if e == nil || e.ErrorCodeOverride == nil { + return "BadRequestException" + } + return *e.ErrorCodeOverride +} +func (e *BadRequestException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } + +// The operation failed due to a server error. +type InternalServerException struct { + Message *string + + ErrorCodeOverride *string + + noSmithyDocumentSerde +} + +func (e *InternalServerException) Error() string { + return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage()) +} +func (e *InternalServerException) ErrorMessage() string { + if e.Message == nil { + return "" + } + return *e.Message +} +func (e *InternalServerException) ErrorCode() string { + if e == nil || e.ErrorCodeOverride == nil { + return "InternalServerException" + } + return *e.ErrorCodeOverride +} +func (e *InternalServerException) ErrorFault() smithy.ErrorFault { return smithy.FaultServer } + +// You do not have permission to perform this action. +type UnauthorizedException struct { + Message *string + + ErrorCodeOverride *string + + noSmithyDocumentSerde +} + +func (e *UnauthorizedException) Error() string { + return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage()) +} +func (e *UnauthorizedException) ErrorMessage() string { + if e.Message == nil { + return "" + } + return *e.Message +} +func (e *UnauthorizedException) ErrorCode() string { + if e == nil || e.ErrorCodeOverride == nil { + return "UnauthorizedException" + } + return *e.ErrorCodeOverride +} +func (e *UnauthorizedException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient } diff --git a/service/marketplacereporting/types/types.go b/service/marketplacereporting/types/types.go new file mode 100644 index 00000000000..0ec0789f8d9 --- /dev/null +++ b/service/marketplacereporting/types/types.go @@ -0,0 +1,9 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package types + +import ( + smithydocument "github.com/aws/smithy-go/document" +) + +type noSmithyDocumentSerde = smithydocument.NoSerde diff --git a/service/marketplacereporting/validators.go b/service/marketplacereporting/validators.go new file mode 100644 index 00000000000..1eb26b6eabd --- /dev/null +++ b/service/marketplacereporting/validators.go @@ -0,0 +1,52 @@ +// Code generated by smithy-go-codegen DO NOT EDIT. + +package marketplacereporting + +import ( + "context" + "fmt" + smithy "github.com/aws/smithy-go" + "github.com/aws/smithy-go/middleware" +) + +type validateOpGetBuyerDashboard struct { +} + +func (*validateOpGetBuyerDashboard) ID() string { + return "OperationInputValidation" +} + +func (m *validateOpGetBuyerDashboard) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( + out middleware.InitializeOutput, metadata middleware.Metadata, err error, +) { + input, ok := in.Parameters.(*GetBuyerDashboardInput) + if !ok { + return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) + } + if err := validateOpGetBuyerDashboardInput(input); err != nil { + return out, metadata, err + } + return next.HandleInitialize(ctx, in) +} + +func addOpGetBuyerDashboardValidationMiddleware(stack *middleware.Stack) error { + return stack.Initialize.Add(&validateOpGetBuyerDashboard{}, middleware.After) +} + +func validateOpGetBuyerDashboardInput(v *GetBuyerDashboardInput) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "GetBuyerDashboardInput"} + if v.DashboardIdentifier == nil { + invalidParams.Add(smithy.NewErrParamRequired("DashboardIdentifier")) + } + if v.EmbeddingDomains == nil { + invalidParams.Add(smithy.NewErrParamRequired("EmbeddingDomains")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} diff --git a/service/mediaconnect/api_client.go b/service/mediaconnect/api_client.go index e920ea0bd8b..f0ae12c558a 100644 --- a/service/mediaconnect/api_client.go +++ b/service/mediaconnect/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mediaconvert/api_client.go b/service/mediaconvert/api_client.go index 840daec5fff..8bf93a099d4 100644 --- a/service/mediaconvert/api_client.go +++ b/service/mediaconvert/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/medialive/api_client.go b/service/medialive/api_client.go index 583f89fb339..0c675862f0d 100644 --- a/service/medialive/api_client.go +++ b/service/medialive/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mediapackage/api_client.go b/service/mediapackage/api_client.go index a6cac4a9515..bacdb84d556 100644 --- a/service/mediapackage/api_client.go +++ b/service/mediapackage/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mediapackagev2/api_client.go b/service/mediapackagev2/api_client.go index a849e1a7b27..a53d7292ca8 100644 --- a/service/mediapackagev2/api_client.go +++ b/service/mediapackagev2/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mediapackagev2/deserializers.go b/service/mediapackagev2/deserializers.go index a1deb3fa6cf..4cdf4141a9a 100644 --- a/service/mediapackagev2/deserializers.go +++ b/service/mediapackagev2/deserializers.go @@ -18,6 +18,7 @@ import ( smithyhttp "github.com/aws/smithy-go/transport/http" "io" "io/ioutil" + "math" "strings" "time" ) @@ -5326,6 +5327,22 @@ func awsRestjson1_deserializeDocumentFilterConfiguration(v **types.FilterConfigu for key, value := range shape { switch key { + case "ClipStartTime": + if value != nil { + switch jtv := value.(type) { + case json.Number: + f64, err := jtv.Float64() + if err != nil { + return err + } + sv.ClipStartTime = ptr.Time(smithytime.ParseEpochSeconds(f64)) + + default: + return fmt.Errorf("expected Timestamp to be a JSON Number, got %T instead", value) + + } + } + case "End": if value != nil { switch jtv := value.(type) { @@ -5674,6 +5691,11 @@ func awsRestjson1_deserializeDocumentGetHlsManifestConfiguration(v **types.GetHl return err } + case "StartTag": + if err := awsRestjson1_deserializeDocumentStartTag(&sv.StartTag, value); err != nil { + return err + } + case "Url": if value != nil { jtv, ok := value.(string) @@ -5802,6 +5824,11 @@ func awsRestjson1_deserializeDocumentGetLowLatencyHlsManifestConfiguration(v **t return err } + case "StartTag": + if err := awsRestjson1_deserializeDocumentStartTag(&sv.StartTag, value); err != nil { + return err + } + case "Url": if value != nil { jtv, ok := value.(string) @@ -6814,6 +6841,80 @@ func awsRestjson1_deserializeDocumentSpekeKeyProvider(v **types.SpekeKeyProvider return nil } +func awsRestjson1_deserializeDocumentStartTag(v **types.StartTag, 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.StartTag + if *v == nil { + sv = &types.StartTag{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "Precise": + if value != nil { + jtv, ok := value.(bool) + if !ok { + return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value) + } + sv.Precise = ptr.Bool(jtv) + } + + case "TimeOffset": + if value != nil { + switch jtv := value.(type) { + case json.Number: + f64, err := jtv.Float64() + if err != nil { + return err + } + sv.TimeOffset = ptr.Float32(float32(f64)) + + case string: + var f64 float64 + switch { + case strings.EqualFold(jtv, "NaN"): + f64 = math.NaN() + + case strings.EqualFold(jtv, "Infinity"): + f64 = math.Inf(1) + + case strings.EqualFold(jtv, "-Infinity"): + f64 = math.Inf(-1) + + default: + return fmt.Errorf("unknown JSON number value: %s", jtv) + + } + sv.TimeOffset = ptr.Float32(float32(f64)) + + default: + return fmt.Errorf("expected Float to be a JSON Number, got %T instead", value) + + } + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsRestjson1_deserializeDocumentTagMap(v *map[string]string, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) diff --git a/service/mediapackagev2/serializers.go b/service/mediapackagev2/serializers.go index 538481d70ff..64c2dbe3085 100644 --- a/service/mediapackagev2/serializers.go +++ b/service/mediapackagev2/serializers.go @@ -14,6 +14,7 @@ import ( smithytime "github.com/aws/smithy-go/time" "github.com/aws/smithy-go/tracing" smithyhttp "github.com/aws/smithy-go/transport/http" + "math" ) type awsRestjson1_serializeOpCreateChannel struct { @@ -2403,6 +2404,13 @@ func awsRestjson1_serializeDocumentCreateHlsManifestConfiguration(v *types.Creat } } + if v.StartTag != nil { + ok := object.Key("StartTag") + if err := awsRestjson1_serializeDocumentStartTag(v.StartTag, ok); err != nil { + return err + } + } + return nil } @@ -2457,6 +2465,13 @@ func awsRestjson1_serializeDocumentCreateLowLatencyHlsManifestConfiguration(v *t } } + if v.StartTag != nil { + ok := object.Key("StartTag") + if err := awsRestjson1_serializeDocumentStartTag(v.StartTag, ok); err != nil { + return err + } + } + return nil } @@ -2592,6 +2607,11 @@ func awsRestjson1_serializeDocumentFilterConfiguration(v *types.FilterConfigurat object := value.Object() defer object.Close() + if v.ClipStartTime != nil { + ok := object.Key("ClipStartTime") + ok.Double(smithytime.FormatEpochSeconds(*v.ClipStartTime)) + } + if v.End != nil { ok := object.Key("End") ok.Double(smithytime.FormatEpochSeconds(*v.End)) @@ -2760,6 +2780,36 @@ func awsRestjson1_serializeDocumentSpekeKeyProvider(v *types.SpekeKeyProvider, v return nil } +func awsRestjson1_serializeDocumentStartTag(v *types.StartTag, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Precise != nil { + ok := object.Key("Precise") + ok.Boolean(*v.Precise) + } + + if v.TimeOffset != nil { + ok := object.Key("TimeOffset") + switch { + case math.IsNaN(float64(*v.TimeOffset)): + ok.String("NaN") + + case math.IsInf(float64(*v.TimeOffset), 1): + ok.String("Infinity") + + case math.IsInf(float64(*v.TimeOffset), -1): + ok.String("-Infinity") + + default: + ok.Float(*v.TimeOffset) + + } + } + + return nil +} + func awsRestjson1_serializeDocumentTagMap(v map[string]string, value smithyjson.Value) error { object := value.Object() defer object.Close() diff --git a/service/mediapackagev2/types/enums.go b/service/mediapackagev2/types/enums.go index 50a49a3296b..bff531058b8 100644 --- a/service/mediapackagev2/types/enums.go +++ b/service/mediapackagev2/types/enums.go @@ -434,6 +434,8 @@ const ( ValidationExceptionTypeDrmSignalingMismatchSegmentEncryptionStatus ValidationExceptionType = "DRM_SIGNALING_MISMATCH_SEGMENT_ENCRYPTION_STATUS" ValidationExceptionTypeOnlyCmafInputTypeAllowForceEndpointErrorConfiguration ValidationExceptionType = "ONLY_CMAF_INPUT_TYPE_ALLOW_FORCE_ENDPOINT_ERROR_CONFIGURATION" ValidationExceptionTypeSourceDisruptionsEnabledIncorrectly ValidationExceptionType = "SOURCE_DISRUPTIONS_ENABLED_INCORRECTLY" + ValidationExceptionTypeClipStartTimeWithStartOrEnd ValidationExceptionType = "CLIP_START_TIME_WITH_START_OR_END" + ValidationExceptionTypeStartTagTimeOffsetInvalid ValidationExceptionType = "START_TAG_TIME_OFFSET_INVALID" ) // Values returns all known values for ValidationExceptionType. Note that this can @@ -489,5 +491,7 @@ func (ValidationExceptionType) Values() []ValidationExceptionType { "DRM_SIGNALING_MISMATCH_SEGMENT_ENCRYPTION_STATUS", "ONLY_CMAF_INPUT_TYPE_ALLOW_FORCE_ENDPOINT_ERROR_CONFIGURATION", "SOURCE_DISRUPTIONS_ENABLED_INCORRECTLY", + "CLIP_START_TIME_WITH_START_OR_END", + "START_TAG_TIME_OFFSET_INVALID", } } diff --git a/service/mediapackagev2/types/types.go b/service/mediapackagev2/types/types.go index fd3ab643edd..569ad0fdc48 100644 --- a/service/mediapackagev2/types/types.go +++ b/service/mediapackagev2/types/types.go @@ -194,6 +194,11 @@ type CreateHlsManifestConfiguration struct { // The SCTE configuration. ScteHls *ScteHls + // To insert an EXT-X-START tag in your HLS playlist, specify a StartTag + // configuration object with a valid TimeOffset. When you do, you can also + // optionally specify whether to include a PRECISE value in the EXT-X-START tag. + StartTag *StartTag + noSmithyDocumentSerde } @@ -239,6 +244,11 @@ type CreateLowLatencyHlsManifestConfiguration struct { // The SCTE configuration. ScteHls *ScteHls + // To insert an EXT-X-START tag in your HLS playlist, specify a StartTag + // configuration object with a valid TimeOffset. When you do, you can also + // optionally specify whether to include a PRECISE value in the EXT-X-START tag. + StartTag *StartTag + noSmithyDocumentSerde } @@ -380,6 +390,11 @@ type EncryptionMethod struct { // manifest. type FilterConfiguration struct { + // Optionally specify the clip start time for all of your manifest egress + // requests. When you include clip start time, note that you cannot use clip start + // time query parameters for this manifest's endpoint URL. + ClipStartTime *time.Time + // Optionally specify the end time for all of your manifest egress requests. When // you include end time, note that you cannot use end time query parameters for // this manifest's endpoint URL. @@ -537,6 +552,11 @@ type GetHlsManifestConfiguration struct { // The SCTE configuration. ScteHls *ScteHls + // To insert an EXT-X-START tag in your HLS playlist, specify a StartTag + // configuration object with a valid TimeOffset. When you do, you can also + // optionally specify whether to include a PRECISE value in the EXT-X-START tag. + StartTag *StartTag + noSmithyDocumentSerde } @@ -587,6 +607,11 @@ type GetLowLatencyHlsManifestConfiguration struct { // The SCTE configuration. ScteHls *ScteHls + // To insert an EXT-X-START tag in your HLS playlist, specify a StartTag + // configuration object with a valid TimeOffset. When you do, you can also + // optionally specify whether to include a PRECISE value in the EXT-X-START tag. + StartTag *StartTag + noSmithyDocumentSerde } @@ -873,4 +898,26 @@ type SpekeKeyProvider struct { noSmithyDocumentSerde } +// To insert an EXT-X-START tag in your HLS playlist, specify a StartTag +// configuration object with a valid TimeOffset. When you do, you can also +// optionally specify whether to include a PRECISE value in the EXT-X-START tag. +type StartTag struct { + + // Specify the value for TIME-OFFSET within your EXT-X-START tag. Enter a signed + // floating point value which, if positive, must be less than the configured + // manifest duration minus three times the configured segment target duration. If + // negative, the absolute value must be larger than three times the configured + // segment target duration, and the absolute value must be smaller than the + // configured manifest duration. + // + // This member is required. + TimeOffset *float32 + + // Specify the value for PRECISE within your EXT-X-START tag. Leave blank, or + // choose false, to use the default value NO. Choose yes to use the value YES. + Precise *bool + + noSmithyDocumentSerde +} + type noSmithyDocumentSerde = smithydocument.NoSerde diff --git a/service/mediapackagev2/validators.go b/service/mediapackagev2/validators.go index 7fe3b6be7bf..222eab7a808 100644 --- a/service/mediapackagev2/validators.go +++ b/service/mediapackagev2/validators.go @@ -602,6 +602,11 @@ func validateCreateHlsManifestConfiguration(v *types.CreateHlsManifestConfigurat if v.ManifestName == nil { invalidParams.Add(smithy.NewErrParamRequired("ManifestName")) } + if v.StartTag != nil { + if err := validateStartTag(v.StartTag); err != nil { + invalidParams.AddNested("StartTag", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { @@ -634,6 +639,11 @@ func validateCreateLowLatencyHlsManifestConfiguration(v *types.CreateLowLatencyH if v.ManifestName == nil { invalidParams.Add(smithy.NewErrParamRequired("ManifestName")) } + if v.StartTag != nil { + if err := validateStartTag(v.StartTag); err != nil { + invalidParams.AddNested("StartTag", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { @@ -746,6 +756,21 @@ func validateSpekeKeyProvider(v *types.SpekeKeyProvider) error { } } +func validateStartTag(v *types.StartTag) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "StartTag"} + if v.TimeOffset == nil { + invalidParams.Add(smithy.NewErrParamRequired("TimeOffset")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateOpCreateChannelGroupInput(v *CreateChannelGroupInput) error { if v == nil { return nil diff --git a/service/mediapackagevod/api_client.go b/service/mediapackagevod/api_client.go index f45006bd960..d1327e4e132 100644 --- a/service/mediapackagevod/api_client.go +++ b/service/mediapackagevod/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mediastore/api_client.go b/service/mediastore/api_client.go index db1d8711a82..fd41bc102fa 100644 --- a/service/mediastore/api_client.go +++ b/service/mediastore/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mediastoredata/api_client.go b/service/mediastoredata/api_client.go index e3f64e692e3..a4747a83227 100644 --- a/service/mediastoredata/api_client.go +++ b/service/mediastoredata/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mediatailor/api_client.go b/service/mediatailor/api_client.go index a7a15205ba6..654c9b2a225 100644 --- a/service/mediatailor/api_client.go +++ b/service/mediatailor/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/medicalimaging/api_client.go b/service/medicalimaging/api_client.go index 79a0a967f40..4c9eac3b356 100644 --- a/service/medicalimaging/api_client.go +++ b/service/medicalimaging/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/memorydb/api_client.go b/service/memorydb/api_client.go index 513bc4ab5bf..5927215f53c 100644 --- a/service/memorydb/api_client.go +++ b/service/memorydb/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mgn/api_client.go b/service/mgn/api_client.go index a854bc49853..171cee62c91 100644 --- a/service/mgn/api_client.go +++ b/service/mgn/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/migrationhub/api_client.go b/service/migrationhub/api_client.go index c5109d1a5d6..08f4a46dd92 100644 --- a/service/migrationhub/api_client.go +++ b/service/migrationhub/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/migrationhubconfig/api_client.go b/service/migrationhubconfig/api_client.go index e24166637b0..4081dcbfcc2 100644 --- a/service/migrationhubconfig/api_client.go +++ b/service/migrationhubconfig/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/migrationhuborchestrator/api_client.go b/service/migrationhuborchestrator/api_client.go index 3e2dd9a2bcf..0ead8a69cb3 100644 --- a/service/migrationhuborchestrator/api_client.go +++ b/service/migrationhuborchestrator/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/migrationhubrefactorspaces/api_client.go b/service/migrationhubrefactorspaces/api_client.go index b474e4edb5d..074b3dd7f68 100644 --- a/service/migrationhubrefactorspaces/api_client.go +++ b/service/migrationhubrefactorspaces/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/migrationhubstrategy/api_client.go b/service/migrationhubstrategy/api_client.go index 6902f7ed54b..97618123c76 100644 --- a/service/migrationhubstrategy/api_client.go +++ b/service/migrationhubstrategy/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mq/api_client.go b/service/mq/api_client.go index a8b6ca58c1e..c0e8af8aaec 100644 --- a/service/mq/api_client.go +++ b/service/mq/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mturk/api_client.go b/service/mturk/api_client.go index 5c58d791ebf..4f6494d9591 100644 --- a/service/mturk/api_client.go +++ b/service/mturk/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/mwaa/api_client.go b/service/mwaa/api_client.go index 07929795807..b0ef4b14f5f 100644 --- a/service/mwaa/api_client.go +++ b/service/mwaa/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/neptune/api_client.go b/service/neptune/api_client.go index b6b4759c05d..d4eca8718ef 100644 --- a/service/neptune/api_client.go +++ b/service/neptune/api_client.go @@ -189,10 +189,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/neptunedata/api_client.go b/service/neptunedata/api_client.go index 72a666527a4..dd45aaec0d1 100644 --- a/service/neptunedata/api_client.go +++ b/service/neptunedata/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/neptunegraph/api_client.go b/service/neptunegraph/api_client.go index d2c44acc265..9cc00ab5a18 100644 --- a/service/neptunegraph/api_client.go +++ b/service/neptunegraph/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/networkfirewall/api_client.go b/service/networkfirewall/api_client.go index 93fa460d857..29e50bfe4ec 100644 --- a/service/networkfirewall/api_client.go +++ b/service/networkfirewall/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/networkmanager/api_client.go b/service/networkmanager/api_client.go index 8f66733f845..5bf0ea5f99f 100644 --- a/service/networkmanager/api_client.go +++ b/service/networkmanager/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/networkmonitor/api_client.go b/service/networkmonitor/api_client.go index 8b028a633cb..649e4abeafe 100644 --- a/service/networkmonitor/api_client.go +++ b/service/networkmonitor/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/nimble/api_client.go b/service/nimble/api_client.go index 78e12656df1..0bb3e864c3e 100644 --- a/service/nimble/api_client.go +++ b/service/nimble/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/oam/api_client.go b/service/oam/api_client.go index 3896d8bde69..88d9606a208 100644 --- a/service/oam/api_client.go +++ b/service/oam/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/omics/api_client.go b/service/omics/api_client.go index 7a55658d523..d906f7fce4b 100644 --- a/service/omics/api_client.go +++ b/service/omics/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/opensearch/api_client.go b/service/opensearch/api_client.go index 0da4a59dbe5..969adfce662 100644 --- a/service/opensearch/api_client.go +++ b/service/opensearch/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/opensearchserverless/api_client.go b/service/opensearchserverless/api_client.go index 87fdeaf56c3..3fce10f788d 100644 --- a/service/opensearchserverless/api_client.go +++ b/service/opensearchserverless/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/opsworks/api_client.go b/service/opsworks/api_client.go index 7798b36a723..d0f8461f3f7 100644 --- a/service/opsworks/api_client.go +++ b/service/opsworks/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/opsworkscm/api_client.go b/service/opsworkscm/api_client.go index ab7bce7e001..4c9382c8939 100644 --- a/service/opsworkscm/api_client.go +++ b/service/opsworkscm/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/organizations/api_client.go b/service/organizations/api_client.go index df97c89fe6e..5e623ba8233 100644 --- a/service/organizations/api_client.go +++ b/service/organizations/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/osis/api_client.go b/service/osis/api_client.go index a2fd2a95faf..4334228a1ba 100644 --- a/service/osis/api_client.go +++ b/service/osis/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/outposts/api_client.go b/service/outposts/api_client.go index c99a13994f4..439b9596694 100644 --- a/service/outposts/api_client.go +++ b/service/outposts/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/panorama/api_client.go b/service/panorama/api_client.go index fd3cc660e81..a7140493558 100644 --- a/service/panorama/api_client.go +++ b/service/panorama/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/paymentcryptography/api_client.go b/service/paymentcryptography/api_client.go index b7b47b9fbfd..e009e9a97a5 100644 --- a/service/paymentcryptography/api_client.go +++ b/service/paymentcryptography/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/paymentcryptographydata/api_client.go b/service/paymentcryptographydata/api_client.go index 787d61fe1d4..8f92bf0b492 100644 --- a/service/paymentcryptographydata/api_client.go +++ b/service/paymentcryptographydata/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/pcaconnectorad/api_client.go b/service/pcaconnectorad/api_client.go index f2a9ab78953..c2ac08302c6 100644 --- a/service/pcaconnectorad/api_client.go +++ b/service/pcaconnectorad/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/pcaconnectorscep/api_client.go b/service/pcaconnectorscep/api_client.go index 08eec918396..ffe0655ec49 100644 --- a/service/pcaconnectorscep/api_client.go +++ b/service/pcaconnectorscep/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/pcs/api_client.go b/service/pcs/api_client.go index 03d06cc8639..651f530c3cb 100644 --- a/service/pcs/api_client.go +++ b/service/pcs/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/personalize/api_client.go b/service/personalize/api_client.go index 5f165210361..53b0794d057 100644 --- a/service/personalize/api_client.go +++ b/service/personalize/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/personalizeevents/api_client.go b/service/personalizeevents/api_client.go index 78464b86a64..46ba5b0a9df 100644 --- a/service/personalizeevents/api_client.go +++ b/service/personalizeevents/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/personalizeruntime/api_client.go b/service/personalizeruntime/api_client.go index 450dc44abad..fd892f96a4a 100644 --- a/service/personalizeruntime/api_client.go +++ b/service/personalizeruntime/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/pi/api_client.go b/service/pi/api_client.go index 4c5c57d70c5..c3d621dedca 100644 --- a/service/pi/api_client.go +++ b/service/pi/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/pinpoint/api_client.go b/service/pinpoint/api_client.go index c3cf3f0fa48..6e9ddf7535e 100644 --- a/service/pinpoint/api_client.go +++ b/service/pinpoint/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/pinpointemail/api_client.go b/service/pinpointemail/api_client.go index 5b9cc19e5cc..cec2844cb0c 100644 --- a/service/pinpointemail/api_client.go +++ b/service/pinpointemail/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/pinpointsmsvoice/api_client.go b/service/pinpointsmsvoice/api_client.go index d463932f502..57a0db2cecb 100644 --- a/service/pinpointsmsvoice/api_client.go +++ b/service/pinpointsmsvoice/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/pinpointsmsvoicev2/api_client.go b/service/pinpointsmsvoicev2/api_client.go index fa58bf4d47e..5223027b8d4 100644 --- a/service/pinpointsmsvoicev2/api_client.go +++ b/service/pinpointsmsvoicev2/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/pipes/api_client.go b/service/pipes/api_client.go index a512c804a67..e9f2e6dc2c4 100644 --- a/service/pipes/api_client.go +++ b/service/pipes/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/polly/api_client.go b/service/polly/api_client.go index 261322ed9ac..d1e9f53bc11 100644 --- a/service/polly/api_client.go +++ b/service/polly/api_client.go @@ -189,10 +189,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/pricing/api_client.go b/service/pricing/api_client.go index 81325f70112..7121712b397 100644 --- a/service/pricing/api_client.go +++ b/service/pricing/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/privatenetworks/api_client.go b/service/privatenetworks/api_client.go index 74e69c50f4e..43589bcc34d 100644 --- a/service/privatenetworks/api_client.go +++ b/service/privatenetworks/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/proton/api_client.go b/service/proton/api_client.go index 1931ef479e2..1311ef12b76 100644 --- a/service/proton/api_client.go +++ b/service/proton/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/qapps/api_client.go b/service/qapps/api_client.go index e8005a6135c..70fc1d209cd 100644 --- a/service/qapps/api_client.go +++ b/service/qapps/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/qbusiness/api_client.go b/service/qbusiness/api_client.go index 2a7a7d643a8..dc4d18ccbbe 100644 --- a/service/qbusiness/api_client.go +++ b/service/qbusiness/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/qconnect/api_client.go b/service/qconnect/api_client.go index ce94a6e255b..3e6259f0b85 100644 --- a/service/qconnect/api_client.go +++ b/service/qconnect/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/qldb/api_client.go b/service/qldb/api_client.go index a9199f38c9c..39e1e383b9e 100644 --- a/service/qldb/api_client.go +++ b/service/qldb/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/qldbsession/api_client.go b/service/qldbsession/api_client.go index 6daf234cbcb..2daa0bbabd9 100644 --- a/service/qldbsession/api_client.go +++ b/service/qldbsession/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/quicksight/api_client.go b/service/quicksight/api_client.go index c6fc43e02b3..6ef6a863fc9 100644 --- a/service/quicksight/api_client.go +++ b/service/quicksight/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/quicksight/api_op_DescribeAssetBundleExportJob.go b/service/quicksight/api_op_DescribeAssetBundleExportJob.go index 580e6a960ba..2a629e70dd8 100644 --- a/service/quicksight/api_op_DescribeAssetBundleExportJob.go +++ b/service/quicksight/api_op_DescribeAssetBundleExportJob.go @@ -98,6 +98,12 @@ type DescribeAssetBundleExportJobOutput struct { // The include dependencies flag. IncludeAllDependencies bool + // A setting that determines whether folder members are included. + IncludeFolderMembers types.IncludeFolderMembers + + // The include folder memberships flag. + IncludeFolderMemberships bool + // The include permissions flag. IncludePermissions bool diff --git a/service/quicksight/api_op_StartAssetBundleExportJob.go b/service/quicksight/api_op_StartAssetBundleExportJob.go index 69fdfade903..d3b673ee765 100644 --- a/service/quicksight/api_op_StartAssetBundleExportJob.go +++ b/service/quicksight/api_op_StartAssetBundleExportJob.go @@ -93,6 +93,15 @@ type StartAssetBundleExportJobInput struct { // is also exported. IncludeAllDependencies bool + // A setting that indicates whether you want to include folder assets. You can + // also use this setting to recusrsively include all subfolders of an exported + // folder. + IncludeFolderMembers types.IncludeFolderMembers + + // A Boolean that determines if the exported asset carries over information about + // the folders that the asset is a member of. + IncludeFolderMemberships bool + // A Boolean that determines whether all permissions for each resource ARN are // exported with the job. If you set IncludePermissions to TRUE , any permissions // associated with each resource are exported. diff --git a/service/quicksight/deserializers.go b/service/quicksight/deserializers.go index 677fc108de0..bc0dbe78cd0 100644 --- a/service/quicksight/deserializers.go +++ b/service/quicksight/deserializers.go @@ -11992,6 +11992,24 @@ func awsRestjson1_deserializeOpDocumentDescribeAssetBundleExportJobOutput(v **De sv.IncludeAllDependencies = jtv } + case "IncludeFolderMembers": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected IncludeFolderMembers to be of type string, got %T instead", value) + } + sv.IncludeFolderMembers = types.IncludeFolderMembers(jtv) + } + + case "IncludeFolderMemberships": + if value != nil { + jtv, ok := value.(bool) + if !ok { + return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value) + } + sv.IncludeFolderMemberships = jtv + } + case "IncludePermissions": if value != nil { jtv, ok := value.(bool) @@ -39443,6 +39461,11 @@ func awsRestjson1_deserializeDocumentAssetBundleCloudFormationOverridePropertyCo return err } + case "Folders": + if err := awsRestjson1_deserializeDocumentAssetBundleExportJobFolderOverridePropertiesList(&sv.Folders, value); err != nil { + return err + } + case "RefreshSchedules": if err := awsRestjson1_deserializeDocumentAssetBundleExportJobRefreshScheduleOverridePropertiesList(&sv.RefreshSchedules, value); err != nil { return err @@ -40024,6 +40047,121 @@ func awsRestjson1_deserializeDocumentAssetBundleExportJobErrorList(v *[]types.As return nil } +func awsRestjson1_deserializeDocumentAssetBundleExportJobFolderOverrideProperties(v **types.AssetBundleExportJobFolderOverrideProperties, 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.AssetBundleExportJobFolderOverrideProperties + if *v == nil { + sv = &types.AssetBundleExportJobFolderOverrideProperties{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "Arn": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Arn to be of type string, got %T instead", value) + } + sv.Arn = ptr.String(jtv) + } + + case "Properties": + if err := awsRestjson1_deserializeDocumentAssetBundleExportJobFolderPropertyToOverrideList(&sv.Properties, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentAssetBundleExportJobFolderOverridePropertiesList(v *[]types.AssetBundleExportJobFolderOverrideProperties, 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.AssetBundleExportJobFolderOverrideProperties + if *v == nil { + cv = []types.AssetBundleExportJobFolderOverrideProperties{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.AssetBundleExportJobFolderOverrideProperties + destAddr := &col + if err := awsRestjson1_deserializeDocumentAssetBundleExportJobFolderOverrideProperties(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsRestjson1_deserializeDocumentAssetBundleExportJobFolderPropertyToOverrideList(v *[]types.AssetBundleExportJobFolderPropertyToOverride, 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.AssetBundleExportJobFolderPropertyToOverride + if *v == nil { + cv = []types.AssetBundleExportJobFolderPropertyToOverride{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.AssetBundleExportJobFolderPropertyToOverride + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected AssetBundleExportJobFolderPropertyToOverride to be of type string, got %T instead", value) + } + col = types.AssetBundleExportJobFolderPropertyToOverride(jtv) + } + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocumentAssetBundleExportJobRefreshScheduleOverrideProperties(v **types.AssetBundleExportJobRefreshScheduleOverrideProperties, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -41819,6 +41957,248 @@ func awsRestjson1_deserializeDocumentAssetBundleImportJobErrorList(v *[]types.As return nil } +func awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverrideParameters(v **types.AssetBundleImportJobFolderOverrideParameters, 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.AssetBundleImportJobFolderOverrideParameters + if *v == nil { + sv = &types.AssetBundleImportJobFolderOverrideParameters{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "FolderId": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ResourceId to be of type string, got %T instead", value) + } + sv.FolderId = ptr.String(jtv) + } + + case "Name": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value) + } + sv.Name = ptr.String(jtv) + } + + case "ParentFolderArn": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected Arn to be of type string, got %T instead", value) + } + sv.ParentFolderArn = ptr.String(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverrideParametersList(v *[]types.AssetBundleImportJobFolderOverrideParameters, 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.AssetBundleImportJobFolderOverrideParameters + if *v == nil { + cv = []types.AssetBundleImportJobFolderOverrideParameters{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.AssetBundleImportJobFolderOverrideParameters + destAddr := &col + if err := awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverrideParameters(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverridePermissions(v **types.AssetBundleImportJobFolderOverridePermissions, 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.AssetBundleImportJobFolderOverridePermissions + if *v == nil { + sv = &types.AssetBundleImportJobFolderOverridePermissions{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "FolderIds": + if err := awsRestjson1_deserializeDocumentAssetBundleRestrictiveResourceIdList(&sv.FolderIds, value); err != nil { + return err + } + + case "Permissions": + if err := awsRestjson1_deserializeDocumentAssetBundleResourcePermissions(&sv.Permissions, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverridePermissionsList(v *[]types.AssetBundleImportJobFolderOverridePermissions, 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.AssetBundleImportJobFolderOverridePermissions + if *v == nil { + cv = []types.AssetBundleImportJobFolderOverridePermissions{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.AssetBundleImportJobFolderOverridePermissions + destAddr := &col + if err := awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverridePermissions(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + +func awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverrideTags(v **types.AssetBundleImportJobFolderOverrideTags, 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.AssetBundleImportJobFolderOverrideTags + if *v == nil { + sv = &types.AssetBundleImportJobFolderOverrideTags{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "FolderIds": + if err := awsRestjson1_deserializeDocumentAssetBundleRestrictiveResourceIdList(&sv.FolderIds, value); err != nil { + return err + } + + case "Tags": + if err := awsRestjson1_deserializeDocumentTagList(&sv.Tags, value); err != nil { + return err + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + +func awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverrideTagsList(v *[]types.AssetBundleImportJobFolderOverrideTags, 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.AssetBundleImportJobFolderOverrideTags + if *v == nil { + cv = []types.AssetBundleImportJobFolderOverrideTags{} + } else { + cv = *v + } + + for _, value := range shape { + var col types.AssetBundleImportJobFolderOverrideTags + destAddr := &col + if err := awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverrideTags(&destAddr, value); err != nil { + return err + } + col = *destAddr + cv = append(cv, col) + + } + *v = cv + return nil +} + func awsRestjson1_deserializeDocumentAssetBundleImportJobOverrideParameters(v **types.AssetBundleImportJobOverrideParameters, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -41861,6 +42241,11 @@ func awsRestjson1_deserializeDocumentAssetBundleImportJobOverrideParameters(v ** return err } + case "Folders": + if err := awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverrideParametersList(&sv.Folders, value); err != nil { + return err + } + case "RefreshSchedules": if err := awsRestjson1_deserializeDocumentAssetBundleImportJobRefreshScheduleOverrideParametersList(&sv.RefreshSchedules, value); err != nil { return err @@ -41932,6 +42317,11 @@ func awsRestjson1_deserializeDocumentAssetBundleImportJobOverridePermissions(v * return err } + case "Folders": + if err := awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverridePermissionsList(&sv.Folders, value); err != nil { + return err + } + case "Themes": if err := awsRestjson1_deserializeDocumentAssetBundleImportJobThemeOverridePermissionsList(&sv.Themes, value); err != nil { return err @@ -41988,6 +42378,11 @@ func awsRestjson1_deserializeDocumentAssetBundleImportJobOverrideTags(v **types. return err } + case "Folders": + if err := awsRestjson1_deserializeDocumentAssetBundleImportJobFolderOverrideTagsList(&sv.Folders, value); err != nil { + return err + } + case "Themes": if err := awsRestjson1_deserializeDocumentAssetBundleImportJobThemeOverrideTagsList(&sv.Themes, value); err != nil { return err @@ -86568,6 +86963,46 @@ func awsRestjson1_deserializeDocumentTopicColumns(v *[]types.TopicColumn, value return nil } +func awsRestjson1_deserializeDocumentTopicConfigOptions(v **types.TopicConfigOptions, 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.TopicConfigOptions + if *v == nil { + sv = &types.TopicConfigOptions{} + } else { + sv = *v + } + + for key, value := range shape { + switch key { + case "QBusinessInsightsEnabled": + if value != nil { + jtv, ok := value.(bool) + if !ok { + return fmt.Errorf("expected NullableBoolean to be of type *bool, got %T instead", value) + } + sv.QBusinessInsightsEnabled = ptr.Bool(jtv) + } + + default: + _, _ = key, value + + } + } + *v = sv + return nil +} + func awsRestjson1_deserializeDocumentTopicConstantValue(v **types.TopicConstantValue, value interface{}) error { if v == nil { return fmt.Errorf("unexpected nil of type %T", v) @@ -86707,6 +87142,11 @@ func awsRestjson1_deserializeDocumentTopicDetails(v **types.TopicDetails, value for key, value := range shape { switch key { + case "ConfigOptions": + if err := awsRestjson1_deserializeDocumentTopicConfigOptions(&sv.ConfigOptions, value); err != nil { + return err + } + case "DataSets": if err := awsRestjson1_deserializeDocumentDatasets(&sv.DataSets, value); err != nil { return err diff --git a/service/quicksight/serializers.go b/service/quicksight/serializers.go index 9a2ac9c0f64..a2f0b42d023 100644 --- a/service/quicksight/serializers.go +++ b/service/quicksight/serializers.go @@ -13248,6 +13248,16 @@ func awsRestjson1_serializeOpDocumentStartAssetBundleExportJobInput(v *StartAsse ok.Boolean(v.IncludeAllDependencies) } + if len(v.IncludeFolderMembers) > 0 { + ok := object.Key("IncludeFolderMembers") + ok.String(string(v.IncludeFolderMembers)) + } + + if v.IncludeFolderMemberships { + ok := object.Key("IncludeFolderMemberships") + ok.Boolean(v.IncludeFolderMemberships) + } + if v.IncludePermissions { ok := object.Key("IncludePermissions") ok.Boolean(v.IncludePermissions) @@ -18423,6 +18433,13 @@ func awsRestjson1_serializeDocumentAssetBundleCloudFormationOverridePropertyConf } } + if v.Folders != nil { + ok := object.Key("Folders") + if err := awsRestjson1_serializeDocumentAssetBundleExportJobFolderOverridePropertiesList(v.Folders, ok); err != nil { + return err + } + } + if v.RefreshSchedules != nil { ok := object.Key("RefreshSchedules") if err := awsRestjson1_serializeDocumentAssetBundleExportJobRefreshScheduleOverridePropertiesList(v.RefreshSchedules, ok); err != nil { @@ -18626,6 +18643,49 @@ func awsRestjson1_serializeDocumentAssetBundleExportJobDataSourcePropertyToOverr return nil } +func awsRestjson1_serializeDocumentAssetBundleExportJobFolderOverrideProperties(v *types.AssetBundleExportJobFolderOverrideProperties, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.Arn != nil { + ok := object.Key("Arn") + ok.String(*v.Arn) + } + + if v.Properties != nil { + ok := object.Key("Properties") + if err := awsRestjson1_serializeDocumentAssetBundleExportJobFolderPropertyToOverrideList(v.Properties, ok); err != nil { + return err + } + } + + return nil +} + +func awsRestjson1_serializeDocumentAssetBundleExportJobFolderOverridePropertiesList(v []types.AssetBundleExportJobFolderOverrideProperties, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + if err := awsRestjson1_serializeDocumentAssetBundleExportJobFolderOverrideProperties(&v[i], av); err != nil { + return err + } + } + return nil +} + +func awsRestjson1_serializeDocumentAssetBundleExportJobFolderPropertyToOverrideList(v []types.AssetBundleExportJobFolderPropertyToOverride, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + av.String(string(v[i])) + } + return nil +} + func awsRestjson1_serializeDocumentAssetBundleExportJobRefreshScheduleOverrideProperties(v *types.AssetBundleExportJobRefreshScheduleOverrideProperties, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -19242,6 +19302,109 @@ func awsRestjson1_serializeDocumentAssetBundleImportJobDataSourceOverrideTagsLis return nil } +func awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverrideParameters(v *types.AssetBundleImportJobFolderOverrideParameters, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.FolderId != nil { + ok := object.Key("FolderId") + ok.String(*v.FolderId) + } + + if v.Name != nil { + ok := object.Key("Name") + ok.String(*v.Name) + } + + if v.ParentFolderArn != nil { + ok := object.Key("ParentFolderArn") + ok.String(*v.ParentFolderArn) + } + + return nil +} + +func awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverrideParametersList(v []types.AssetBundleImportJobFolderOverrideParameters, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + if err := awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverrideParameters(&v[i], av); err != nil { + return err + } + } + return nil +} + +func awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverridePermissions(v *types.AssetBundleImportJobFolderOverridePermissions, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.FolderIds != nil { + ok := object.Key("FolderIds") + if err := awsRestjson1_serializeDocumentAssetBundleRestrictiveResourceIdList(v.FolderIds, ok); err != nil { + return err + } + } + + if v.Permissions != nil { + ok := object.Key("Permissions") + if err := awsRestjson1_serializeDocumentAssetBundleResourcePermissions(v.Permissions, ok); err != nil { + return err + } + } + + return nil +} + +func awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverridePermissionsList(v []types.AssetBundleImportJobFolderOverridePermissions, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + if err := awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverridePermissions(&v[i], av); err != nil { + return err + } + } + return nil +} + +func awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverrideTags(v *types.AssetBundleImportJobFolderOverrideTags, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.FolderIds != nil { + ok := object.Key("FolderIds") + if err := awsRestjson1_serializeDocumentAssetBundleRestrictiveResourceIdList(v.FolderIds, ok); err != nil { + return err + } + } + + if v.Tags != nil { + ok := object.Key("Tags") + if err := awsRestjson1_serializeDocumentTagList(v.Tags, ok); err != nil { + return err + } + } + + return nil +} + +func awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverrideTagsList(v []types.AssetBundleImportJobFolderOverrideTags, value smithyjson.Value) error { + array := value.Array() + defer array.Close() + + for i := range v { + av := array.Value() + if err := awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverrideTags(&v[i], av); err != nil { + return err + } + } + return nil +} + func awsRestjson1_serializeDocumentAssetBundleImportJobOverrideParameters(v *types.AssetBundleImportJobOverrideParameters, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -19274,6 +19437,13 @@ func awsRestjson1_serializeDocumentAssetBundleImportJobOverrideParameters(v *typ } } + if v.Folders != nil { + ok := object.Key("Folders") + if err := awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverrideParametersList(v.Folders, ok); err != nil { + return err + } + } + if v.RefreshSchedules != nil { ok := object.Key("RefreshSchedules") if err := awsRestjson1_serializeDocumentAssetBundleImportJobRefreshScheduleOverrideParametersList(v.RefreshSchedules, ok); err != nil { @@ -19337,6 +19507,13 @@ func awsRestjson1_serializeDocumentAssetBundleImportJobOverridePermissions(v *ty } } + if v.Folders != nil { + ok := object.Key("Folders") + if err := awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverridePermissionsList(v.Folders, ok); err != nil { + return err + } + } + if v.Themes != nil { ok := object.Key("Themes") if err := awsRestjson1_serializeDocumentAssetBundleImportJobThemeOverridePermissionsList(v.Themes, ok); err != nil { @@ -19379,6 +19556,13 @@ func awsRestjson1_serializeDocumentAssetBundleImportJobOverrideTags(v *types.Ass } } + if v.Folders != nil { + ok := object.Key("Folders") + if err := awsRestjson1_serializeDocumentAssetBundleImportJobFolderOverrideTagsList(v.Folders, ok); err != nil { + return err + } + } + if v.Themes != nil { ok := object.Key("Themes") if err := awsRestjson1_serializeDocumentAssetBundleImportJobThemeOverrideTagsList(v.Themes, ok); err != nil { @@ -38523,6 +38707,18 @@ func awsRestjson1_serializeDocumentTopicColumns(v []types.TopicColumn, value smi return nil } +func awsRestjson1_serializeDocumentTopicConfigOptions(v *types.TopicConfigOptions, value smithyjson.Value) error { + object := value.Object() + defer object.Close() + + if v.QBusinessInsightsEnabled != nil { + ok := object.Key("QBusinessInsightsEnabled") + ok.Boolean(*v.QBusinessInsightsEnabled) + } + + return nil +} + func awsRestjson1_serializeDocumentTopicConstantValue(v *types.TopicConstantValue, value smithyjson.Value) error { object := value.Object() defer object.Close() @@ -38580,6 +38776,13 @@ func awsRestjson1_serializeDocumentTopicDetails(v *types.TopicDetails, value smi object := value.Object() defer object.Close() + if v.ConfigOptions != nil { + ok := object.Key("ConfigOptions") + if err := awsRestjson1_serializeDocumentTopicConfigOptions(v.ConfigOptions, ok); err != nil { + return err + } + } + if v.DataSets != nil { ok := object.Key("DataSets") if err := awsRestjson1_serializeDocumentDatasets(v.DataSets, ok); err != nil { diff --git a/service/quicksight/types/enums.go b/service/quicksight/types/enums.go index 336f588370e..ad21df928d1 100644 --- a/service/quicksight/types/enums.go +++ b/service/quicksight/types/enums.go @@ -360,6 +360,26 @@ func (AssetBundleExportJobDataSourcePropertyToOverride) Values() []AssetBundleEx } } +type AssetBundleExportJobFolderPropertyToOverride string + +// Enum values for AssetBundleExportJobFolderPropertyToOverride +const ( + AssetBundleExportJobFolderPropertyToOverrideName AssetBundleExportJobFolderPropertyToOverride = "Name" + AssetBundleExportJobFolderPropertyToOverrideParentFolderArn AssetBundleExportJobFolderPropertyToOverride = "ParentFolderArn" +) + +// Values returns all known values for +// AssetBundleExportJobFolderPropertyToOverride. 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 (AssetBundleExportJobFolderPropertyToOverride) Values() []AssetBundleExportJobFolderPropertyToOverride { + return []AssetBundleExportJobFolderPropertyToOverride{ + "Name", + "ParentFolderArn", + } +} + type AssetBundleExportJobRefreshSchedulePropertyToOverride string // Enum values for AssetBundleExportJobRefreshSchedulePropertyToOverride @@ -2266,6 +2286,27 @@ func (IdentityType) Values() []IdentityType { } } +type IncludeFolderMembers string + +// Enum values for IncludeFolderMembers +const ( + IncludeFolderMembersRecurse IncludeFolderMembers = "RECURSE" + IncludeFolderMembersOneLevel IncludeFolderMembers = "ONE_LEVEL" + IncludeFolderMembersNone IncludeFolderMembers = "NONE" +) + +// Values returns all known values for IncludeFolderMembers. 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 (IncludeFolderMembers) Values() []IncludeFolderMembers { + return []IncludeFolderMembers{ + "RECURSE", + "ONE_LEVEL", + "NONE", + } +} + type IngestionErrorType string // Enum values for IngestionErrorType diff --git a/service/quicksight/types/types.go b/service/quicksight/types/types.go index 0835739a83c..c2b8f3abd3f 100644 --- a/service/quicksight/types/types.go +++ b/service/quicksight/types/types.go @@ -667,6 +667,10 @@ type AssetBundleCloudFormationOverridePropertyConfiguration struct { // parameterized in the returned CloudFormation template. DataSources []AssetBundleExportJobDataSourceOverrideProperties + // An optional list of structures that controls how Folder resources are + // parameterized in the returned CloudFormation template. + Folders []AssetBundleExportJobFolderOverrideProperties + // An optional list of structures that control how RefreshSchedule resources are // parameterized in the returned CloudFormation template. RefreshSchedules []AssetBundleExportJobRefreshScheduleOverrideProperties @@ -777,6 +781,25 @@ type AssetBundleExportJobError struct { noSmithyDocumentSerde } +// Controls how a specific Folder resource is parameterized in the returned +// CloudFormation template. +type AssetBundleExportJobFolderOverrideProperties struct { + + // The ARN of the specific Folder resource whose override properties are + // configured in this structure. + // + // This member is required. + Arn *string + + // A list of Folder resource properties to generate variables for in the returned + // CloudFormation template. + // + // This member is required. + Properties []AssetBundleExportJobFolderPropertyToOverride + + noSmithyDocumentSerde +} + // Controls how a specific RefreshSchedule resource is parameterized in the // returned CloudFormation template. type AssetBundleExportJobRefreshScheduleOverrideProperties struct { @@ -1166,6 +1189,58 @@ type AssetBundleImportJobError struct { noSmithyDocumentSerde } +// The override parameters for a single folder that is being imported. +type AssetBundleImportJobFolderOverrideParameters struct { + + // The ID of the folder that you want to apply overrides to. + // + // This member is required. + FolderId *string + + // A new name for the folder. + Name *string + + // A new parent folder arn. This change can only be applied if the import creates + // a brand new folder. Existing folders cannot be moved. + ParentFolderArn *string + + noSmithyDocumentSerde +} + +// An object that contains a list of permissions to be applied to a list of folder +// IDs. +type AssetBundleImportJobFolderOverridePermissions struct { + + // A list of folder IDs that you want to apply overrides to. You can use * to + // override all folders in this asset bundle. + // + // This member is required. + FolderIds []string + + // A structure that contains the permissions for the resource that you want to + // override in an asset bundle import job. + Permissions *AssetBundleResourcePermissions + + noSmithyDocumentSerde +} + +// An object that contains a list of tags to be assigned to a list of folder IDs. +type AssetBundleImportJobFolderOverrideTags struct { + + // A list of folder IDs that you want to apply overrides to. You can use * to + // override all folders in this asset bundle. + // + // This member is required. + FolderIds []string + + // A list of tags for the folders that you want to apply overrides to. + // + // This member is required. + Tags []Tag + + noSmithyDocumentSerde +} + // A list of overrides that modify the asset bundle resource configuration before // the resource is imported. type AssetBundleImportJobOverrideParameters struct { @@ -1186,6 +1261,10 @@ type AssetBundleImportJobOverrideParameters struct { // bundle that is imported. DataSources []AssetBundleImportJobDataSourceOverrideParameters + // A list of overrides for any Folder resources that are present in the asset + // bundle that is imported. + Folders []AssetBundleImportJobFolderOverrideParameters + // A list of overrides for any RefreshSchedule resources that are present in the // asset bundle that is imported. RefreshSchedules []AssetBundleImportJobRefreshScheduleOverrideParameters @@ -1225,6 +1304,9 @@ type AssetBundleImportJobOverridePermissions struct { // in the asset bundle that is imported. DataSources []AssetBundleImportJobDataSourceOverridePermissions + // A list of permissions for the folders that you want to apply overrides to. + Folders []AssetBundleImportJobFolderOverridePermissions + // A list of permissions overrides for any Theme resources that are present in the // asset bundle that is imported. Themes []AssetBundleImportJobThemeOverridePermissions @@ -1252,6 +1334,10 @@ type AssetBundleImportJobOverrideTags struct { // asset bundle that is imported. DataSources []AssetBundleImportJobDataSourceOverrideTags + // A list of tag overrides for any Folder resources that are present in the asset + // bundle that is imported. + Folders []AssetBundleImportJobFolderOverrideTags + // A list of tag overrides for any Theme resources that are present in the asset // bundle that is imported. Themes []AssetBundleImportJobThemeOverrideTags @@ -14768,6 +14854,15 @@ type TopicColumn struct { noSmithyDocumentSerde } +// Configuration options for a Topic . +type TopicConfigOptions struct { + + // Enables Amazon Q Business Insights for a Topic . + QBusinessInsightsEnabled *bool + + noSmithyDocumentSerde +} + // The definition for a TopicConstantValue . type TopicConstantValue struct { @@ -14807,6 +14902,9 @@ type TopicDateRangeFilter struct { // description, and associated data sets. type TopicDetails struct { + // Configuration options for a Topic . + ConfigOptions *TopicConfigOptions + // The data sets that the topic is associated with. DataSets []DatasetMetadata diff --git a/service/quicksight/validators.go b/service/quicksight/validators.go index d9082b8f844..a9af7f831bc 100644 --- a/service/quicksight/validators.go +++ b/service/quicksight/validators.go @@ -4664,6 +4664,11 @@ func validateAssetBundleCloudFormationOverridePropertyConfiguration(v *types.Ass invalidParams.AddNested("Dashboards", err.(smithy.InvalidParamsError)) } } + if v.Folders != nil { + if err := validateAssetBundleExportJobFolderOverridePropertiesList(v.Folders); err != nil { + invalidParams.AddNested("Folders", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { @@ -4811,6 +4816,41 @@ func validateAssetBundleExportJobDataSourceOverridePropertiesList(v []types.Asse } } +func validateAssetBundleExportJobFolderOverrideProperties(v *types.AssetBundleExportJobFolderOverrideProperties) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "AssetBundleExportJobFolderOverrideProperties"} + if v.Arn == nil { + invalidParams.Add(smithy.NewErrParamRequired("Arn")) + } + if v.Properties == nil { + invalidParams.Add(smithy.NewErrParamRequired("Properties")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateAssetBundleExportJobFolderOverridePropertiesList(v []types.AssetBundleExportJobFolderOverrideProperties) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "AssetBundleExportJobFolderOverridePropertiesList"} + for i := range v { + if err := validateAssetBundleExportJobFolderOverrideProperties(&v[i]); err != nil { + invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateAssetBundleExportJobRefreshScheduleOverrideProperties(v *types.AssetBundleExportJobRefreshScheduleOverrideProperties) error { if v == nil { return nil @@ -5409,6 +5449,114 @@ func validateAssetBundleImportJobDataSourceOverrideTagsList(v []types.AssetBundl } } +func validateAssetBundleImportJobFolderOverrideParameters(v *types.AssetBundleImportJobFolderOverrideParameters) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "AssetBundleImportJobFolderOverrideParameters"} + if v.FolderId == nil { + invalidParams.Add(smithy.NewErrParamRequired("FolderId")) + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateAssetBundleImportJobFolderOverrideParametersList(v []types.AssetBundleImportJobFolderOverrideParameters) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "AssetBundleImportJobFolderOverrideParametersList"} + for i := range v { + if err := validateAssetBundleImportJobFolderOverrideParameters(&v[i]); err != nil { + invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateAssetBundleImportJobFolderOverridePermissions(v *types.AssetBundleImportJobFolderOverridePermissions) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "AssetBundleImportJobFolderOverridePermissions"} + if v.FolderIds == nil { + invalidParams.Add(smithy.NewErrParamRequired("FolderIds")) + } + if v.Permissions != nil { + if err := validateAssetBundleResourcePermissions(v.Permissions); err != nil { + invalidParams.AddNested("Permissions", err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateAssetBundleImportJobFolderOverridePermissionsList(v []types.AssetBundleImportJobFolderOverridePermissions) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "AssetBundleImportJobFolderOverridePermissionsList"} + for i := range v { + if err := validateAssetBundleImportJobFolderOverridePermissions(&v[i]); err != nil { + invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateAssetBundleImportJobFolderOverrideTags(v *types.AssetBundleImportJobFolderOverrideTags) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "AssetBundleImportJobFolderOverrideTags"} + if v.FolderIds == nil { + invalidParams.Add(smithy.NewErrParamRequired("FolderIds")) + } + if v.Tags == nil { + invalidParams.Add(smithy.NewErrParamRequired("Tags")) + } else if v.Tags != nil { + if err := validateTagList(v.Tags); err != nil { + invalidParams.AddNested("Tags", err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + +func validateAssetBundleImportJobFolderOverrideTagsList(v []types.AssetBundleImportJobFolderOverrideTags) error { + if v == nil { + return nil + } + invalidParams := smithy.InvalidParamsError{Context: "AssetBundleImportJobFolderOverrideTagsList"} + for i := range v { + if err := validateAssetBundleImportJobFolderOverrideTags(&v[i]); err != nil { + invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError)) + } + } + if invalidParams.Len() > 0 { + return invalidParams + } else { + return nil + } +} + func validateAssetBundleImportJobOverrideParameters(v *types.AssetBundleImportJobOverrideParameters) error { if v == nil { return nil @@ -5449,6 +5597,11 @@ func validateAssetBundleImportJobOverrideParameters(v *types.AssetBundleImportJo invalidParams.AddNested("Dashboards", err.(smithy.InvalidParamsError)) } } + if v.Folders != nil { + if err := validateAssetBundleImportJobFolderOverrideParametersList(v.Folders); err != nil { + invalidParams.AddNested("Folders", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { @@ -5486,6 +5639,11 @@ func validateAssetBundleImportJobOverridePermissions(v *types.AssetBundleImportJ invalidParams.AddNested("Dashboards", err.(smithy.InvalidParamsError)) } } + if v.Folders != nil { + if err := validateAssetBundleImportJobFolderOverridePermissionsList(v.Folders); err != nil { + invalidParams.AddNested("Folders", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { @@ -5528,6 +5686,11 @@ func validateAssetBundleImportJobOverrideTags(v *types.AssetBundleImportJobOverr invalidParams.AddNested("Dashboards", err.(smithy.InvalidParamsError)) } } + if v.Folders != nil { + if err := validateAssetBundleImportJobFolderOverrideTagsList(v.Folders); err != nil { + invalidParams.AddNested("Folders", err.(smithy.InvalidParamsError)) + } + } if invalidParams.Len() > 0 { return invalidParams } else { diff --git a/service/ram/api_client.go b/service/ram/api_client.go index eb50822b403..7b42cddb83b 100644 --- a/service/ram/api_client.go +++ b/service/ram/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/rbin/api_client.go b/service/rbin/api_client.go index 824dd641988..0d5dc92a2bf 100644 --- a/service/rbin/api_client.go +++ b/service/rbin/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/rds/api_client.go b/service/rds/api_client.go index cfe4fd50c48..f217752fcbc 100644 --- a/service/rds/api_client.go +++ b/service/rds/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/rdsdata/api_client.go b/service/rdsdata/api_client.go index 4c5d040c09a..b6c0005f5a2 100644 --- a/service/rdsdata/api_client.go +++ b/service/rdsdata/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/redshift/api_client.go b/service/redshift/api_client.go index 35b134b0c89..48bbb0b804a 100644 --- a/service/redshift/api_client.go +++ b/service/redshift/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/redshiftdata/api_client.go b/service/redshiftdata/api_client.go index 80385e4003e..74318863cca 100644 --- a/service/redshiftdata/api_client.go +++ b/service/redshiftdata/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/redshiftserverless/api_client.go b/service/redshiftserverless/api_client.go index 5390391c0e3..37668bc7e96 100644 --- a/service/redshiftserverless/api_client.go +++ b/service/redshiftserverless/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/rekognition/api_client.go b/service/rekognition/api_client.go index 3666d297c6c..9b078ab5af9 100644 --- a/service/rekognition/api_client.go +++ b/service/rekognition/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/repostspace/api_client.go b/service/repostspace/api_client.go index 20fdea445fd..547d850d2ce 100644 --- a/service/repostspace/api_client.go +++ b/service/repostspace/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/resiliencehub/api_client.go b/service/resiliencehub/api_client.go index ca1bb833f32..a6a855b6d0d 100644 --- a/service/resiliencehub/api_client.go +++ b/service/resiliencehub/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/resourceexplorer2/api_client.go b/service/resourceexplorer2/api_client.go index f03c2f179ef..d9f02403a79 100644 --- a/service/resourceexplorer2/api_client.go +++ b/service/resourceexplorer2/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/resourcegroups/api_client.go b/service/resourcegroups/api_client.go index 41920744470..31227bb4a96 100644 --- a/service/resourcegroups/api_client.go +++ b/service/resourcegroups/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/resourcegroupstaggingapi/api_client.go b/service/resourcegroupstaggingapi/api_client.go index 6fead8013f0..f5335208988 100644 --- a/service/resourcegroupstaggingapi/api_client.go +++ b/service/resourcegroupstaggingapi/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/robomaker/api_client.go b/service/robomaker/api_client.go index 6ea908118fd..404fa4d3942 100644 --- a/service/robomaker/api_client.go +++ b/service/robomaker/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/rolesanywhere/api_client.go b/service/rolesanywhere/api_client.go index d2ae4bfd601..deaa39ce9d7 100644 --- a/service/rolesanywhere/api_client.go +++ b/service/rolesanywhere/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/route53/api_client.go b/service/route53/api_client.go index 53d4c035101..6d33b2d87fe 100644 --- a/service/route53/api_client.go +++ b/service/route53/api_client.go @@ -188,10 +188,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/route53domains/api_client.go b/service/route53domains/api_client.go index 00a34ae5b81..73329b9f6dd 100644 --- a/service/route53domains/api_client.go +++ b/service/route53domains/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/route53profiles/api_client.go b/service/route53profiles/api_client.go index d299a4cc71f..a3c1f1b07d5 100644 --- a/service/route53profiles/api_client.go +++ b/service/route53profiles/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/route53recoverycluster/api_client.go b/service/route53recoverycluster/api_client.go index 541166e3251..7a68c9e7521 100644 --- a/service/route53recoverycluster/api_client.go +++ b/service/route53recoverycluster/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/route53recoverycontrolconfig/api_client.go b/service/route53recoverycontrolconfig/api_client.go index d8ef7666afa..1dbbddcba4f 100644 --- a/service/route53recoverycontrolconfig/api_client.go +++ b/service/route53recoverycontrolconfig/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/route53recoveryreadiness/api_client.go b/service/route53recoveryreadiness/api_client.go index 297e2a8d2f1..aaceea972ed 100644 --- a/service/route53recoveryreadiness/api_client.go +++ b/service/route53recoveryreadiness/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/route53resolver/api_client.go b/service/route53resolver/api_client.go index ade504d4d04..d1f745980d7 100644 --- a/service/route53resolver/api_client.go +++ b/service/route53resolver/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/rum/api_client.go b/service/rum/api_client.go index 277730db8fb..8d2fa844327 100644 --- a/service/rum/api_client.go +++ b/service/rum/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/s3/api_client.go b/service/s3/api_client.go index 1dec600baf7..95295c23b0a 100644 --- a/service/s3/api_client.go +++ b/service/s3/api_client.go @@ -196,10 +196,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveHTTPSignerV4a(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/s3control/api_client.go b/service/s3control/api_client.go index ab2e295d97b..ee9e7b48715 100644 --- a/service/s3control/api_client.go +++ b/service/s3control/api_client.go @@ -192,10 +192,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/s3outposts/api_client.go b/service/s3outposts/api_client.go index 24838972b96..eb595853f92 100644 --- a/service/s3outposts/api_client.go +++ b/service/s3outposts/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sagemaker/api_client.go b/service/sagemaker/api_client.go index adfa020913a..3654321879e 100644 --- a/service/sagemaker/api_client.go +++ b/service/sagemaker/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sagemakera2iruntime/api_client.go b/service/sagemakera2iruntime/api_client.go index c5a580ca322..378215c9e93 100644 --- a/service/sagemakera2iruntime/api_client.go +++ b/service/sagemakera2iruntime/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sagemakeredge/api_client.go b/service/sagemakeredge/api_client.go index 05413c89828..86e5b69c78b 100644 --- a/service/sagemakeredge/api_client.go +++ b/service/sagemakeredge/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sagemakerfeaturestoreruntime/api_client.go b/service/sagemakerfeaturestoreruntime/api_client.go index 16a4f5a513d..5a914300969 100644 --- a/service/sagemakerfeaturestoreruntime/api_client.go +++ b/service/sagemakerfeaturestoreruntime/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sagemakergeospatial/api_client.go b/service/sagemakergeospatial/api_client.go index 6af4ad88041..6b4fe417a1b 100644 --- a/service/sagemakergeospatial/api_client.go +++ b/service/sagemakergeospatial/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sagemakermetrics/api_client.go b/service/sagemakermetrics/api_client.go index e1111d19454..8740e6f495d 100644 --- a/service/sagemakermetrics/api_client.go +++ b/service/sagemakermetrics/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sagemakerruntime/api_client.go b/service/sagemakerruntime/api_client.go index 30574dc0da5..0b578df3bc7 100644 --- a/service/sagemakerruntime/api_client.go +++ b/service/sagemakerruntime/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/savingsplans/api_client.go b/service/savingsplans/api_client.go index 585cb7f50cc..b359a958651 100644 --- a/service/savingsplans/api_client.go +++ b/service/savingsplans/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/scheduler/api_client.go b/service/scheduler/api_client.go index 69b9190d6ed..fdb98c03fab 100644 --- a/service/scheduler/api_client.go +++ b/service/scheduler/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/schemas/api_client.go b/service/schemas/api_client.go index 6b7176c056f..a97033d0b03 100644 --- a/service/schemas/api_client.go +++ b/service/schemas/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/secretsmanager/api_client.go b/service/secretsmanager/api_client.go index d4b0dbdb5c3..561278453c6 100644 --- a/service/secretsmanager/api_client.go +++ b/service/secretsmanager/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/securityhub/api_client.go b/service/securityhub/api_client.go index c6f72095f71..663fba6c582 100644 --- a/service/securityhub/api_client.go +++ b/service/securityhub/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/securitylake/api_client.go b/service/securitylake/api_client.go index a1d609b5a62..f7a1de299db 100644 --- a/service/securitylake/api_client.go +++ b/service/securitylake/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/serverlessapplicationrepository/api_client.go b/service/serverlessapplicationrepository/api_client.go index aa89dc9c170..c304ed3e298 100644 --- a/service/serverlessapplicationrepository/api_client.go +++ b/service/serverlessapplicationrepository/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/servicecatalog/api_client.go b/service/servicecatalog/api_client.go index 340355d6d28..c4f38a85de0 100644 --- a/service/servicecatalog/api_client.go +++ b/service/servicecatalog/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/servicecatalogappregistry/api_client.go b/service/servicecatalogappregistry/api_client.go index 397c8aaa69a..9ed987a4cdb 100644 --- a/service/servicecatalogappregistry/api_client.go +++ b/service/servicecatalogappregistry/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/servicediscovery/api_client.go b/service/servicediscovery/api_client.go index 97f6e2906ba..a75928e4c3b 100644 --- a/service/servicediscovery/api_client.go +++ b/service/servicediscovery/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/servicequotas/api_client.go b/service/servicequotas/api_client.go index 335ebad0ea3..0e696e94aac 100644 --- a/service/servicequotas/api_client.go +++ b/service/servicequotas/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ses/api_client.go b/service/ses/api_client.go index 50cf9a6a341..1f8076d5cba 100644 --- a/service/ses/api_client.go +++ b/service/ses/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sesv2/api_client.go b/service/sesv2/api_client.go index 30308ad6b41..d327ac7aacf 100644 --- a/service/sesv2/api_client.go +++ b/service/sesv2/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sfn/api_client.go b/service/sfn/api_client.go index 3e6c8d41ed8..e6005447993 100644 --- a/service/sfn/api_client.go +++ b/service/sfn/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/shield/api_client.go b/service/shield/api_client.go index 2fd5015a98e..6bf447355c3 100644 --- a/service/shield/api_client.go +++ b/service/shield/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/signer/api_client.go b/service/signer/api_client.go index afb19354e88..67dd7df91d0 100644 --- a/service/signer/api_client.go +++ b/service/signer/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/simspaceweaver/api_client.go b/service/simspaceweaver/api_client.go index 5c3fe117086..b2b2b67ccf4 100644 --- a/service/simspaceweaver/api_client.go +++ b/service/simspaceweaver/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sms/api_client.go b/service/sms/api_client.go index 32a303ac3bf..12b6f2ef8d1 100644 --- a/service/sms/api_client.go +++ b/service/sms/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/snowball/api_client.go b/service/snowball/api_client.go index a4554e7a555..911f664b1d2 100644 --- a/service/snowball/api_client.go +++ b/service/snowball/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/snowdevicemanagement/api_client.go b/service/snowdevicemanagement/api_client.go index 2583f155ea9..ea97dfd04e0 100644 --- a/service/snowdevicemanagement/api_client.go +++ b/service/snowdevicemanagement/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sns/api_client.go b/service/sns/api_client.go index e6250c8657a..41a17f508d8 100644 --- a/service/sns/api_client.go +++ b/service/sns/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sqs/api_client.go b/service/sqs/api_client.go index 05ec0ab7403..36b7ac52846 100644 --- a/service/sqs/api_client.go +++ b/service/sqs/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ssm/api_client.go b/service/ssm/api_client.go index a158aa729e9..6b40e85ed1f 100644 --- a/service/ssm/api_client.go +++ b/service/ssm/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ssmcontacts/api_client.go b/service/ssmcontacts/api_client.go index fe111807e8c..050200a5422 100644 --- a/service/ssmcontacts/api_client.go +++ b/service/ssmcontacts/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ssmincidents/api_client.go b/service/ssmincidents/api_client.go index 01bec53c3d3..65da058d8e8 100644 --- a/service/ssmincidents/api_client.go +++ b/service/ssmincidents/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ssmquicksetup/api_client.go b/service/ssmquicksetup/api_client.go index e3099ceca90..8586422c010 100644 --- a/service/ssmquicksetup/api_client.go +++ b/service/ssmquicksetup/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ssmsap/api_client.go b/service/ssmsap/api_client.go index 99f95d5ad0f..c85e9e895c5 100644 --- a/service/ssmsap/api_client.go +++ b/service/ssmsap/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sso/api_client.go b/service/sso/api_client.go index 274b15275be..fe8e46769da 100644 --- a/service/sso/api_client.go +++ b/service/sso/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ssoadmin/api_client.go b/service/ssoadmin/api_client.go index 3cb3165abb0..e4bbb0fcc89 100644 --- a/service/ssoadmin/api_client.go +++ b/service/ssoadmin/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/ssooidc/api_client.go b/service/ssooidc/api_client.go index 16c908212ed..aa1f3ab3160 100644 --- a/service/ssooidc/api_client.go +++ b/service/ssooidc/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/storagegateway/api_client.go b/service/storagegateway/api_client.go index e1f04b74cac..fb7a8f363c9 100644 --- a/service/storagegateway/api_client.go +++ b/service/storagegateway/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/sts/api_client.go b/service/sts/api_client.go index 4425ba95c49..0df1bddf741 100644 --- a/service/sts/api_client.go +++ b/service/sts/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/supplychain/api_client.go b/service/supplychain/api_client.go index 826d80a922f..7c89ddee9bc 100644 --- a/service/supplychain/api_client.go +++ b/service/supplychain/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/support/api_client.go b/service/support/api_client.go index 45c9184fcbf..45ad983e850 100644 --- a/service/support/api_client.go +++ b/service/support/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/supportapp/api_client.go b/service/supportapp/api_client.go index 1ccd637e9c4..6483740eebd 100644 --- a/service/supportapp/api_client.go +++ b/service/supportapp/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/swf/api_client.go b/service/swf/api_client.go index 088d2ce10f5..3be2b612c85 100644 --- a/service/swf/api_client.go +++ b/service/swf/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/synthetics/api_client.go b/service/synthetics/api_client.go index 724c5dd6cb7..05f9f1b9309 100644 --- a/service/synthetics/api_client.go +++ b/service/synthetics/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/taxsettings/api_client.go b/service/taxsettings/api_client.go index 0230dd6e673..84c53df3cd9 100644 --- a/service/taxsettings/api_client.go +++ b/service/taxsettings/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/textract/api_client.go b/service/textract/api_client.go index 721ee510e62..73343db7873 100644 --- a/service/textract/api_client.go +++ b/service/textract/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/timestreaminfluxdb/api_client.go b/service/timestreaminfluxdb/api_client.go index 6f947d237e5..9d9ae0b35b9 100644 --- a/service/timestreaminfluxdb/api_client.go +++ b/service/timestreaminfluxdb/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/timestreamquery/api_client.go b/service/timestreamquery/api_client.go index a75e8c7f871..b412ceeef3d 100644 --- a/service/timestreamquery/api_client.go +++ b/service/timestreamquery/api_client.go @@ -199,10 +199,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/timestreamwrite/api_client.go b/service/timestreamwrite/api_client.go index 0365e75bea3..97b233603f3 100644 --- a/service/timestreamwrite/api_client.go +++ b/service/timestreamwrite/api_client.go @@ -199,10 +199,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/tnb/api_client.go b/service/tnb/api_client.go index 5aea60fdd13..9137543d45c 100644 --- a/service/tnb/api_client.go +++ b/service/tnb/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/transcribe/api_client.go b/service/transcribe/api_client.go index 9983380dd43..d25e12fab6c 100644 --- a/service/transcribe/api_client.go +++ b/service/transcribe/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/transcribestreaming/api_client.go b/service/transcribestreaming/api_client.go index 0c2fc14292e..7a48b04fdda 100644 --- a/service/transcribestreaming/api_client.go +++ b/service/transcribestreaming/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/transfer/api_client.go b/service/transfer/api_client.go index e6f7981036d..d1fd72abdb4 100644 --- a/service/transfer/api_client.go +++ b/service/transfer/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/translate/api_client.go b/service/translate/api_client.go index 7e7b173b0b0..b50023d3001 100644 --- a/service/translate/api_client.go +++ b/service/translate/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/trustedadvisor/api_client.go b/service/trustedadvisor/api_client.go index 1a5d9dbea07..1f51ebb0ead 100644 --- a/service/trustedadvisor/api_client.go +++ b/service/trustedadvisor/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/verifiedpermissions/api_client.go b/service/verifiedpermissions/api_client.go index 9910f7c3fa7..39eaa6c326d 100644 --- a/service/verifiedpermissions/api_client.go +++ b/service/verifiedpermissions/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/voiceid/api_client.go b/service/voiceid/api_client.go index 31ed35a05fd..2240040f1cf 100644 --- a/service/voiceid/api_client.go +++ b/service/voiceid/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/vpclattice/api_client.go b/service/vpclattice/api_client.go index 9995a9cccb1..27d64cb7987 100644 --- a/service/vpclattice/api_client.go +++ b/service/vpclattice/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/waf/api_client.go b/service/waf/api_client.go index 18b95f3a65a..21d6abfc5bc 100644 --- a/service/waf/api_client.go +++ b/service/waf/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/wafregional/api_client.go b/service/wafregional/api_client.go index 32d6ecb618d..fb153e4f869 100644 --- a/service/wafregional/api_client.go +++ b/service/wafregional/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/wafv2/api_client.go b/service/wafv2/api_client.go index eb240619974..016612af0cc 100644 --- a/service/wafv2/api_client.go +++ b/service/wafv2/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/wellarchitected/api_client.go b/service/wellarchitected/api_client.go index c2168d6fc4e..401e5f56c02 100644 --- a/service/wellarchitected/api_client.go +++ b/service/wellarchitected/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/wisdom/api_client.go b/service/wisdom/api_client.go index 13dc35acc1f..4f031414e01 100644 --- a/service/wisdom/api_client.go +++ b/service/wisdom/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/workdocs/api_client.go b/service/workdocs/api_client.go index 6b9f17e22e9..03564076071 100644 --- a/service/workdocs/api_client.go +++ b/service/workdocs/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/workmail/api_client.go b/service/workmail/api_client.go index 046b38a0856..e1b4781b78e 100644 --- a/service/workmail/api_client.go +++ b/service/workmail/api_client.go @@ -190,10 +190,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/workmailmessageflow/api_client.go b/service/workmailmessageflow/api_client.go index ebd26deae08..c28fcc6a4ac 100644 --- a/service/workmailmessageflow/api_client.go +++ b/service/workmailmessageflow/api_client.go @@ -187,10 +187,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/workspaces/api_client.go b/service/workspaces/api_client.go index 29a0f0219a7..4447a1cb7bf 100644 --- a/service/workspaces/api_client.go +++ b/service/workspaces/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/workspacesthinclient/api_client.go b/service/workspacesthinclient/api_client.go index ed0d185d440..f337b41fb1d 100644 --- a/service/workspacesthinclient/api_client.go +++ b/service/workspacesthinclient/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/workspacesweb/api_client.go b/service/workspacesweb/api_client.go index b4b600c020a..4495b504818 100644 --- a/service/workspacesweb/api_client.go +++ b/service/workspacesweb/api_client.go @@ -191,10 +191,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/xray/api_client.go b/service/xray/api_client.go index 51e0374806a..75bdb030432 100644 --- a/service/xray/api_client.go +++ b/service/xray/api_client.go @@ -186,10 +186,10 @@ func New(options Options, optFns ...func(*Options)) *Client { resolveEndpointResolverV2(&options) - resolveMeterProvider(&options) - resolveTracerProvider(&options) + resolveMeterProvider(&options) + resolveAuthSchemeResolver(&options) for _, fn := range optFns { diff --git a/service/xray/internal/endpoints/endpoints.go b/service/xray/internal/endpoints/endpoints.go index c42bab1dc82..83d2dd33af3 100644 --- a/service/xray/internal/endpoints/endpoints.go +++ b/service/xray/internal/endpoints/endpoints.go @@ -375,6 +375,11 @@ var defaultPartitions = endpoints.Partitions{ }, RegionRegex: partitionRegexp.AwsIsoB, IsRegionalized: true, + Endpoints: endpoints.Endpoints{ + endpoints.EndpointKey{ + Region: "us-isob-east-1", + }: endpoints.Endpoint{}, + }, }, { ID: "aws-iso-e",