aws-sdk-s3control 1.30.0 → 1.31.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -20,6 +20,8 @@ module Aws::S3Control
20
20
  AccountId = Shapes::StringShape.new(name: 'AccountId')
21
21
  AccountLevel = Shapes::StructureShape.new(name: 'AccountLevel')
22
22
  ActivityMetrics = Shapes::StructureShape.new(name: 'ActivityMetrics')
23
+ AwsLambdaTransformation = Shapes::StructureShape.new(name: 'AwsLambdaTransformation')
24
+ AwsLambdaTransformationPayload = Shapes::StringShape.new(name: 'AwsLambdaTransformationPayload')
23
25
  AwsOrgArn = Shapes::StringShape.new(name: 'AwsOrgArn')
24
26
  BadRequestException = Shapes::StructureShape.new(name: 'BadRequestException')
25
27
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
@@ -34,6 +36,8 @@ module Aws::S3Control
34
36
  ConfirmRemoveSelfBucketAccess = Shapes::BooleanShape.new(name: 'ConfirmRemoveSelfBucketAccess')
35
37
  ConfirmationRequired = Shapes::BooleanShape.new(name: 'ConfirmationRequired')
36
38
  ContinuationToken = Shapes::StringShape.new(name: 'ContinuationToken')
39
+ CreateAccessPointForObjectLambdaRequest = Shapes::StructureShape.new(name: 'CreateAccessPointForObjectLambdaRequest')
40
+ CreateAccessPointForObjectLambdaResult = Shapes::StructureShape.new(name: 'CreateAccessPointForObjectLambdaResult')
37
41
  CreateAccessPointRequest = Shapes::StructureShape.new(name: 'CreateAccessPointRequest')
38
42
  CreateAccessPointResult = Shapes::StructureShape.new(name: 'CreateAccessPointResult')
39
43
  CreateBucketConfiguration = Shapes::StructureShape.new(name: 'CreateBucketConfiguration')
@@ -45,6 +49,8 @@ module Aws::S3Control
45
49
  Date = Shapes::TimestampShape.new(name: 'Date')
46
50
  Days = Shapes::IntegerShape.new(name: 'Days')
47
51
  DaysAfterInitiation = Shapes::IntegerShape.new(name: 'DaysAfterInitiation')
52
+ DeleteAccessPointForObjectLambdaRequest = Shapes::StructureShape.new(name: 'DeleteAccessPointForObjectLambdaRequest')
53
+ DeleteAccessPointPolicyForObjectLambdaRequest = Shapes::StructureShape.new(name: 'DeleteAccessPointPolicyForObjectLambdaRequest')
48
54
  DeleteAccessPointPolicyRequest = Shapes::StructureShape.new(name: 'DeleteAccessPointPolicyRequest')
49
55
  DeleteAccessPointRequest = Shapes::StructureShape.new(name: 'DeleteAccessPointRequest')
50
56
  DeleteBucketLifecycleConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteBucketLifecycleConfigurationRequest')
@@ -65,8 +71,16 @@ module Aws::S3Control
65
71
  ExpiredObjectDeleteMarker = Shapes::BooleanShape.new(name: 'ExpiredObjectDeleteMarker')
66
72
  Format = Shapes::StringShape.new(name: 'Format')
67
73
  FunctionArnString = Shapes::StringShape.new(name: 'FunctionArnString')
74
+ GetAccessPointConfigurationForObjectLambdaRequest = Shapes::StructureShape.new(name: 'GetAccessPointConfigurationForObjectLambdaRequest')
75
+ GetAccessPointConfigurationForObjectLambdaResult = Shapes::StructureShape.new(name: 'GetAccessPointConfigurationForObjectLambdaResult')
76
+ GetAccessPointForObjectLambdaRequest = Shapes::StructureShape.new(name: 'GetAccessPointForObjectLambdaRequest')
77
+ GetAccessPointForObjectLambdaResult = Shapes::StructureShape.new(name: 'GetAccessPointForObjectLambdaResult')
78
+ GetAccessPointPolicyForObjectLambdaRequest = Shapes::StructureShape.new(name: 'GetAccessPointPolicyForObjectLambdaRequest')
79
+ GetAccessPointPolicyForObjectLambdaResult = Shapes::StructureShape.new(name: 'GetAccessPointPolicyForObjectLambdaResult')
68
80
  GetAccessPointPolicyRequest = Shapes::StructureShape.new(name: 'GetAccessPointPolicyRequest')
69
81
  GetAccessPointPolicyResult = Shapes::StructureShape.new(name: 'GetAccessPointPolicyResult')
82
+ GetAccessPointPolicyStatusForObjectLambdaRequest = Shapes::StructureShape.new(name: 'GetAccessPointPolicyStatusForObjectLambdaRequest')
83
+ GetAccessPointPolicyStatusForObjectLambdaResult = Shapes::StructureShape.new(name: 'GetAccessPointPolicyStatusForObjectLambdaResult')
70
84
  GetAccessPointPolicyStatusRequest = Shapes::StructureShape.new(name: 'GetAccessPointPolicyStatusRequest')
71
85
  GetAccessPointPolicyStatusResult = Shapes::StructureShape.new(name: 'GetAccessPointPolicyStatusResult')
72
86
  GetAccessPointRequest = Shapes::StructureShape.new(name: 'GetAccessPointRequest')
@@ -139,6 +153,8 @@ module Aws::S3Control
139
153
  LifecycleRuleAndOperator = Shapes::StructureShape.new(name: 'LifecycleRuleAndOperator')
140
154
  LifecycleRuleFilter = Shapes::StructureShape.new(name: 'LifecycleRuleFilter')
141
155
  LifecycleRules = Shapes::ListShape.new(name: 'LifecycleRules')
156
+ ListAccessPointsForObjectLambdaRequest = Shapes::StructureShape.new(name: 'ListAccessPointsForObjectLambdaRequest')
157
+ ListAccessPointsForObjectLambdaResult = Shapes::StructureShape.new(name: 'ListAccessPointsForObjectLambdaResult')
142
158
  ListAccessPointsRequest = Shapes::StructureShape.new(name: 'ListAccessPointsRequest')
143
159
  ListAccessPointsResult = Shapes::StructureShape.new(name: 'ListAccessPointsResult')
144
160
  ListJobsRequest = Shapes::StructureShape.new(name: 'ListJobsRequest')
@@ -163,6 +179,20 @@ module Aws::S3Control
163
179
  NoncurrentVersionTransition = Shapes::StructureShape.new(name: 'NoncurrentVersionTransition')
164
180
  NoncurrentVersionTransitionList = Shapes::ListShape.new(name: 'NoncurrentVersionTransitionList')
165
181
  NotFoundException = Shapes::StructureShape.new(name: 'NotFoundException')
182
+ ObjectLambdaAccessPoint = Shapes::StructureShape.new(name: 'ObjectLambdaAccessPoint')
183
+ ObjectLambdaAccessPointArn = Shapes::StringShape.new(name: 'ObjectLambdaAccessPointArn')
184
+ ObjectLambdaAccessPointList = Shapes::ListShape.new(name: 'ObjectLambdaAccessPointList')
185
+ ObjectLambdaAccessPointName = Shapes::StringShape.new(name: 'ObjectLambdaAccessPointName')
186
+ ObjectLambdaAllowedFeature = Shapes::StringShape.new(name: 'ObjectLambdaAllowedFeature')
187
+ ObjectLambdaAllowedFeaturesList = Shapes::ListShape.new(name: 'ObjectLambdaAllowedFeaturesList')
188
+ ObjectLambdaConfiguration = Shapes::StructureShape.new(name: 'ObjectLambdaConfiguration')
189
+ ObjectLambdaContentTransformation = Shapes::StructureShape.new(name: 'ObjectLambdaContentTransformation')
190
+ ObjectLambdaPolicy = Shapes::StringShape.new(name: 'ObjectLambdaPolicy')
191
+ ObjectLambdaSupportingAccessPointArn = Shapes::StringShape.new(name: 'ObjectLambdaSupportingAccessPointArn')
192
+ ObjectLambdaTransformationConfiguration = Shapes::StructureShape.new(name: 'ObjectLambdaTransformationConfiguration')
193
+ ObjectLambdaTransformationConfigurationAction = Shapes::StringShape.new(name: 'ObjectLambdaTransformationConfigurationAction')
194
+ ObjectLambdaTransformationConfigurationActionsList = Shapes::ListShape.new(name: 'ObjectLambdaTransformationConfigurationActionsList')
195
+ ObjectLambdaTransformationConfigurationsList = Shapes::ListShape.new(name: 'ObjectLambdaTransformationConfigurationsList')
166
196
  ObjectLockEnabledForBucket = Shapes::BooleanShape.new(name: 'ObjectLockEnabledForBucket')
167
197
  OperationName = Shapes::StringShape.new(name: 'OperationName')
168
198
  OutputSchemaVersion = Shapes::StringShape.new(name: 'OutputSchemaVersion')
@@ -173,6 +203,8 @@ module Aws::S3Control
173
203
  PrefixLevelStorageMetrics = Shapes::StructureShape.new(name: 'PrefixLevelStorageMetrics')
174
204
  PublicAccessBlockConfiguration = Shapes::StructureShape.new(name: 'PublicAccessBlockConfiguration')
175
205
  PublicAccessBlockEnabled = Shapes::BooleanShape.new(name: 'PublicAccessBlockEnabled')
206
+ PutAccessPointConfigurationForObjectLambdaRequest = Shapes::StructureShape.new(name: 'PutAccessPointConfigurationForObjectLambdaRequest')
207
+ PutAccessPointPolicyForObjectLambdaRequest = Shapes::StructureShape.new(name: 'PutAccessPointPolicyForObjectLambdaRequest')
176
208
  PutAccessPointPolicyRequest = Shapes::StructureShape.new(name: 'PutAccessPointPolicyRequest')
177
209
  PutBucketLifecycleConfigurationRequest = Shapes::StructureShape.new(name: 'PutBucketLifecycleConfigurationRequest')
178
210
  PutBucketPolicyRequest = Shapes::StructureShape.new(name: 'PutBucketPolicyRequest')
@@ -279,6 +311,10 @@ module Aws::S3Control
279
311
  ActivityMetrics.add_member(:is_enabled, Shapes::ShapeRef.new(shape: IsEnabled, location_name: "IsEnabled"))
280
312
  ActivityMetrics.struct_class = Types::ActivityMetrics
281
313
 
314
+ AwsLambdaTransformation.add_member(:function_arn, Shapes::ShapeRef.new(shape: FunctionArnString, required: true, location_name: "FunctionArn"))
315
+ AwsLambdaTransformation.add_member(:function_payload, Shapes::ShapeRef.new(shape: AwsLambdaTransformationPayload, location_name: "FunctionPayload"))
316
+ AwsLambdaTransformation.struct_class = Types::AwsLambdaTransformation
317
+
282
318
  BadRequestException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
283
319
  BadRequestException.struct_class = Types::BadRequestException
284
320
 
@@ -292,6 +328,14 @@ module Aws::S3Control
292
328
 
293
329
  Buckets.member = Shapes::ShapeRef.new(shape: S3BucketArnString, location_name: "Arn")
294
330
 
331
+ CreateAccessPointForObjectLambdaRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
332
+ CreateAccessPointForObjectLambdaRequest.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location: "uri", location_name: "name"))
333
+ CreateAccessPointForObjectLambdaRequest.add_member(:configuration, Shapes::ShapeRef.new(shape: ObjectLambdaConfiguration, required: true, location_name: "Configuration"))
334
+ CreateAccessPointForObjectLambdaRequest.struct_class = Types::CreateAccessPointForObjectLambdaRequest
335
+
336
+ CreateAccessPointForObjectLambdaResult.add_member(:object_lambda_access_point_arn, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointArn, location_name: "ObjectLambdaAccessPointArn"))
337
+ CreateAccessPointForObjectLambdaResult.struct_class = Types::CreateAccessPointForObjectLambdaResult
338
+
295
339
  CreateAccessPointRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
296
340
  CreateAccessPointRequest.add_member(:name, Shapes::ShapeRef.new(shape: AccessPointName, required: true, location: "uri", location_name: "name"))
297
341
  CreateAccessPointRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location_name: "Bucket"))
@@ -338,6 +382,14 @@ module Aws::S3Control
338
382
  CreateJobResult.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, location_name: "JobId"))
339
383
  CreateJobResult.struct_class = Types::CreateJobResult
340
384
 
385
+ DeleteAccessPointForObjectLambdaRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
386
+ DeleteAccessPointForObjectLambdaRequest.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location: "uri", location_name: "name"))
387
+ DeleteAccessPointForObjectLambdaRequest.struct_class = Types::DeleteAccessPointForObjectLambdaRequest
388
+
389
+ DeleteAccessPointPolicyForObjectLambdaRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
390
+ DeleteAccessPointPolicyForObjectLambdaRequest.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location: "uri", location_name: "name"))
391
+ DeleteAccessPointPolicyForObjectLambdaRequest.struct_class = Types::DeleteAccessPointPolicyForObjectLambdaRequest
392
+
341
393
  DeleteAccessPointPolicyRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
342
394
  DeleteAccessPointPolicyRequest.add_member(:name, Shapes::ShapeRef.new(shape: AccessPointName, required: true, location: "uri", location_name: "name"))
343
395
  DeleteAccessPointPolicyRequest.struct_class = Types::DeleteAccessPointPolicyRequest
@@ -392,6 +444,29 @@ module Aws::S3Control
392
444
  Exclude.add_member(:regions, Shapes::ShapeRef.new(shape: Regions, location_name: "Regions"))
393
445
  Exclude.struct_class = Types::Exclude
394
446
 
447
+ GetAccessPointConfigurationForObjectLambdaRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
448
+ GetAccessPointConfigurationForObjectLambdaRequest.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location: "uri", location_name: "name"))
449
+ GetAccessPointConfigurationForObjectLambdaRequest.struct_class = Types::GetAccessPointConfigurationForObjectLambdaRequest
450
+
451
+ GetAccessPointConfigurationForObjectLambdaResult.add_member(:configuration, Shapes::ShapeRef.new(shape: ObjectLambdaConfiguration, location_name: "Configuration"))
452
+ GetAccessPointConfigurationForObjectLambdaResult.struct_class = Types::GetAccessPointConfigurationForObjectLambdaResult
453
+
454
+ GetAccessPointForObjectLambdaRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
455
+ GetAccessPointForObjectLambdaRequest.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location: "uri", location_name: "name"))
456
+ GetAccessPointForObjectLambdaRequest.struct_class = Types::GetAccessPointForObjectLambdaRequest
457
+
458
+ GetAccessPointForObjectLambdaResult.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, location_name: "Name"))
459
+ GetAccessPointForObjectLambdaResult.add_member(:public_access_block_configuration, Shapes::ShapeRef.new(shape: PublicAccessBlockConfiguration, location_name: "PublicAccessBlockConfiguration"))
460
+ GetAccessPointForObjectLambdaResult.add_member(:creation_date, Shapes::ShapeRef.new(shape: CreationDate, location_name: "CreationDate"))
461
+ GetAccessPointForObjectLambdaResult.struct_class = Types::GetAccessPointForObjectLambdaResult
462
+
463
+ GetAccessPointPolicyForObjectLambdaRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
464
+ GetAccessPointPolicyForObjectLambdaRequest.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location: "uri", location_name: "name"))
465
+ GetAccessPointPolicyForObjectLambdaRequest.struct_class = Types::GetAccessPointPolicyForObjectLambdaRequest
466
+
467
+ GetAccessPointPolicyForObjectLambdaResult.add_member(:policy, Shapes::ShapeRef.new(shape: ObjectLambdaPolicy, location_name: "Policy"))
468
+ GetAccessPointPolicyForObjectLambdaResult.struct_class = Types::GetAccessPointPolicyForObjectLambdaResult
469
+
395
470
  GetAccessPointPolicyRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
396
471
  GetAccessPointPolicyRequest.add_member(:name, Shapes::ShapeRef.new(shape: AccessPointName, required: true, location: "uri", location_name: "name"))
397
472
  GetAccessPointPolicyRequest.struct_class = Types::GetAccessPointPolicyRequest
@@ -399,6 +474,13 @@ module Aws::S3Control
399
474
  GetAccessPointPolicyResult.add_member(:policy, Shapes::ShapeRef.new(shape: Policy, location_name: "Policy"))
400
475
  GetAccessPointPolicyResult.struct_class = Types::GetAccessPointPolicyResult
401
476
 
477
+ GetAccessPointPolicyStatusForObjectLambdaRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
478
+ GetAccessPointPolicyStatusForObjectLambdaRequest.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location: "uri", location_name: "name"))
479
+ GetAccessPointPolicyStatusForObjectLambdaRequest.struct_class = Types::GetAccessPointPolicyStatusForObjectLambdaRequest
480
+
481
+ GetAccessPointPolicyStatusForObjectLambdaResult.add_member(:policy_status, Shapes::ShapeRef.new(shape: PolicyStatus, location_name: "PolicyStatus"))
482
+ GetAccessPointPolicyStatusForObjectLambdaResult.struct_class = Types::GetAccessPointPolicyStatusForObjectLambdaResult
483
+
402
484
  GetAccessPointPolicyStatusRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
403
485
  GetAccessPointPolicyStatusRequest.add_member(:name, Shapes::ShapeRef.new(shape: AccessPointName, required: true, location: "uri", location_name: "name"))
404
486
  GetAccessPointPolicyStatusRequest.struct_class = Types::GetAccessPointPolicyStatusRequest
@@ -606,6 +688,15 @@ module Aws::S3Control
606
688
 
607
689
  LifecycleRules.member = Shapes::ShapeRef.new(shape: LifecycleRule, location_name: "Rule")
608
690
 
691
+ ListAccessPointsForObjectLambdaRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
692
+ ListAccessPointsForObjectLambdaRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NonEmptyMaxLength1024String, location: "querystring", location_name: "nextToken"))
693
+ ListAccessPointsForObjectLambdaRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
694
+ ListAccessPointsForObjectLambdaRequest.struct_class = Types::ListAccessPointsForObjectLambdaRequest
695
+
696
+ ListAccessPointsForObjectLambdaResult.add_member(:object_lambda_access_point_list, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointList, location_name: "ObjectLambdaAccessPointList"))
697
+ ListAccessPointsForObjectLambdaResult.add_member(:next_token, Shapes::ShapeRef.new(shape: NonEmptyMaxLength1024String, location_name: "NextToken"))
698
+ ListAccessPointsForObjectLambdaResult.struct_class = Types::ListAccessPointsForObjectLambdaResult
699
+
609
700
  ListAccessPointsRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
610
701
  ListAccessPointsRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, location: "querystring", location_name: "bucket"))
611
702
  ListAccessPointsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NonEmptyMaxLength1024String, location: "querystring", location_name: "nextToken"))
@@ -665,6 +756,31 @@ module Aws::S3Control
665
756
  NotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
666
757
  NotFoundException.struct_class = Types::NotFoundException
667
758
 
759
+ ObjectLambdaAccessPoint.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location_name: "Name"))
760
+ ObjectLambdaAccessPoint.add_member(:object_lambda_access_point_arn, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointArn, location_name: "ObjectLambdaAccessPointArn"))
761
+ ObjectLambdaAccessPoint.struct_class = Types::ObjectLambdaAccessPoint
762
+
763
+ ObjectLambdaAccessPointList.member = Shapes::ShapeRef.new(shape: ObjectLambdaAccessPoint, location_name: "ObjectLambdaAccessPoint")
764
+
765
+ ObjectLambdaAllowedFeaturesList.member = Shapes::ShapeRef.new(shape: ObjectLambdaAllowedFeature, location_name: "AllowedFeature")
766
+
767
+ ObjectLambdaConfiguration.add_member(:supporting_access_point, Shapes::ShapeRef.new(shape: ObjectLambdaSupportingAccessPointArn, required: true, location_name: "SupportingAccessPoint"))
768
+ ObjectLambdaConfiguration.add_member(:cloud_watch_metrics_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "CloudWatchMetricsEnabled"))
769
+ ObjectLambdaConfiguration.add_member(:allowed_features, Shapes::ShapeRef.new(shape: ObjectLambdaAllowedFeaturesList, location_name: "AllowedFeatures"))
770
+ ObjectLambdaConfiguration.add_member(:transformation_configurations, Shapes::ShapeRef.new(shape: ObjectLambdaTransformationConfigurationsList, required: true, location_name: "TransformationConfigurations"))
771
+ ObjectLambdaConfiguration.struct_class = Types::ObjectLambdaConfiguration
772
+
773
+ ObjectLambdaContentTransformation.add_member(:aws_lambda, Shapes::ShapeRef.new(shape: AwsLambdaTransformation, location_name: "AwsLambda"))
774
+ ObjectLambdaContentTransformation.struct_class = Types::ObjectLambdaContentTransformation
775
+
776
+ ObjectLambdaTransformationConfiguration.add_member(:actions, Shapes::ShapeRef.new(shape: ObjectLambdaTransformationConfigurationActionsList, required: true, location_name: "Actions"))
777
+ ObjectLambdaTransformationConfiguration.add_member(:content_transformation, Shapes::ShapeRef.new(shape: ObjectLambdaContentTransformation, required: true, location_name: "ContentTransformation"))
778
+ ObjectLambdaTransformationConfiguration.struct_class = Types::ObjectLambdaTransformationConfiguration
779
+
780
+ ObjectLambdaTransformationConfigurationActionsList.member = Shapes::ShapeRef.new(shape: ObjectLambdaTransformationConfigurationAction, location_name: "Action")
781
+
782
+ ObjectLambdaTransformationConfigurationsList.member = Shapes::ShapeRef.new(shape: ObjectLambdaTransformationConfiguration, location_name: "TransformationConfiguration")
783
+
668
784
  PolicyStatus.add_member(:is_public, Shapes::ShapeRef.new(shape: IsPublic, location_name: "IsPublic"))
669
785
  PolicyStatus.struct_class = Types::PolicyStatus
670
786
 
@@ -681,6 +797,16 @@ module Aws::S3Control
681
797
  PublicAccessBlockConfiguration.add_member(:restrict_public_buckets, Shapes::ShapeRef.new(shape: Setting, location_name: "RestrictPublicBuckets"))
682
798
  PublicAccessBlockConfiguration.struct_class = Types::PublicAccessBlockConfiguration
683
799
 
800
+ PutAccessPointConfigurationForObjectLambdaRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
801
+ PutAccessPointConfigurationForObjectLambdaRequest.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location: "uri", location_name: "name"))
802
+ PutAccessPointConfigurationForObjectLambdaRequest.add_member(:configuration, Shapes::ShapeRef.new(shape: ObjectLambdaConfiguration, required: true, location_name: "Configuration"))
803
+ PutAccessPointConfigurationForObjectLambdaRequest.struct_class = Types::PutAccessPointConfigurationForObjectLambdaRequest
804
+
805
+ PutAccessPointPolicyForObjectLambdaRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
806
+ PutAccessPointPolicyForObjectLambdaRequest.add_member(:name, Shapes::ShapeRef.new(shape: ObjectLambdaAccessPointName, required: true, location: "uri", location_name: "name"))
807
+ PutAccessPointPolicyForObjectLambdaRequest.add_member(:policy, Shapes::ShapeRef.new(shape: ObjectLambdaPolicy, required: true, location_name: "Policy"))
808
+ PutAccessPointPolicyForObjectLambdaRequest.struct_class = Types::PutAccessPointPolicyForObjectLambdaRequest
809
+
684
810
  PutAccessPointPolicyRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location: "header", location_name: "x-amz-account-id", metadata: {"hostLabel"=>true, "hostLabelName"=>"AccountId"}))
685
811
  PutAccessPointPolicyRequest.add_member(:name, Shapes::ShapeRef.new(shape: AccessPointName, required: true, location: "uri", location_name: "name"))
686
812
  PutAccessPointPolicyRequest.add_member(:policy, Shapes::ShapeRef.new(shape: Policy, required: true, location_name: "Policy"))
@@ -950,6 +1076,22 @@ module Aws::S3Control
950
1076
  o.output = Shapes::ShapeRef.new(shape: CreateAccessPointResult)
951
1077
  end)
952
1078
 
1079
+ api.add_operation(:create_access_point_for_object_lambda, Seahorse::Model::Operation.new.tap do |o|
1080
+ o.name = "CreateAccessPointForObjectLambda"
1081
+ o.http_method = "PUT"
1082
+ o.http_request_uri = "/v20180820/accesspointforobjectlambda/{name}"
1083
+ o.endpoint_pattern = {
1084
+ "hostPrefix" => "{AccountId}.",
1085
+ }
1086
+ o.input = Shapes::ShapeRef.new(shape: CreateAccessPointForObjectLambdaRequest,
1087
+ location_name: "CreateAccessPointForObjectLambdaRequest",
1088
+ metadata: {
1089
+ "xmlNamespace" => {"uri"=>"http://awss3control.amazonaws.com/doc/2018-08-20/"}
1090
+ }
1091
+ )
1092
+ o.output = Shapes::ShapeRef.new(shape: CreateAccessPointForObjectLambdaResult)
1093
+ end)
1094
+
953
1095
  api.add_operation(:create_bucket, Seahorse::Model::Operation.new.tap do |o|
954
1096
  o.name = "CreateBucket"
955
1097
  o.http_method = "PUT"
@@ -992,6 +1134,17 @@ module Aws::S3Control
992
1134
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
993
1135
  end)
994
1136
 
1137
+ api.add_operation(:delete_access_point_for_object_lambda, Seahorse::Model::Operation.new.tap do |o|
1138
+ o.name = "DeleteAccessPointForObjectLambda"
1139
+ o.http_method = "DELETE"
1140
+ o.http_request_uri = "/v20180820/accesspointforobjectlambda/{name}"
1141
+ o.endpoint_pattern = {
1142
+ "hostPrefix" => "{AccountId}.",
1143
+ }
1144
+ o.input = Shapes::ShapeRef.new(shape: DeleteAccessPointForObjectLambdaRequest)
1145
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1146
+ end)
1147
+
995
1148
  api.add_operation(:delete_access_point_policy, Seahorse::Model::Operation.new.tap do |o|
996
1149
  o.name = "DeleteAccessPointPolicy"
997
1150
  o.http_method = "DELETE"
@@ -1003,6 +1156,17 @@ module Aws::S3Control
1003
1156
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1004
1157
  end)
1005
1158
 
1159
+ api.add_operation(:delete_access_point_policy_for_object_lambda, Seahorse::Model::Operation.new.tap do |o|
1160
+ o.name = "DeleteAccessPointPolicyForObjectLambda"
1161
+ o.http_method = "DELETE"
1162
+ o.http_request_uri = "/v20180820/accesspointforobjectlambda/{name}/policy"
1163
+ o.endpoint_pattern = {
1164
+ "hostPrefix" => "{AccountId}.",
1165
+ }
1166
+ o.input = Shapes::ShapeRef.new(shape: DeleteAccessPointPolicyForObjectLambdaRequest)
1167
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1168
+ end)
1169
+
1006
1170
  api.add_operation(:delete_bucket, Seahorse::Model::Operation.new.tap do |o|
1007
1171
  o.name = "DeleteBucket"
1008
1172
  o.http_method = "DELETE"
@@ -1120,6 +1284,28 @@ module Aws::S3Control
1120
1284
  o.output = Shapes::ShapeRef.new(shape: GetAccessPointResult)
1121
1285
  end)
1122
1286
 
1287
+ api.add_operation(:get_access_point_configuration_for_object_lambda, Seahorse::Model::Operation.new.tap do |o|
1288
+ o.name = "GetAccessPointConfigurationForObjectLambda"
1289
+ o.http_method = "GET"
1290
+ o.http_request_uri = "/v20180820/accesspointforobjectlambda/{name}/configuration"
1291
+ o.endpoint_pattern = {
1292
+ "hostPrefix" => "{AccountId}.",
1293
+ }
1294
+ o.input = Shapes::ShapeRef.new(shape: GetAccessPointConfigurationForObjectLambdaRequest)
1295
+ o.output = Shapes::ShapeRef.new(shape: GetAccessPointConfigurationForObjectLambdaResult)
1296
+ end)
1297
+
1298
+ api.add_operation(:get_access_point_for_object_lambda, Seahorse::Model::Operation.new.tap do |o|
1299
+ o.name = "GetAccessPointForObjectLambda"
1300
+ o.http_method = "GET"
1301
+ o.http_request_uri = "/v20180820/accesspointforobjectlambda/{name}"
1302
+ o.endpoint_pattern = {
1303
+ "hostPrefix" => "{AccountId}.",
1304
+ }
1305
+ o.input = Shapes::ShapeRef.new(shape: GetAccessPointForObjectLambdaRequest)
1306
+ o.output = Shapes::ShapeRef.new(shape: GetAccessPointForObjectLambdaResult)
1307
+ end)
1308
+
1123
1309
  api.add_operation(:get_access_point_policy, Seahorse::Model::Operation.new.tap do |o|
1124
1310
  o.name = "GetAccessPointPolicy"
1125
1311
  o.http_method = "GET"
@@ -1131,6 +1317,17 @@ module Aws::S3Control
1131
1317
  o.output = Shapes::ShapeRef.new(shape: GetAccessPointPolicyResult)
1132
1318
  end)
1133
1319
 
1320
+ api.add_operation(:get_access_point_policy_for_object_lambda, Seahorse::Model::Operation.new.tap do |o|
1321
+ o.name = "GetAccessPointPolicyForObjectLambda"
1322
+ o.http_method = "GET"
1323
+ o.http_request_uri = "/v20180820/accesspointforobjectlambda/{name}/policy"
1324
+ o.endpoint_pattern = {
1325
+ "hostPrefix" => "{AccountId}.",
1326
+ }
1327
+ o.input = Shapes::ShapeRef.new(shape: GetAccessPointPolicyForObjectLambdaRequest)
1328
+ o.output = Shapes::ShapeRef.new(shape: GetAccessPointPolicyForObjectLambdaResult)
1329
+ end)
1330
+
1134
1331
  api.add_operation(:get_access_point_policy_status, Seahorse::Model::Operation.new.tap do |o|
1135
1332
  o.name = "GetAccessPointPolicyStatus"
1136
1333
  o.http_method = "GET"
@@ -1142,6 +1339,17 @@ module Aws::S3Control
1142
1339
  o.output = Shapes::ShapeRef.new(shape: GetAccessPointPolicyStatusResult)
1143
1340
  end)
1144
1341
 
1342
+ api.add_operation(:get_access_point_policy_status_for_object_lambda, Seahorse::Model::Operation.new.tap do |o|
1343
+ o.name = "GetAccessPointPolicyStatusForObjectLambda"
1344
+ o.http_method = "GET"
1345
+ o.http_request_uri = "/v20180820/accesspointforobjectlambda/{name}/policyStatus"
1346
+ o.endpoint_pattern = {
1347
+ "hostPrefix" => "{AccountId}.",
1348
+ }
1349
+ o.input = Shapes::ShapeRef.new(shape: GetAccessPointPolicyStatusForObjectLambdaRequest)
1350
+ o.output = Shapes::ShapeRef.new(shape: GetAccessPointPolicyStatusForObjectLambdaResult)
1351
+ end)
1352
+
1145
1353
  api.add_operation(:get_bucket, Seahorse::Model::Operation.new.tap do |o|
1146
1354
  o.name = "GetBucket"
1147
1355
  o.http_method = "GET"
@@ -1251,6 +1459,23 @@ module Aws::S3Control
1251
1459
  )
1252
1460
  end)
1253
1461
 
1462
+ api.add_operation(:list_access_points_for_object_lambda, Seahorse::Model::Operation.new.tap do |o|
1463
+ o.name = "ListAccessPointsForObjectLambda"
1464
+ o.http_method = "GET"
1465
+ o.http_request_uri = "/v20180820/accesspointforobjectlambda"
1466
+ o.endpoint_pattern = {
1467
+ "hostPrefix" => "{AccountId}.",
1468
+ }
1469
+ o.input = Shapes::ShapeRef.new(shape: ListAccessPointsForObjectLambdaRequest)
1470
+ o.output = Shapes::ShapeRef.new(shape: ListAccessPointsForObjectLambdaResult)
1471
+ o[:pager] = Aws::Pager.new(
1472
+ limit_key: "max_results",
1473
+ tokens: {
1474
+ "next_token" => "next_token"
1475
+ }
1476
+ )
1477
+ end)
1478
+
1254
1479
  api.add_operation(:list_jobs, Seahorse::Model::Operation.new.tap do |o|
1255
1480
  o.name = "ListJobs"
1256
1481
  o.http_method = "GET"
@@ -1299,6 +1524,22 @@ module Aws::S3Control
1299
1524
  o.output = Shapes::ShapeRef.new(shape: ListStorageLensConfigurationsResult)
1300
1525
  end)
1301
1526
 
1527
+ api.add_operation(:put_access_point_configuration_for_object_lambda, Seahorse::Model::Operation.new.tap do |o|
1528
+ o.name = "PutAccessPointConfigurationForObjectLambda"
1529
+ o.http_method = "PUT"
1530
+ o.http_request_uri = "/v20180820/accesspointforobjectlambda/{name}/configuration"
1531
+ o.endpoint_pattern = {
1532
+ "hostPrefix" => "{AccountId}.",
1533
+ }
1534
+ o.input = Shapes::ShapeRef.new(shape: PutAccessPointConfigurationForObjectLambdaRequest,
1535
+ location_name: "PutAccessPointConfigurationForObjectLambdaRequest",
1536
+ metadata: {
1537
+ "xmlNamespace" => {"uri"=>"http://awss3control.amazonaws.com/doc/2018-08-20/"}
1538
+ }
1539
+ )
1540
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1541
+ end)
1542
+
1302
1543
  api.add_operation(:put_access_point_policy, Seahorse::Model::Operation.new.tap do |o|
1303
1544
  o.name = "PutAccessPointPolicy"
1304
1545
  o.http_method = "PUT"
@@ -1315,6 +1556,22 @@ module Aws::S3Control
1315
1556
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1316
1557
  end)
1317
1558
 
1559
+ api.add_operation(:put_access_point_policy_for_object_lambda, Seahorse::Model::Operation.new.tap do |o|
1560
+ o.name = "PutAccessPointPolicyForObjectLambda"
1561
+ o.http_method = "PUT"
1562
+ o.http_request_uri = "/v20180820/accesspointforobjectlambda/{name}/policy"
1563
+ o.endpoint_pattern = {
1564
+ "hostPrefix" => "{AccountId}.",
1565
+ }
1566
+ o.input = Shapes::ShapeRef.new(shape: PutAccessPointPolicyForObjectLambdaRequest,
1567
+ location_name: "PutAccessPointPolicyForObjectLambdaRequest",
1568
+ metadata: {
1569
+ "xmlNamespace" => {"uri"=>"http://awss3control.amazonaws.com/doc/2018-08-20/"}
1570
+ }
1571
+ )
1572
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1573
+ end)
1574
+
1318
1575
  api.add_operation(:put_bucket_lifecycle_configuration, Seahorse::Model::Operation.new.tap do |o|
1319
1576
  o.name = "PutBucketLifecycleConfiguration"
1320
1577
  o.http_method = "PUT"
@@ -137,6 +137,35 @@ module Aws::S3Control
137
137
  include Aws::Structure
138
138
  end
139
139
 
140
+ # AWS Lambda function used to transform objects through an Object Lambda
141
+ # Access Point.
142
+ #
143
+ # @note When making an API call, you may pass AwsLambdaTransformation
144
+ # data as a hash:
145
+ #
146
+ # {
147
+ # function_arn: "FunctionArnString", # required
148
+ # function_payload: "AwsLambdaTransformationPayload",
149
+ # }
150
+ #
151
+ # @!attribute [rw] function_arn
152
+ # The Amazon Resource Name (ARN) of the AWS Lambda function.
153
+ # @return [String]
154
+ #
155
+ # @!attribute [rw] function_payload
156
+ # Additional JSON that provides supplemental data to the Lambda
157
+ # function used to transform objects.
158
+ # @return [String]
159
+ #
160
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/AwsLambdaTransformation AWS API Documentation
161
+ #
162
+ class AwsLambdaTransformation < Struct.new(
163
+ :function_arn,
164
+ :function_payload)
165
+ SENSITIVE = []
166
+ include Aws::Structure
167
+ end
168
+
140
169
  # @!attribute [rw] message
141
170
  # @return [String]
142
171
  #
@@ -203,6 +232,65 @@ module Aws::S3Control
203
232
  include Aws::Structure
204
233
  end
205
234
 
235
+ # @note When making an API call, you may pass CreateAccessPointForObjectLambdaRequest
236
+ # data as a hash:
237
+ #
238
+ # {
239
+ # account_id: "AccountId", # required
240
+ # name: "ObjectLambdaAccessPointName", # required
241
+ # configuration: { # required
242
+ # supporting_access_point: "ObjectLambdaSupportingAccessPointArn", # required
243
+ # cloud_watch_metrics_enabled: false,
244
+ # allowed_features: ["GetObject-Range"], # accepts GetObject-Range, GetObject-PartNumber
245
+ # transformation_configurations: [ # required
246
+ # {
247
+ # actions: ["GetObject"], # required, accepts GetObject
248
+ # content_transformation: { # required
249
+ # aws_lambda: {
250
+ # function_arn: "FunctionArnString", # required
251
+ # function_payload: "AwsLambdaTransformationPayload",
252
+ # },
253
+ # },
254
+ # },
255
+ # ],
256
+ # },
257
+ # }
258
+ #
259
+ # @!attribute [rw] account_id
260
+ # The AWS account ID for owner of the specified Object Lambda Access
261
+ # Point.
262
+ # @return [String]
263
+ #
264
+ # @!attribute [rw] name
265
+ # The name you want to assign to this Object Lambda Access Point.
266
+ # @return [String]
267
+ #
268
+ # @!attribute [rw] configuration
269
+ # Object Lambda Access Point configuration as a JSON document.
270
+ # @return [Types::ObjectLambdaConfiguration]
271
+ #
272
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessPointForObjectLambdaRequest AWS API Documentation
273
+ #
274
+ class CreateAccessPointForObjectLambdaRequest < Struct.new(
275
+ :account_id,
276
+ :name,
277
+ :configuration)
278
+ SENSITIVE = []
279
+ include Aws::Structure
280
+ end
281
+
282
+ # @!attribute [rw] object_lambda_access_point_arn
283
+ # Specifies the ARN for the Object Lambda Access Point.
284
+ # @return [String]
285
+ #
286
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/CreateAccessPointForObjectLambdaResult AWS API Documentation
287
+ #
288
+ class CreateAccessPointForObjectLambdaResult < Struct.new(
289
+ :object_lambda_access_point_arn)
290
+ SENSITIVE = []
291
+ include Aws::Structure
292
+ end
293
+
206
294
  # @note When making an API call, you may pass CreateAccessPointRequest
207
295
  # data as a hash:
208
296
  #
@@ -697,6 +785,59 @@ module Aws::S3Control
697
785
  include Aws::Structure
698
786
  end
699
787
 
788
+ # @note When making an API call, you may pass DeleteAccessPointForObjectLambdaRequest
789
+ # data as a hash:
790
+ #
791
+ # {
792
+ # account_id: "AccountId", # required
793
+ # name: "ObjectLambdaAccessPointName", # required
794
+ # }
795
+ #
796
+ # @!attribute [rw] account_id
797
+ # The account ID for the account that owns the specified Object Lambda
798
+ # Access Point.
799
+ # @return [String]
800
+ #
801
+ # @!attribute [rw] name
802
+ # The name of the access point you want to delete.
803
+ # @return [String]
804
+ #
805
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessPointForObjectLambdaRequest AWS API Documentation
806
+ #
807
+ class DeleteAccessPointForObjectLambdaRequest < Struct.new(
808
+ :account_id,
809
+ :name)
810
+ SENSITIVE = []
811
+ include Aws::Structure
812
+ end
813
+
814
+ # @note When making an API call, you may pass DeleteAccessPointPolicyForObjectLambdaRequest
815
+ # data as a hash:
816
+ #
817
+ # {
818
+ # account_id: "AccountId", # required
819
+ # name: "ObjectLambdaAccessPointName", # required
820
+ # }
821
+ #
822
+ # @!attribute [rw] account_id
823
+ # The account ID for the account that owns the specified Object Lambda
824
+ # Access Point.
825
+ # @return [String]
826
+ #
827
+ # @!attribute [rw] name
828
+ # The name of the Object Lambda Access Point you want to delete the
829
+ # policy for.
830
+ # @return [String]
831
+ #
832
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/DeleteAccessPointPolicyForObjectLambdaRequest AWS API Documentation
833
+ #
834
+ class DeleteAccessPointPolicyForObjectLambdaRequest < Struct.new(
835
+ :account_id,
836
+ :name)
837
+ SENSITIVE = []
838
+ include Aws::Structure
839
+ end
840
+
700
841
  # @note When making an API call, you may pass DeleteAccessPointPolicyRequest
701
842
  # data as a hash:
702
843
  #
@@ -1090,6 +1231,133 @@ module Aws::S3Control
1090
1231
  include Aws::Structure
1091
1232
  end
1092
1233
 
1234
+ # @note When making an API call, you may pass GetAccessPointConfigurationForObjectLambdaRequest
1235
+ # data as a hash:
1236
+ #
1237
+ # {
1238
+ # account_id: "AccountId", # required
1239
+ # name: "ObjectLambdaAccessPointName", # required
1240
+ # }
1241
+ #
1242
+ # @!attribute [rw] account_id
1243
+ # The account ID for the account that owns the specified Object Lambda
1244
+ # Access Point.
1245
+ # @return [String]
1246
+ #
1247
+ # @!attribute [rw] name
1248
+ # The name of the Object Lambda Access Point you want to return the
1249
+ # configuration for.
1250
+ # @return [String]
1251
+ #
1252
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointConfigurationForObjectLambdaRequest AWS API Documentation
1253
+ #
1254
+ class GetAccessPointConfigurationForObjectLambdaRequest < Struct.new(
1255
+ :account_id,
1256
+ :name)
1257
+ SENSITIVE = []
1258
+ include Aws::Structure
1259
+ end
1260
+
1261
+ # @!attribute [rw] configuration
1262
+ # Object Lambda Access Point configuration document.
1263
+ # @return [Types::ObjectLambdaConfiguration]
1264
+ #
1265
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointConfigurationForObjectLambdaResult AWS API Documentation
1266
+ #
1267
+ class GetAccessPointConfigurationForObjectLambdaResult < Struct.new(
1268
+ :configuration)
1269
+ SENSITIVE = []
1270
+ include Aws::Structure
1271
+ end
1272
+
1273
+ # @note When making an API call, you may pass GetAccessPointForObjectLambdaRequest
1274
+ # data as a hash:
1275
+ #
1276
+ # {
1277
+ # account_id: "AccountId", # required
1278
+ # name: "ObjectLambdaAccessPointName", # required
1279
+ # }
1280
+ #
1281
+ # @!attribute [rw] account_id
1282
+ # The account ID for the account that owns the specified Object Lambda
1283
+ # Access Point.
1284
+ # @return [String]
1285
+ #
1286
+ # @!attribute [rw] name
1287
+ # The name of the Object Lambda Access Point.
1288
+ # @return [String]
1289
+ #
1290
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointForObjectLambdaRequest AWS API Documentation
1291
+ #
1292
+ class GetAccessPointForObjectLambdaRequest < Struct.new(
1293
+ :account_id,
1294
+ :name)
1295
+ SENSITIVE = []
1296
+ include Aws::Structure
1297
+ end
1298
+
1299
+ # @!attribute [rw] name
1300
+ # The name of the Object Lambda Access Point.
1301
+ # @return [String]
1302
+ #
1303
+ # @!attribute [rw] public_access_block_configuration
1304
+ # Configuration to block all public access. This setting is turned on
1305
+ # and can not be edited.
1306
+ # @return [Types::PublicAccessBlockConfiguration]
1307
+ #
1308
+ # @!attribute [rw] creation_date
1309
+ # The date and time when the specified Object Lambda Access Point was
1310
+ # created.
1311
+ # @return [Time]
1312
+ #
1313
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointForObjectLambdaResult AWS API Documentation
1314
+ #
1315
+ class GetAccessPointForObjectLambdaResult < Struct.new(
1316
+ :name,
1317
+ :public_access_block_configuration,
1318
+ :creation_date)
1319
+ SENSITIVE = []
1320
+ include Aws::Structure
1321
+ end
1322
+
1323
+ # @note When making an API call, you may pass GetAccessPointPolicyForObjectLambdaRequest
1324
+ # data as a hash:
1325
+ #
1326
+ # {
1327
+ # account_id: "AccountId", # required
1328
+ # name: "ObjectLambdaAccessPointName", # required
1329
+ # }
1330
+ #
1331
+ # @!attribute [rw] account_id
1332
+ # The account ID for the account that owns the specified Object Lambda
1333
+ # Access Point.
1334
+ # @return [String]
1335
+ #
1336
+ # @!attribute [rw] name
1337
+ # The name of the Object Lambda Access Point.
1338
+ # @return [String]
1339
+ #
1340
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicyForObjectLambdaRequest AWS API Documentation
1341
+ #
1342
+ class GetAccessPointPolicyForObjectLambdaRequest < Struct.new(
1343
+ :account_id,
1344
+ :name)
1345
+ SENSITIVE = []
1346
+ include Aws::Structure
1347
+ end
1348
+
1349
+ # @!attribute [rw] policy
1350
+ # Object Lambda Access Point resource policy document.
1351
+ # @return [String]
1352
+ #
1353
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicyForObjectLambdaResult AWS API Documentation
1354
+ #
1355
+ class GetAccessPointPolicyForObjectLambdaResult < Struct.new(
1356
+ :policy)
1357
+ SENSITIVE = []
1358
+ include Aws::Structure
1359
+ end
1360
+
1093
1361
  # @note When making an API call, you may pass GetAccessPointPolicyRequest
1094
1362
  # data as a hash:
1095
1363
  #
@@ -1140,6 +1408,51 @@ module Aws::S3Control
1140
1408
  include Aws::Structure
1141
1409
  end
1142
1410
 
1411
+ # @note When making an API call, you may pass GetAccessPointPolicyStatusForObjectLambdaRequest
1412
+ # data as a hash:
1413
+ #
1414
+ # {
1415
+ # account_id: "AccountId", # required
1416
+ # name: "ObjectLambdaAccessPointName", # required
1417
+ # }
1418
+ #
1419
+ # @!attribute [rw] account_id
1420
+ # The account ID for the account that owns the specified Object Lambda
1421
+ # Access Point.
1422
+ # @return [String]
1423
+ #
1424
+ # @!attribute [rw] name
1425
+ # The name of the Object Lambda Access Point.
1426
+ # @return [String]
1427
+ #
1428
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicyStatusForObjectLambdaRequest AWS API Documentation
1429
+ #
1430
+ class GetAccessPointPolicyStatusForObjectLambdaRequest < Struct.new(
1431
+ :account_id,
1432
+ :name)
1433
+ SENSITIVE = []
1434
+ include Aws::Structure
1435
+ end
1436
+
1437
+ # @!attribute [rw] policy_status
1438
+ # Indicates whether this access point policy is public. For more
1439
+ # information about how Amazon S3 evaluates policies to determine
1440
+ # whether they are public, see [The Meaning of "Public"][1] in the
1441
+ # *Amazon Simple Storage Service User Guide*.
1442
+ #
1443
+ #
1444
+ #
1445
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status
1446
+ # @return [Types::PolicyStatus]
1447
+ #
1448
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetAccessPointPolicyStatusForObjectLambdaResult AWS API Documentation
1449
+ #
1450
+ class GetAccessPointPolicyStatusForObjectLambdaResult < Struct.new(
1451
+ :policy_status)
1452
+ SENSITIVE = []
1453
+ include Aws::Structure
1454
+ end
1455
+
1143
1456
  # @note When making an API call, you may pass GetAccessPointPolicyStatusRequest
1144
1457
  # data as a hash:
1145
1458
  #
@@ -2588,6 +2901,64 @@ module Aws::S3Control
2588
2901
  include Aws::Structure
2589
2902
  end
2590
2903
 
2904
+ # @note When making an API call, you may pass ListAccessPointsForObjectLambdaRequest
2905
+ # data as a hash:
2906
+ #
2907
+ # {
2908
+ # account_id: "AccountId", # required
2909
+ # next_token: "NonEmptyMaxLength1024String",
2910
+ # max_results: 1,
2911
+ # }
2912
+ #
2913
+ # @!attribute [rw] account_id
2914
+ # The account ID for the account that owns the specified Object Lambda
2915
+ # Access Point.
2916
+ # @return [String]
2917
+ #
2918
+ # @!attribute [rw] next_token
2919
+ # If the list has more access points than can be returned in one call
2920
+ # to this API, this field contains a continuation token that you can
2921
+ # provide in subsequent calls to this API to retrieve additional
2922
+ # access points.
2923
+ # @return [String]
2924
+ #
2925
+ # @!attribute [rw] max_results
2926
+ # The maximum number of access points that you want to include in the
2927
+ # list. If there are more than this number of access points, then the
2928
+ # response will include a continuation token in the `NextToken` field
2929
+ # that you can use to retrieve the next page of access points.
2930
+ # @return [Integer]
2931
+ #
2932
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessPointsForObjectLambdaRequest AWS API Documentation
2933
+ #
2934
+ class ListAccessPointsForObjectLambdaRequest < Struct.new(
2935
+ :account_id,
2936
+ :next_token,
2937
+ :max_results)
2938
+ SENSITIVE = []
2939
+ include Aws::Structure
2940
+ end
2941
+
2942
+ # @!attribute [rw] object_lambda_access_point_list
2943
+ # Returns list of Object Lambda Access Points.
2944
+ # @return [Array<Types::ObjectLambdaAccessPoint>]
2945
+ #
2946
+ # @!attribute [rw] next_token
2947
+ # If the list has more access points than can be returned in one call
2948
+ # to this API, this field contains a continuation token that you can
2949
+ # provide in subsequent calls to this API to retrieve additional
2950
+ # access points.
2951
+ # @return [String]
2952
+ #
2953
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ListAccessPointsForObjectLambdaResult AWS API Documentation
2954
+ #
2955
+ class ListAccessPointsForObjectLambdaResult < Struct.new(
2956
+ :object_lambda_access_point_list,
2957
+ :next_token)
2958
+ SENSITIVE = []
2959
+ include Aws::Structure
2960
+ end
2961
+
2591
2962
  # @note When making an API call, you may pass ListAccessPointsRequest
2592
2963
  # data as a hash:
2593
2964
  #
@@ -2957,6 +3328,138 @@ module Aws::S3Control
2957
3328
  include Aws::Structure
2958
3329
  end
2959
3330
 
3331
+ # An access point with an attached AWS Lambda function used to access
3332
+ # transformed data from an Amazon S3 bucket.
3333
+ #
3334
+ # @!attribute [rw] name
3335
+ # The name of the Object Lambda Access Point.
3336
+ # @return [String]
3337
+ #
3338
+ # @!attribute [rw] object_lambda_access_point_arn
3339
+ # Specifies the ARN for the Object Lambda Access Point.
3340
+ # @return [String]
3341
+ #
3342
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ObjectLambdaAccessPoint AWS API Documentation
3343
+ #
3344
+ class ObjectLambdaAccessPoint < Struct.new(
3345
+ :name,
3346
+ :object_lambda_access_point_arn)
3347
+ SENSITIVE = []
3348
+ include Aws::Structure
3349
+ end
3350
+
3351
+ # A configuration used when creating an Object Lambda Access Point.
3352
+ #
3353
+ # @note When making an API call, you may pass ObjectLambdaConfiguration
3354
+ # data as a hash:
3355
+ #
3356
+ # {
3357
+ # supporting_access_point: "ObjectLambdaSupportingAccessPointArn", # required
3358
+ # cloud_watch_metrics_enabled: false,
3359
+ # allowed_features: ["GetObject-Range"], # accepts GetObject-Range, GetObject-PartNumber
3360
+ # transformation_configurations: [ # required
3361
+ # {
3362
+ # actions: ["GetObject"], # required, accepts GetObject
3363
+ # content_transformation: { # required
3364
+ # aws_lambda: {
3365
+ # function_arn: "FunctionArnString", # required
3366
+ # function_payload: "AwsLambdaTransformationPayload",
3367
+ # },
3368
+ # },
3369
+ # },
3370
+ # ],
3371
+ # }
3372
+ #
3373
+ # @!attribute [rw] supporting_access_point
3374
+ # Standard access point associated with the Object Lambda Access
3375
+ # Point.
3376
+ # @return [String]
3377
+ #
3378
+ # @!attribute [rw] cloud_watch_metrics_enabled
3379
+ # A container for whether the CloudWatch metrics configuration is
3380
+ # enabled.
3381
+ # @return [Boolean]
3382
+ #
3383
+ # @!attribute [rw] allowed_features
3384
+ # A container for allowed features. Valid inputs are `GetObject-Range`
3385
+ # and `GetObject-PartNumber`.
3386
+ # @return [Array<String>]
3387
+ #
3388
+ # @!attribute [rw] transformation_configurations
3389
+ # A container for transformation configurations for an Object Lambda
3390
+ # Access Point.
3391
+ # @return [Array<Types::ObjectLambdaTransformationConfiguration>]
3392
+ #
3393
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ObjectLambdaConfiguration AWS API Documentation
3394
+ #
3395
+ class ObjectLambdaConfiguration < Struct.new(
3396
+ :supporting_access_point,
3397
+ :cloud_watch_metrics_enabled,
3398
+ :allowed_features,
3399
+ :transformation_configurations)
3400
+ SENSITIVE = []
3401
+ include Aws::Structure
3402
+ end
3403
+
3404
+ # A container for AwsLambdaTransformation.
3405
+ #
3406
+ # @note When making an API call, you may pass ObjectLambdaContentTransformation
3407
+ # data as a hash:
3408
+ #
3409
+ # {
3410
+ # aws_lambda: {
3411
+ # function_arn: "FunctionArnString", # required
3412
+ # function_payload: "AwsLambdaTransformationPayload",
3413
+ # },
3414
+ # }
3415
+ #
3416
+ # @!attribute [rw] aws_lambda
3417
+ # A container for an AWS Lambda function.
3418
+ # @return [Types::AwsLambdaTransformation]
3419
+ #
3420
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ObjectLambdaContentTransformation AWS API Documentation
3421
+ #
3422
+ class ObjectLambdaContentTransformation < Struct.new(
3423
+ :aws_lambda)
3424
+ SENSITIVE = []
3425
+ include Aws::Structure
3426
+ end
3427
+
3428
+ # A configuration used when creating an Object Lambda Access Point
3429
+ # transformation.
3430
+ #
3431
+ # @note When making an API call, you may pass ObjectLambdaTransformationConfiguration
3432
+ # data as a hash:
3433
+ #
3434
+ # {
3435
+ # actions: ["GetObject"], # required, accepts GetObject
3436
+ # content_transformation: { # required
3437
+ # aws_lambda: {
3438
+ # function_arn: "FunctionArnString", # required
3439
+ # function_payload: "AwsLambdaTransformationPayload",
3440
+ # },
3441
+ # },
3442
+ # }
3443
+ #
3444
+ # @!attribute [rw] actions
3445
+ # A container for the action of an Object Lambda Access Point
3446
+ # configuration.
3447
+ # @return [Array<String>]
3448
+ #
3449
+ # @!attribute [rw] content_transformation
3450
+ # A container for the content transformation of an Object Lambda
3451
+ # Access Point configuration.
3452
+ # @return [Types::ObjectLambdaContentTransformation]
3453
+ #
3454
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/ObjectLambdaTransformationConfiguration AWS API Documentation
3455
+ #
3456
+ class ObjectLambdaTransformationConfiguration < Struct.new(
3457
+ :actions,
3458
+ :content_transformation)
3459
+ SENSITIVE = []
3460
+ include Aws::Structure
3461
+ end
3462
+
2960
3463
  # Indicates whether this access point policy is public. For more
2961
3464
  # information about how Amazon S3 evaluates policies to determine
2962
3465
  # whether they are public, see [The Meaning of "Public"][1] in the
@@ -3123,6 +3626,85 @@ module Aws::S3Control
3123
3626
  include Aws::Structure
3124
3627
  end
3125
3628
 
3629
+ # @note When making an API call, you may pass PutAccessPointConfigurationForObjectLambdaRequest
3630
+ # data as a hash:
3631
+ #
3632
+ # {
3633
+ # account_id: "AccountId", # required
3634
+ # name: "ObjectLambdaAccessPointName", # required
3635
+ # configuration: { # required
3636
+ # supporting_access_point: "ObjectLambdaSupportingAccessPointArn", # required
3637
+ # cloud_watch_metrics_enabled: false,
3638
+ # allowed_features: ["GetObject-Range"], # accepts GetObject-Range, GetObject-PartNumber
3639
+ # transformation_configurations: [ # required
3640
+ # {
3641
+ # actions: ["GetObject"], # required, accepts GetObject
3642
+ # content_transformation: { # required
3643
+ # aws_lambda: {
3644
+ # function_arn: "FunctionArnString", # required
3645
+ # function_payload: "AwsLambdaTransformationPayload",
3646
+ # },
3647
+ # },
3648
+ # },
3649
+ # ],
3650
+ # },
3651
+ # }
3652
+ #
3653
+ # @!attribute [rw] account_id
3654
+ # The account ID for the account that owns the specified Object Lambda
3655
+ # Access Point.
3656
+ # @return [String]
3657
+ #
3658
+ # @!attribute [rw] name
3659
+ # The name of the Object Lambda Access Point.
3660
+ # @return [String]
3661
+ #
3662
+ # @!attribute [rw] configuration
3663
+ # Object Lambda Access Point configuration document.
3664
+ # @return [Types::ObjectLambdaConfiguration]
3665
+ #
3666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutAccessPointConfigurationForObjectLambdaRequest AWS API Documentation
3667
+ #
3668
+ class PutAccessPointConfigurationForObjectLambdaRequest < Struct.new(
3669
+ :account_id,
3670
+ :name,
3671
+ :configuration)
3672
+ SENSITIVE = []
3673
+ include Aws::Structure
3674
+ end
3675
+
3676
+ # @note When making an API call, you may pass PutAccessPointPolicyForObjectLambdaRequest
3677
+ # data as a hash:
3678
+ #
3679
+ # {
3680
+ # account_id: "AccountId", # required
3681
+ # name: "ObjectLambdaAccessPointName", # required
3682
+ # policy: "ObjectLambdaPolicy", # required
3683
+ # }
3684
+ #
3685
+ # @!attribute [rw] account_id
3686
+ # The account ID for the account that owns the specified Object Lambda
3687
+ # Access Point.
3688
+ # @return [String]
3689
+ #
3690
+ # @!attribute [rw] name
3691
+ # The name of the Object Lambda Access Point.
3692
+ # @return [String]
3693
+ #
3694
+ # @!attribute [rw] policy
3695
+ # Object Lambda Access Point resource policy document.
3696
+ # @return [String]
3697
+ #
3698
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutAccessPointPolicyForObjectLambdaRequest AWS API Documentation
3699
+ #
3700
+ class PutAccessPointPolicyForObjectLambdaRequest < Struct.new(
3701
+ :account_id,
3702
+ :name,
3703
+ :policy)
3704
+ SENSITIVE = []
3705
+ include Aws::Structure
3706
+ end
3707
+
3126
3708
  # @note When making an API call, you may pass PutAccessPointPolicyRequest
3127
3709
  # data as a hash:
3128
3710
  #
@@ -3163,7 +3745,7 @@ module Aws::S3Control
3163
3745
  #
3164
3746
  #
3165
3747
  #
3166
- # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html
3748
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html
3167
3749
  # @return [String]
3168
3750
  #
3169
3751
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/PutAccessPointPolicyRequest AWS API Documentation