aws-sdk-s3 1.7.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a11701b039886049358e64ee720790553815f2e2
4
- data.tar.gz: 7003f2e00e03c7a71f66ec5107b859350ae4f99c
3
+ metadata.gz: 11e9a946e4c62cd4e65425e89902c241af285bde
4
+ data.tar.gz: a2d9222f53c8f42be08062566e1c918619c6aa44
5
5
  SHA512:
6
- metadata.gz: e386e9a7bfa2ebecbcafb8c43ebe0918e2ceb900cb649069eb8943cc846136214beeb30e5663325e7447e5dc702c5c2f1b12bf45664eb7d6beead4126c5a3e8c
7
- data.tar.gz: 48e7bcf3e98a6d16580c73ba5c6745d423bd5fd4e9c79189c5598c63e2e74bdf2629ca97ffef03ff508107a2a594a23bdde6fcde60fbb728ba851a3bbf764893
6
+ metadata.gz: ce6d03f49def68da923382a840324f932f872f552d772abea6ceb16388088584ed18ac87d33279f0b675e594d966b771d21ace3e27f483d23f5602fbb925621e
7
+ data.tar.gz: e19d2fcdba9c44c11633f40cca6f66f7de128b6f48417ed2368f74dd0bde1dc2342bcfceecf665716431e8d599486be7ecb087ecd6f528f3b536d2987cd96bb9
@@ -62,6 +62,6 @@ require_relative 'aws-sdk-s3/customizations'
62
62
  # @service
63
63
  module Aws::S3
64
64
 
65
- GEM_VERSION = '1.7.0'
65
+ GEM_VERSION = '1.8.0'
66
66
 
67
67
  end
@@ -5655,6 +5655,7 @@ module Aws::S3
5655
5655
  # @option params [String] :version_id
5656
5656
  #
5657
5657
  # @option params [Types::RestoreRequest] :restore_request
5658
+ # Container for restore job parameters.
5658
5659
  #
5659
5660
  # @option params [String] :request_payer
5660
5661
  # Confirms that the requester knows that she or he will be charged for
@@ -5666,6 +5667,7 @@ module Aws::S3
5666
5667
  # @return [Types::RestoreObjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5667
5668
  #
5668
5669
  # * {Types::RestoreObjectOutput#request_charged #request_charged} => String
5670
+ # * {Types::RestoreObjectOutput#restore_output_path #restore_output_path} => String
5669
5671
  #
5670
5672
  #
5671
5673
  # @example Example: To restore an archived object
@@ -5694,10 +5696,75 @@ module Aws::S3
5694
5696
  # key: "ObjectKey", # required
5695
5697
  # version_id: "ObjectVersionId",
5696
5698
  # restore_request: {
5697
- # days: 1, # required
5699
+ # days: 1,
5698
5700
  # glacier_job_parameters: {
5699
5701
  # tier: "Standard", # required, accepts Standard, Bulk, Expedited
5700
5702
  # },
5703
+ # type: "SELECT", # accepts SELECT
5704
+ # tier: "Standard", # accepts Standard, Bulk, Expedited
5705
+ # description: "Description",
5706
+ # select_parameters: {
5707
+ # input_serialization: { # required
5708
+ # csv: {
5709
+ # file_header_info: "USE", # accepts USE, IGNORE, NONE
5710
+ # comments: "Comments",
5711
+ # quote_escape_character: "QuoteEscapeCharacter",
5712
+ # record_delimiter: "RecordDelimiter",
5713
+ # field_delimiter: "FieldDelimiter",
5714
+ # quote_character: "QuoteCharacter",
5715
+ # },
5716
+ # },
5717
+ # expression_type: "SQL", # required, accepts SQL
5718
+ # expression: "Expression", # required
5719
+ # output_serialization: { # required
5720
+ # csv: {
5721
+ # quote_fields: "ALWAYS", # accepts ALWAYS, ASNEEDED
5722
+ # quote_escape_character: "QuoteEscapeCharacter",
5723
+ # record_delimiter: "RecordDelimiter",
5724
+ # field_delimiter: "FieldDelimiter",
5725
+ # quote_character: "QuoteCharacter",
5726
+ # },
5727
+ # },
5728
+ # },
5729
+ # output_location: {
5730
+ # s3: {
5731
+ # bucket_name: "BucketName", # required
5732
+ # prefix: "LocationPrefix", # required
5733
+ # encryption: {
5734
+ # encryption_type: "AES256", # required, accepts AES256, aws:kms
5735
+ # kms_key_id: "SSEKMSKeyId",
5736
+ # kms_context: "KMSContext",
5737
+ # },
5738
+ # canned_acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
5739
+ # access_control_list: [
5740
+ # {
5741
+ # grantee: {
5742
+ # display_name: "DisplayName",
5743
+ # email_address: "EmailAddress",
5744
+ # id: "ID",
5745
+ # type: "CanonicalUser", # required, accepts CanonicalUser, AmazonCustomerByEmail, Group
5746
+ # uri: "URI",
5747
+ # },
5748
+ # permission: "FULL_CONTROL", # accepts FULL_CONTROL, WRITE, WRITE_ACP, READ, READ_ACP
5749
+ # },
5750
+ # ],
5751
+ # tagging: {
5752
+ # tag_set: [ # required
5753
+ # {
5754
+ # key: "ObjectKey", # required
5755
+ # value: "Value", # required
5756
+ # },
5757
+ # ],
5758
+ # },
5759
+ # user_metadata: [
5760
+ # {
5761
+ # name: "MetadataKey",
5762
+ # value: "MetadataValue",
5763
+ # },
5764
+ # ],
5765
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA
5766
+ # },
5767
+ # },
5701
5768
  # },
5702
5769
  # request_payer: "requester", # accepts requester
5703
5770
  # })
@@ -5705,6 +5772,7 @@ module Aws::S3
5705
5772
  # @example Response structure
5706
5773
  #
5707
5774
  # resp.request_charged #=> String, one of "requester"
5775
+ # resp.restore_output_path #=> String
5708
5776
  #
5709
5777
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObject AWS API Documentation
5710
5778
  #
@@ -6019,7 +6087,7 @@ module Aws::S3
6019
6087
  params: params,
6020
6088
  config: config)
6021
6089
  context[:gem_name] = 'aws-sdk-s3'
6022
- context[:gem_version] = '1.7.0'
6090
+ context[:gem_version] = '1.8.0'
6023
6091
  Seahorse::Client::Request.new(handlers, context)
6024
6092
  end
6025
6093
 
@@ -51,11 +51,14 @@ module Aws::S3
51
51
  CORSConfiguration = Shapes::StructureShape.new(name: 'CORSConfiguration')
52
52
  CORSRule = Shapes::StructureShape.new(name: 'CORSRule')
53
53
  CORSRules = Shapes::ListShape.new(name: 'CORSRules', flattened: true)
54
+ CSVInput = Shapes::StructureShape.new(name: 'CSVInput')
55
+ CSVOutput = Shapes::StructureShape.new(name: 'CSVOutput')
54
56
  CacheControl = Shapes::StringShape.new(name: 'CacheControl')
55
57
  CloudFunction = Shapes::StringShape.new(name: 'CloudFunction')
56
58
  CloudFunctionConfiguration = Shapes::StructureShape.new(name: 'CloudFunctionConfiguration')
57
59
  CloudFunctionInvocationRole = Shapes::StringShape.new(name: 'CloudFunctionInvocationRole')
58
60
  Code = Shapes::StringShape.new(name: 'Code')
61
+ Comments = Shapes::StringShape.new(name: 'Comments')
59
62
  CommonPrefix = Shapes::StructureShape.new(name: 'CommonPrefix')
60
63
  CommonPrefixList = Shapes::ListShape.new(name: 'CommonPrefixList', flattened: true)
61
64
  CompleteMultipartUploadOutput = Shapes::StructureShape.new(name: 'CompleteMultipartUploadOutput')
@@ -120,11 +123,13 @@ module Aws::S3
120
123
  DeletedObject = Shapes::StructureShape.new(name: 'DeletedObject')
121
124
  DeletedObjects = Shapes::ListShape.new(name: 'DeletedObjects', flattened: true)
122
125
  Delimiter = Shapes::StringShape.new(name: 'Delimiter')
126
+ Description = Shapes::StringShape.new(name: 'Description')
123
127
  Destination = Shapes::StructureShape.new(name: 'Destination')
124
128
  DisplayName = Shapes::StringShape.new(name: 'DisplayName')
125
129
  ETag = Shapes::StringShape.new(name: 'ETag')
126
130
  EmailAddress = Shapes::StringShape.new(name: 'EmailAddress')
127
131
  EncodingType = Shapes::StringShape.new(name: 'EncodingType')
132
+ Encryption = Shapes::StructureShape.new(name: 'Encryption')
128
133
  EncryptionConfiguration = Shapes::StructureShape.new(name: 'EncryptionConfiguration')
129
134
  Error = Shapes::StructureShape.new(name: 'Error')
130
135
  ErrorDocument = Shapes::StructureShape.new(name: 'ErrorDocument')
@@ -138,7 +143,11 @@ module Aws::S3
138
143
  ExpiresString = Shapes::StringShape.new(name: 'ExpiresString')
139
144
  ExposeHeader = Shapes::StringShape.new(name: 'ExposeHeader')
140
145
  ExposeHeaders = Shapes::ListShape.new(name: 'ExposeHeaders', flattened: true)
146
+ Expression = Shapes::StringShape.new(name: 'Expression')
147
+ ExpressionType = Shapes::StringShape.new(name: 'ExpressionType')
141
148
  FetchOwner = Shapes::BooleanShape.new(name: 'FetchOwner')
149
+ FieldDelimiter = Shapes::StringShape.new(name: 'FieldDelimiter')
150
+ FileHeaderInfo = Shapes::StringShape.new(name: 'FileHeaderInfo')
142
151
  FilterRule = Shapes::StructureShape.new(name: 'FilterRule')
143
152
  FilterRuleList = Shapes::ListShape.new(name: 'FilterRuleList', flattened: true)
144
153
  FilterRuleName = Shapes::StringShape.new(name: 'FilterRuleName')
@@ -209,6 +218,7 @@ module Aws::S3
209
218
  IndexDocument = Shapes::StructureShape.new(name: 'IndexDocument')
210
219
  Initiated = Shapes::TimestampShape.new(name: 'Initiated')
211
220
  Initiator = Shapes::StructureShape.new(name: 'Initiator')
221
+ InputSerialization = Shapes::StructureShape.new(name: 'InputSerialization')
212
222
  InventoryConfiguration = Shapes::StructureShape.new(name: 'InventoryConfiguration')
213
223
  InventoryConfigurationList = Shapes::ListShape.new(name: 'InventoryConfigurationList', flattened: true)
214
224
  InventoryDestination = Shapes::StructureShape.new(name: 'InventoryDestination')
@@ -225,6 +235,7 @@ module Aws::S3
225
235
  IsEnabled = Shapes::BooleanShape.new(name: 'IsEnabled')
226
236
  IsLatest = Shapes::BooleanShape.new(name: 'IsLatest')
227
237
  IsTruncated = Shapes::BooleanShape.new(name: 'IsTruncated')
238
+ KMSContext = Shapes::StringShape.new(name: 'KMSContext')
228
239
  KeyCount = Shapes::IntegerShape.new(name: 'KeyCount')
229
240
  KeyMarker = Shapes::StringShape.new(name: 'KeyMarker')
230
241
  KeyPrefixEquals = Shapes::StringShape.new(name: 'KeyPrefixEquals')
@@ -256,6 +267,7 @@ module Aws::S3
256
267
  ListPartsOutput = Shapes::StructureShape.new(name: 'ListPartsOutput')
257
268
  ListPartsRequest = Shapes::StructureShape.new(name: 'ListPartsRequest')
258
269
  Location = Shapes::StringShape.new(name: 'Location')
270
+ LocationPrefix = Shapes::StringShape.new(name: 'LocationPrefix')
259
271
  LoggingEnabled = Shapes::StructureShape.new(name: 'LoggingEnabled')
260
272
  MFA = Shapes::StringShape.new(name: 'MFA')
261
273
  MFADelete = Shapes::StringShape.new(name: 'MFADelete')
@@ -268,6 +280,7 @@ module Aws::S3
268
280
  Message = Shapes::StringShape.new(name: 'Message')
269
281
  Metadata = Shapes::MapShape.new(name: 'Metadata')
270
282
  MetadataDirective = Shapes::StringShape.new(name: 'MetadataDirective')
283
+ MetadataEntry = Shapes::StructureShape.new(name: 'MetadataEntry')
271
284
  MetadataKey = Shapes::StringShape.new(name: 'MetadataKey')
272
285
  MetadataValue = Shapes::StringShape.new(name: 'MetadataValue')
273
286
  MetricsAndOperator = Shapes::StructureShape.new(name: 'MetricsAndOperator')
@@ -308,6 +321,8 @@ module Aws::S3
308
321
  ObjectVersionId = Shapes::StringShape.new(name: 'ObjectVersionId')
309
322
  ObjectVersionList = Shapes::ListShape.new(name: 'ObjectVersionList', flattened: true)
310
323
  ObjectVersionStorageClass = Shapes::StringShape.new(name: 'ObjectVersionStorageClass')
324
+ OutputLocation = Shapes::StructureShape.new(name: 'OutputLocation')
325
+ OutputSerialization = Shapes::StructureShape.new(name: 'OutputSerialization')
311
326
  Owner = Shapes::StructureShape.new(name: 'Owner')
312
327
  OwnerOverride = Shapes::StringShape.new(name: 'OwnerOverride')
313
328
  Part = Shapes::StructureShape.new(name: 'Part')
@@ -349,7 +364,11 @@ module Aws::S3
349
364
  QueueConfigurationDeprecated = Shapes::StructureShape.new(name: 'QueueConfigurationDeprecated')
350
365
  QueueConfigurationList = Shapes::ListShape.new(name: 'QueueConfigurationList', flattened: true)
351
366
  Quiet = Shapes::BooleanShape.new(name: 'Quiet')
367
+ QuoteCharacter = Shapes::StringShape.new(name: 'QuoteCharacter')
368
+ QuoteEscapeCharacter = Shapes::StringShape.new(name: 'QuoteEscapeCharacter')
369
+ QuoteFields = Shapes::StringShape.new(name: 'QuoteFields')
352
370
  Range = Shapes::StringShape.new(name: 'Range')
371
+ RecordDelimiter = Shapes::StringShape.new(name: 'RecordDelimiter')
353
372
  Redirect = Shapes::StructureShape.new(name: 'Redirect')
354
373
  RedirectAllRequestsTo = Shapes::StructureShape.new(name: 'RedirectAllRequestsTo')
355
374
  ReplaceKeyPrefixWith = Shapes::StringShape.new(name: 'ReplaceKeyPrefixWith')
@@ -372,19 +391,23 @@ module Aws::S3
372
391
  Restore = Shapes::StringShape.new(name: 'Restore')
373
392
  RestoreObjectOutput = Shapes::StructureShape.new(name: 'RestoreObjectOutput')
374
393
  RestoreObjectRequest = Shapes::StructureShape.new(name: 'RestoreObjectRequest')
394
+ RestoreOutputPath = Shapes::StringShape.new(name: 'RestoreOutputPath')
375
395
  RestoreRequest = Shapes::StructureShape.new(name: 'RestoreRequest')
396
+ RestoreRequestType = Shapes::StringShape.new(name: 'RestoreRequestType')
376
397
  Role = Shapes::StringShape.new(name: 'Role')
377
398
  RoutingRule = Shapes::StructureShape.new(name: 'RoutingRule')
378
399
  RoutingRules = Shapes::ListShape.new(name: 'RoutingRules')
379
400
  Rule = Shapes::StructureShape.new(name: 'Rule')
380
401
  Rules = Shapes::ListShape.new(name: 'Rules', flattened: true)
381
402
  S3KeyFilter = Shapes::StructureShape.new(name: 'S3KeyFilter')
403
+ S3Location = Shapes::StructureShape.new(name: 'S3Location')
382
404
  SSECustomerAlgorithm = Shapes::StringShape.new(name: 'SSECustomerAlgorithm')
383
405
  SSECustomerKey = Shapes::StringShape.new(name: 'SSECustomerKey')
384
406
  SSECustomerKeyMD5 = Shapes::StringShape.new(name: 'SSECustomerKeyMD5')
385
407
  SSEKMS = Shapes::StructureShape.new(name: 'SSEKMS')
386
408
  SSEKMSKeyId = Shapes::StringShape.new(name: 'SSEKMSKeyId')
387
409
  SSES3 = Shapes::StructureShape.new(name: 'SSES3')
410
+ SelectParameters = Shapes::StructureShape.new(name: 'SelectParameters')
388
411
  ServerSideEncryption = Shapes::StringShape.new(name: 'ServerSideEncryption')
389
412
  ServerSideEncryptionByDefault = Shapes::StructureShape.new(name: 'ServerSideEncryptionByDefault')
390
413
  ServerSideEncryptionConfiguration = Shapes::StructureShape.new(name: 'ServerSideEncryptionConfiguration')
@@ -426,6 +449,7 @@ module Aws::S3
426
449
  UploadPartCopyRequest = Shapes::StructureShape.new(name: 'UploadPartCopyRequest')
427
450
  UploadPartOutput = Shapes::StructureShape.new(name: 'UploadPartOutput')
428
451
  UploadPartRequest = Shapes::StructureShape.new(name: 'UploadPartRequest')
452
+ UserMetadata = Shapes::ListShape.new(name: 'UserMetadata')
429
453
  Value = Shapes::StringShape.new(name: 'Value')
430
454
  VersionIdMarker = Shapes::StringShape.new(name: 'VersionIdMarker')
431
455
  VersioningConfiguration = Shapes::StructureShape.new(name: 'VersioningConfiguration')
@@ -509,6 +533,21 @@ module Aws::S3
509
533
 
510
534
  CORSRules.member = Shapes::ShapeRef.new(shape: CORSRule)
511
535
 
536
+ CSVInput.add_member(:file_header_info, Shapes::ShapeRef.new(shape: FileHeaderInfo, location_name: "FileHeaderInfo"))
537
+ CSVInput.add_member(:comments, Shapes::ShapeRef.new(shape: Comments, location_name: "Comments"))
538
+ CSVInput.add_member(:quote_escape_character, Shapes::ShapeRef.new(shape: QuoteEscapeCharacter, location_name: "QuoteEscapeCharacter"))
539
+ CSVInput.add_member(:record_delimiter, Shapes::ShapeRef.new(shape: RecordDelimiter, location_name: "RecordDelimiter"))
540
+ CSVInput.add_member(:field_delimiter, Shapes::ShapeRef.new(shape: FieldDelimiter, location_name: "FieldDelimiter"))
541
+ CSVInput.add_member(:quote_character, Shapes::ShapeRef.new(shape: QuoteCharacter, location_name: "QuoteCharacter"))
542
+ CSVInput.struct_class = Types::CSVInput
543
+
544
+ CSVOutput.add_member(:quote_fields, Shapes::ShapeRef.new(shape: QuoteFields, location_name: "QuoteFields"))
545
+ CSVOutput.add_member(:quote_escape_character, Shapes::ShapeRef.new(shape: QuoteEscapeCharacter, location_name: "QuoteEscapeCharacter"))
546
+ CSVOutput.add_member(:record_delimiter, Shapes::ShapeRef.new(shape: RecordDelimiter, location_name: "RecordDelimiter"))
547
+ CSVOutput.add_member(:field_delimiter, Shapes::ShapeRef.new(shape: FieldDelimiter, location_name: "FieldDelimiter"))
548
+ CSVOutput.add_member(:quote_character, Shapes::ShapeRef.new(shape: QuoteCharacter, location_name: "QuoteCharacter"))
549
+ CSVOutput.struct_class = Types::CSVOutput
550
+
512
551
  CloudFunctionConfiguration.add_member(:id, Shapes::ShapeRef.new(shape: NotificationId, location_name: "Id"))
513
552
  CloudFunctionConfiguration.add_member(:event, Shapes::ShapeRef.new(shape: Event, deprecated: true, location_name: "Event"))
514
553
  CloudFunctionConfiguration.add_member(:events, Shapes::ShapeRef.new(shape: EventList, location_name: "Event"))
@@ -762,6 +801,11 @@ module Aws::S3
762
801
  Destination.add_member(:encryption_configuration, Shapes::ShapeRef.new(shape: EncryptionConfiguration, location_name: "EncryptionConfiguration"))
763
802
  Destination.struct_class = Types::Destination
764
803
 
804
+ Encryption.add_member(:encryption_type, Shapes::ShapeRef.new(shape: ServerSideEncryption, required: true, location_name: "EncryptionType"))
805
+ Encryption.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location_name: "KMSKeyId"))
806
+ Encryption.add_member(:kms_context, Shapes::ShapeRef.new(shape: KMSContext, location_name: "KMSContext"))
807
+ Encryption.struct_class = Types::Encryption
808
+
765
809
  EncryptionConfiguration.add_member(:replica_kms_key_id, Shapes::ShapeRef.new(shape: ReplicaKmsKeyID, location_name: "ReplicaKmsKeyID"))
766
810
  EncryptionConfiguration.struct_class = Types::EncryptionConfiguration
767
811
 
@@ -1065,6 +1109,9 @@ module Aws::S3
1065
1109
  Initiator.add_member(:display_name, Shapes::ShapeRef.new(shape: DisplayName, location_name: "DisplayName"))
1066
1110
  Initiator.struct_class = Types::Initiator
1067
1111
 
1112
+ InputSerialization.add_member(:csv, Shapes::ShapeRef.new(shape: CSVInput, location_name: "CSV"))
1113
+ InputSerialization.struct_class = Types::InputSerialization
1114
+
1068
1115
  InventoryConfiguration.add_member(:destination, Shapes::ShapeRef.new(shape: InventoryDestination, required: true, location_name: "Destination"))
1069
1116
  InventoryConfiguration.add_member(:is_enabled, Shapes::ShapeRef.new(shape: IsEnabled, required: true, location_name: "IsEnabled"))
1070
1117
  InventoryConfiguration.add_member(:filter, Shapes::ShapeRef.new(shape: InventoryFilter, location_name: "Filter"))
@@ -1295,6 +1342,10 @@ module Aws::S3
1295
1342
  Metadata.key = Shapes::ShapeRef.new(shape: MetadataKey)
1296
1343
  Metadata.value = Shapes::ShapeRef.new(shape: MetadataValue)
1297
1344
 
1345
+ MetadataEntry.add_member(:name, Shapes::ShapeRef.new(shape: MetadataKey, location_name: "Name"))
1346
+ MetadataEntry.add_member(:value, Shapes::ShapeRef.new(shape: MetadataValue, location_name: "Value"))
1347
+ MetadataEntry.struct_class = Types::MetadataEntry
1348
+
1298
1349
  MetricsAndOperator.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "Prefix"))
1299
1350
  MetricsAndOperator.add_member(:tags, Shapes::ShapeRef.new(shape: TagSet, location_name: "Tag", metadata: {"flattened"=>true}))
1300
1351
  MetricsAndOperator.struct_class = Types::MetricsAndOperator
@@ -1370,6 +1421,12 @@ module Aws::S3
1370
1421
 
1371
1422
  ObjectVersionList.member = Shapes::ShapeRef.new(shape: ObjectVersion)
1372
1423
 
1424
+ OutputLocation.add_member(:s3, Shapes::ShapeRef.new(shape: S3Location, location_name: "S3"))
1425
+ OutputLocation.struct_class = Types::OutputLocation
1426
+
1427
+ OutputSerialization.add_member(:csv, Shapes::ShapeRef.new(shape: CSVOutput, location_name: "CSV"))
1428
+ OutputSerialization.struct_class = Types::OutputSerialization
1429
+
1373
1430
  Owner.add_member(:display_name, Shapes::ShapeRef.new(shape: DisplayName, location_name: "DisplayName"))
1374
1431
  Owner.add_member(:id, Shapes::ShapeRef.new(shape: ID, location_name: "ID"))
1375
1432
  Owner.struct_class = Types::Owner
@@ -1626,6 +1683,7 @@ module Aws::S3
1626
1683
  RequestPaymentConfiguration.struct_class = Types::RequestPaymentConfiguration
1627
1684
 
1628
1685
  RestoreObjectOutput.add_member(:request_charged, Shapes::ShapeRef.new(shape: RequestCharged, location: "header", location_name: "x-amz-request-charged"))
1686
+ RestoreObjectOutput.add_member(:restore_output_path, Shapes::ShapeRef.new(shape: RestoreOutputPath, location: "header", location_name: "x-amz-restore-output-path"))
1629
1687
  RestoreObjectOutput.struct_class = Types::RestoreObjectOutput
1630
1688
 
1631
1689
  RestoreObjectRequest.add_member(:bucket, Shapes::ShapeRef.new(shape: BucketName, required: true, location: "uri", location_name: "Bucket"))
@@ -1637,8 +1695,13 @@ module Aws::S3
1637
1695
  RestoreObjectRequest[:payload] = :restore_request
1638
1696
  RestoreObjectRequest[:payload_member] = RestoreObjectRequest.member(:restore_request)
1639
1697
 
1640
- RestoreRequest.add_member(:days, Shapes::ShapeRef.new(shape: Days, required: true, location_name: "Days"))
1698
+ RestoreRequest.add_member(:days, Shapes::ShapeRef.new(shape: Days, location_name: "Days"))
1641
1699
  RestoreRequest.add_member(:glacier_job_parameters, Shapes::ShapeRef.new(shape: GlacierJobParameters, location_name: "GlacierJobParameters"))
1700
+ RestoreRequest.add_member(:type, Shapes::ShapeRef.new(shape: RestoreRequestType, location_name: "Type"))
1701
+ RestoreRequest.add_member(:tier, Shapes::ShapeRef.new(shape: Tier, location_name: "Tier"))
1702
+ RestoreRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
1703
+ RestoreRequest.add_member(:select_parameters, Shapes::ShapeRef.new(shape: SelectParameters, location_name: "SelectParameters"))
1704
+ RestoreRequest.add_member(:output_location, Shapes::ShapeRef.new(shape: OutputLocation, location_name: "OutputLocation"))
1642
1705
  RestoreRequest.struct_class = Types::RestoreRequest
1643
1706
 
1644
1707
  RoutingRule.add_member(:condition, Shapes::ShapeRef.new(shape: Condition, location_name: "Condition"))
@@ -1662,11 +1725,27 @@ module Aws::S3
1662
1725
  S3KeyFilter.add_member(:filter_rules, Shapes::ShapeRef.new(shape: FilterRuleList, location_name: "FilterRule"))
1663
1726
  S3KeyFilter.struct_class = Types::S3KeyFilter
1664
1727
 
1728
+ S3Location.add_member(:bucket_name, Shapes::ShapeRef.new(shape: BucketName, required: true, location_name: "BucketName"))
1729
+ S3Location.add_member(:prefix, Shapes::ShapeRef.new(shape: LocationPrefix, required: true, location_name: "Prefix"))
1730
+ S3Location.add_member(:encryption, Shapes::ShapeRef.new(shape: Encryption, location_name: "Encryption"))
1731
+ S3Location.add_member(:canned_acl, Shapes::ShapeRef.new(shape: ObjectCannedACL, location_name: "CannedACL"))
1732
+ S3Location.add_member(:access_control_list, Shapes::ShapeRef.new(shape: Grants, location_name: "AccessControlList"))
1733
+ S3Location.add_member(:tagging, Shapes::ShapeRef.new(shape: Tagging, location_name: "Tagging"))
1734
+ S3Location.add_member(:user_metadata, Shapes::ShapeRef.new(shape: UserMetadata, location_name: "UserMetadata"))
1735
+ S3Location.add_member(:storage_class, Shapes::ShapeRef.new(shape: StorageClass, location_name: "StorageClass"))
1736
+ S3Location.struct_class = Types::S3Location
1737
+
1665
1738
  SSEKMS.add_member(:key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, required: true, location_name: "KeyId"))
1666
1739
  SSEKMS.struct_class = Types::SSEKMS
1667
1740
 
1668
1741
  SSES3.struct_class = Types::SSES3
1669
1742
 
1743
+ SelectParameters.add_member(:input_serialization, Shapes::ShapeRef.new(shape: InputSerialization, required: true, location_name: "InputSerialization"))
1744
+ SelectParameters.add_member(:expression_type, Shapes::ShapeRef.new(shape: ExpressionType, required: true, location_name: "ExpressionType"))
1745
+ SelectParameters.add_member(:expression, Shapes::ShapeRef.new(shape: Expression, required: true, location_name: "Expression"))
1746
+ SelectParameters.add_member(:output_serialization, Shapes::ShapeRef.new(shape: OutputSerialization, required: true, location_name: "OutputSerialization"))
1747
+ SelectParameters.struct_class = Types::SelectParameters
1748
+
1670
1749
  ServerSideEncryptionByDefault.add_member(:sse_algorithm, Shapes::ShapeRef.new(shape: ServerSideEncryption, required: true, location_name: "SSEAlgorithm"))
1671
1750
  ServerSideEncryptionByDefault.add_member(:kms_master_key_id, Shapes::ShapeRef.new(shape: SSEKMSKeyId, location_name: "KMSMasterKeyID"))
1672
1751
  ServerSideEncryptionByDefault.struct_class = Types::ServerSideEncryptionByDefault
@@ -1781,6 +1860,8 @@ module Aws::S3
1781
1860
  UploadPartRequest[:payload] = :body
1782
1861
  UploadPartRequest[:payload_member] = UploadPartRequest.member(:body)
1783
1862
 
1863
+ UserMetadata.member = Shapes::ShapeRef.new(shape: MetadataEntry, location_name: "MetadataEntry")
1864
+
1784
1865
  VersioningConfiguration.add_member(:mfa_delete, Shapes::ShapeRef.new(shape: MFADelete, location_name: "MfaDelete"))
1785
1866
  VersioningConfiguration.add_member(:status, Shapes::ShapeRef.new(shape: BucketVersioningStatus, location_name: "Status"))
1786
1867
  VersioningConfiguration.struct_class = Types::VersioningConfiguration
@@ -882,16 +882,82 @@ module Aws::S3
882
882
  # object.restore_object({
883
883
  # version_id: "ObjectVersionId",
884
884
  # restore_request: {
885
- # days: 1, # required
885
+ # days: 1,
886
886
  # glacier_job_parameters: {
887
887
  # tier: "Standard", # required, accepts Standard, Bulk, Expedited
888
888
  # },
889
+ # type: "SELECT", # accepts SELECT
890
+ # tier: "Standard", # accepts Standard, Bulk, Expedited
891
+ # description: "Description",
892
+ # select_parameters: {
893
+ # input_serialization: { # required
894
+ # csv: {
895
+ # file_header_info: "USE", # accepts USE, IGNORE, NONE
896
+ # comments: "Comments",
897
+ # quote_escape_character: "QuoteEscapeCharacter",
898
+ # record_delimiter: "RecordDelimiter",
899
+ # field_delimiter: "FieldDelimiter",
900
+ # quote_character: "QuoteCharacter",
901
+ # },
902
+ # },
903
+ # expression_type: "SQL", # required, accepts SQL
904
+ # expression: "Expression", # required
905
+ # output_serialization: { # required
906
+ # csv: {
907
+ # quote_fields: "ALWAYS", # accepts ALWAYS, ASNEEDED
908
+ # quote_escape_character: "QuoteEscapeCharacter",
909
+ # record_delimiter: "RecordDelimiter",
910
+ # field_delimiter: "FieldDelimiter",
911
+ # quote_character: "QuoteCharacter",
912
+ # },
913
+ # },
914
+ # },
915
+ # output_location: {
916
+ # s3: {
917
+ # bucket_name: "BucketName", # required
918
+ # prefix: "LocationPrefix", # required
919
+ # encryption: {
920
+ # encryption_type: "AES256", # required, accepts AES256, aws:kms
921
+ # kms_key_id: "SSEKMSKeyId",
922
+ # kms_context: "KMSContext",
923
+ # },
924
+ # canned_acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
925
+ # access_control_list: [
926
+ # {
927
+ # grantee: {
928
+ # display_name: "DisplayName",
929
+ # email_address: "EmailAddress",
930
+ # id: "ID",
931
+ # type: "CanonicalUser", # required, accepts CanonicalUser, AmazonCustomerByEmail, Group
932
+ # uri: "URI",
933
+ # },
934
+ # permission: "FULL_CONTROL", # accepts FULL_CONTROL, WRITE, WRITE_ACP, READ, READ_ACP
935
+ # },
936
+ # ],
937
+ # tagging: {
938
+ # tag_set: [ # required
939
+ # {
940
+ # key: "ObjectKey", # required
941
+ # value: "Value", # required
942
+ # },
943
+ # ],
944
+ # },
945
+ # user_metadata: [
946
+ # {
947
+ # name: "MetadataKey",
948
+ # value: "MetadataValue",
949
+ # },
950
+ # ],
951
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA
952
+ # },
953
+ # },
889
954
  # },
890
955
  # request_payer: "requester", # accepts requester
891
956
  # })
892
957
  # @param [Hash] options ({})
893
958
  # @option options [String] :version_id
894
959
  # @option options [Types::RestoreRequest] :restore_request
960
+ # Container for restore job parameters.
895
961
  # @option options [String] :request_payer
896
962
  # Confirms that the requester knows that she or he will be charged for
897
963
  # the request. Bucket owners need not specify this parameter in their
@@ -725,16 +725,82 @@ module Aws::S3
725
725
  # object_summary.restore_object({
726
726
  # version_id: "ObjectVersionId",
727
727
  # restore_request: {
728
- # days: 1, # required
728
+ # days: 1,
729
729
  # glacier_job_parameters: {
730
730
  # tier: "Standard", # required, accepts Standard, Bulk, Expedited
731
731
  # },
732
+ # type: "SELECT", # accepts SELECT
733
+ # tier: "Standard", # accepts Standard, Bulk, Expedited
734
+ # description: "Description",
735
+ # select_parameters: {
736
+ # input_serialization: { # required
737
+ # csv: {
738
+ # file_header_info: "USE", # accepts USE, IGNORE, NONE
739
+ # comments: "Comments",
740
+ # quote_escape_character: "QuoteEscapeCharacter",
741
+ # record_delimiter: "RecordDelimiter",
742
+ # field_delimiter: "FieldDelimiter",
743
+ # quote_character: "QuoteCharacter",
744
+ # },
745
+ # },
746
+ # expression_type: "SQL", # required, accepts SQL
747
+ # expression: "Expression", # required
748
+ # output_serialization: { # required
749
+ # csv: {
750
+ # quote_fields: "ALWAYS", # accepts ALWAYS, ASNEEDED
751
+ # quote_escape_character: "QuoteEscapeCharacter",
752
+ # record_delimiter: "RecordDelimiter",
753
+ # field_delimiter: "FieldDelimiter",
754
+ # quote_character: "QuoteCharacter",
755
+ # },
756
+ # },
757
+ # },
758
+ # output_location: {
759
+ # s3: {
760
+ # bucket_name: "BucketName", # required
761
+ # prefix: "LocationPrefix", # required
762
+ # encryption: {
763
+ # encryption_type: "AES256", # required, accepts AES256, aws:kms
764
+ # kms_key_id: "SSEKMSKeyId",
765
+ # kms_context: "KMSContext",
766
+ # },
767
+ # canned_acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
768
+ # access_control_list: [
769
+ # {
770
+ # grantee: {
771
+ # display_name: "DisplayName",
772
+ # email_address: "EmailAddress",
773
+ # id: "ID",
774
+ # type: "CanonicalUser", # required, accepts CanonicalUser, AmazonCustomerByEmail, Group
775
+ # uri: "URI",
776
+ # },
777
+ # permission: "FULL_CONTROL", # accepts FULL_CONTROL, WRITE, WRITE_ACP, READ, READ_ACP
778
+ # },
779
+ # ],
780
+ # tagging: {
781
+ # tag_set: [ # required
782
+ # {
783
+ # key: "ObjectKey", # required
784
+ # value: "Value", # required
785
+ # },
786
+ # ],
787
+ # },
788
+ # user_metadata: [
789
+ # {
790
+ # name: "MetadataKey",
791
+ # value: "MetadataValue",
792
+ # },
793
+ # ],
794
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA
795
+ # },
796
+ # },
732
797
  # },
733
798
  # request_payer: "requester", # accepts requester
734
799
  # })
735
800
  # @param [Hash] options ({})
736
801
  # @option options [String] :version_id
737
802
  # @option options [Types::RestoreRequest] :restore_request
803
+ # Container for restore job parameters.
738
804
  # @option options [String] :request_payer
739
805
  # Confirms that the requester knows that she or he will be charged for
740
806
  # the request. Bucket owners need not specify this parameter in their
@@ -534,6 +534,105 @@ module Aws::S3
534
534
  include Aws::Structure
535
535
  end
536
536
 
537
+ # Describes how a CSV-formatted input object is formatted.
538
+ #
539
+ # @note When making an API call, you may pass CSVInput
540
+ # data as a hash:
541
+ #
542
+ # {
543
+ # file_header_info: "USE", # accepts USE, IGNORE, NONE
544
+ # comments: "Comments",
545
+ # quote_escape_character: "QuoteEscapeCharacter",
546
+ # record_delimiter: "RecordDelimiter",
547
+ # field_delimiter: "FieldDelimiter",
548
+ # quote_character: "QuoteCharacter",
549
+ # }
550
+ #
551
+ # @!attribute [rw] file_header_info
552
+ # Describes the first line of input. Valid values: None, Ignore, Use.
553
+ # @return [String]
554
+ #
555
+ # @!attribute [rw] comments
556
+ # Single character used to indicate a row should be ignored when
557
+ # present at the start of a row.
558
+ # @return [String]
559
+ #
560
+ # @!attribute [rw] quote_escape_character
561
+ # Single character used for escaping the quote character inside an
562
+ # already escaped value.
563
+ # @return [String]
564
+ #
565
+ # @!attribute [rw] record_delimiter
566
+ # Value used to separate individual records.
567
+ # @return [String]
568
+ #
569
+ # @!attribute [rw] field_delimiter
570
+ # Value used to separate individual fields in a record.
571
+ # @return [String]
572
+ #
573
+ # @!attribute [rw] quote_character
574
+ # Value used for escaping where the field delimiter is part of the
575
+ # value.
576
+ # @return [String]
577
+ #
578
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CSVInput AWS API Documentation
579
+ #
580
+ class CSVInput < Struct.new(
581
+ :file_header_info,
582
+ :comments,
583
+ :quote_escape_character,
584
+ :record_delimiter,
585
+ :field_delimiter,
586
+ :quote_character)
587
+ include Aws::Structure
588
+ end
589
+
590
+ # Describes how CSV-formatted results are formatted.
591
+ #
592
+ # @note When making an API call, you may pass CSVOutput
593
+ # data as a hash:
594
+ #
595
+ # {
596
+ # quote_fields: "ALWAYS", # accepts ALWAYS, ASNEEDED
597
+ # quote_escape_character: "QuoteEscapeCharacter",
598
+ # record_delimiter: "RecordDelimiter",
599
+ # field_delimiter: "FieldDelimiter",
600
+ # quote_character: "QuoteCharacter",
601
+ # }
602
+ #
603
+ # @!attribute [rw] quote_fields
604
+ # Indicates whether or not all output fields should be quoted.
605
+ # @return [String]
606
+ #
607
+ # @!attribute [rw] quote_escape_character
608
+ # Single character used for escaping the quote character inside an
609
+ # already escaped value.
610
+ # @return [String]
611
+ #
612
+ # @!attribute [rw] record_delimiter
613
+ # Value used to separate individual records.
614
+ # @return [String]
615
+ #
616
+ # @!attribute [rw] field_delimiter
617
+ # Value used to separate individual fields in a record.
618
+ # @return [String]
619
+ #
620
+ # @!attribute [rw] quote_character
621
+ # Value used for escaping where the field delimiter is part of the
622
+ # value.
623
+ # @return [String]
624
+ #
625
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/CSVOutput AWS API Documentation
626
+ #
627
+ class CSVOutput < Struct.new(
628
+ :quote_fields,
629
+ :quote_escape_character,
630
+ :record_delimiter,
631
+ :field_delimiter,
632
+ :quote_character)
633
+ include Aws::Structure
634
+ end
635
+
537
636
  # @note When making an API call, you may pass CloudFunctionConfiguration
538
637
  # data as a hash:
539
638
  #
@@ -1955,6 +2054,42 @@ module Aws::S3
1955
2054
  include Aws::Structure
1956
2055
  end
1957
2056
 
2057
+ # Describes the server-side encryption that will be applied to the
2058
+ # restore results.
2059
+ #
2060
+ # @note When making an API call, you may pass Encryption
2061
+ # data as a hash:
2062
+ #
2063
+ # {
2064
+ # encryption_type: "AES256", # required, accepts AES256, aws:kms
2065
+ # kms_key_id: "SSEKMSKeyId",
2066
+ # kms_context: "KMSContext",
2067
+ # }
2068
+ #
2069
+ # @!attribute [rw] encryption_type
2070
+ # The server-side encryption algorithm used when storing job results
2071
+ # in Amazon S3 (e.g., AES256, aws:kms).
2072
+ # @return [String]
2073
+ #
2074
+ # @!attribute [rw] kms_key_id
2075
+ # If the encryption type is aws:kms, this optional value specifies the
2076
+ # AWS KMS key ID to use for encryption of job results.
2077
+ # @return [String]
2078
+ #
2079
+ # @!attribute [rw] kms_context
2080
+ # If the encryption type is aws:kms, this optional value can be used
2081
+ # to specify the encryption context for the restore results.
2082
+ # @return [String]
2083
+ #
2084
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/Encryption AWS API Documentation
2085
+ #
2086
+ class Encryption < Struct.new(
2087
+ :encryption_type,
2088
+ :kms_key_id,
2089
+ :kms_context)
2090
+ include Aws::Structure
2091
+ end
2092
+
1958
2093
  # Container for information regarding encryption based configuration for
1959
2094
  # replicas.
1960
2095
  #
@@ -3464,6 +3599,33 @@ module Aws::S3
3464
3599
  include Aws::Structure
3465
3600
  end
3466
3601
 
3602
+ # Describes the serialization format of the object.
3603
+ #
3604
+ # @note When making an API call, you may pass InputSerialization
3605
+ # data as a hash:
3606
+ #
3607
+ # {
3608
+ # csv: {
3609
+ # file_header_info: "USE", # accepts USE, IGNORE, NONE
3610
+ # comments: "Comments",
3611
+ # quote_escape_character: "QuoteEscapeCharacter",
3612
+ # record_delimiter: "RecordDelimiter",
3613
+ # field_delimiter: "FieldDelimiter",
3614
+ # quote_character: "QuoteCharacter",
3615
+ # },
3616
+ # }
3617
+ #
3618
+ # @!attribute [rw] csv
3619
+ # Describes the serialization of a CSV-encoded object.
3620
+ # @return [Types::CSVInput]
3621
+ #
3622
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/InputSerialization AWS API Documentation
3623
+ #
3624
+ class InputSerialization < Struct.new(
3625
+ :csv)
3626
+ include Aws::Structure
3627
+ end
3628
+
3467
3629
  # @note When making an API call, you may pass InventoryConfiguration
3468
3630
  # data as a hash:
3469
3631
  #
@@ -4924,6 +5086,30 @@ module Aws::S3
4924
5086
  include Aws::Structure
4925
5087
  end
4926
5088
 
5089
+ # A metadata key-value pair to store with an object.
5090
+ #
5091
+ # @note When making an API call, you may pass MetadataEntry
5092
+ # data as a hash:
5093
+ #
5094
+ # {
5095
+ # name: "MetadataKey",
5096
+ # value: "MetadataValue",
5097
+ # }
5098
+ #
5099
+ # @!attribute [rw] name
5100
+ # @return [String]
5101
+ #
5102
+ # @!attribute [rw] value
5103
+ # @return [String]
5104
+ #
5105
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/MetadataEntry AWS API Documentation
5106
+ #
5107
+ class MetadataEntry < Struct.new(
5108
+ :name,
5109
+ :value)
5110
+ include Aws::Structure
5111
+ end
5112
+
4927
5113
  # @note When making an API call, you may pass MetricsAndOperator
4928
5114
  # data as a hash:
4929
5115
  #
@@ -5398,6 +5584,89 @@ module Aws::S3
5398
5584
  include Aws::Structure
5399
5585
  end
5400
5586
 
5587
+ # Describes the location where the restore job's output is stored.
5588
+ #
5589
+ # @note When making an API call, you may pass OutputLocation
5590
+ # data as a hash:
5591
+ #
5592
+ # {
5593
+ # s3: {
5594
+ # bucket_name: "BucketName", # required
5595
+ # prefix: "LocationPrefix", # required
5596
+ # encryption: {
5597
+ # encryption_type: "AES256", # required, accepts AES256, aws:kms
5598
+ # kms_key_id: "SSEKMSKeyId",
5599
+ # kms_context: "KMSContext",
5600
+ # },
5601
+ # canned_acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
5602
+ # access_control_list: [
5603
+ # {
5604
+ # grantee: {
5605
+ # display_name: "DisplayName",
5606
+ # email_address: "EmailAddress",
5607
+ # id: "ID",
5608
+ # type: "CanonicalUser", # required, accepts CanonicalUser, AmazonCustomerByEmail, Group
5609
+ # uri: "URI",
5610
+ # },
5611
+ # permission: "FULL_CONTROL", # accepts FULL_CONTROL, WRITE, WRITE_ACP, READ, READ_ACP
5612
+ # },
5613
+ # ],
5614
+ # tagging: {
5615
+ # tag_set: [ # required
5616
+ # {
5617
+ # key: "ObjectKey", # required
5618
+ # value: "Value", # required
5619
+ # },
5620
+ # ],
5621
+ # },
5622
+ # user_metadata: [
5623
+ # {
5624
+ # name: "MetadataKey",
5625
+ # value: "MetadataValue",
5626
+ # },
5627
+ # ],
5628
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA
5629
+ # },
5630
+ # }
5631
+ #
5632
+ # @!attribute [rw] s3
5633
+ # Describes an S3 location that will receive the results of the
5634
+ # restore request.
5635
+ # @return [Types::S3Location]
5636
+ #
5637
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/OutputLocation AWS API Documentation
5638
+ #
5639
+ class OutputLocation < Struct.new(
5640
+ :s3)
5641
+ include Aws::Structure
5642
+ end
5643
+
5644
+ # Describes how results of the Select job are serialized.
5645
+ #
5646
+ # @note When making an API call, you may pass OutputSerialization
5647
+ # data as a hash:
5648
+ #
5649
+ # {
5650
+ # csv: {
5651
+ # quote_fields: "ALWAYS", # accepts ALWAYS, ASNEEDED
5652
+ # quote_escape_character: "QuoteEscapeCharacter",
5653
+ # record_delimiter: "RecordDelimiter",
5654
+ # field_delimiter: "FieldDelimiter",
5655
+ # quote_character: "QuoteCharacter",
5656
+ # },
5657
+ # }
5658
+ #
5659
+ # @!attribute [rw] csv
5660
+ # Describes the serialization of CSV-encoded Select results.
5661
+ # @return [Types::CSVOutput]
5662
+ #
5663
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/OutputSerialization AWS API Documentation
5664
+ #
5665
+ class OutputSerialization < Struct.new(
5666
+ :csv)
5667
+ include Aws::Structure
5668
+ end
5669
+
5401
5670
  # @note When making an API call, you may pass Owner
5402
5671
  # data as a hash:
5403
5672
  #
@@ -7064,10 +7333,16 @@ module Aws::S3
7064
7333
  # for the request.
7065
7334
  # @return [String]
7066
7335
  #
7336
+ # @!attribute [rw] restore_output_path
7337
+ # Indicates the path in the provided S3 output location where Select
7338
+ # results will be restored to.
7339
+ # @return [String]
7340
+ #
7067
7341
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreObjectOutput AWS API Documentation
7068
7342
  #
7069
7343
  class RestoreObjectOutput < Struct.new(
7070
- :request_charged)
7344
+ :request_charged,
7345
+ :restore_output_path)
7071
7346
  include Aws::Structure
7072
7347
  end
7073
7348
 
@@ -7079,10 +7354,75 @@ module Aws::S3
7079
7354
  # key: "ObjectKey", # required
7080
7355
  # version_id: "ObjectVersionId",
7081
7356
  # restore_request: {
7082
- # days: 1, # required
7357
+ # days: 1,
7083
7358
  # glacier_job_parameters: {
7084
7359
  # tier: "Standard", # required, accepts Standard, Bulk, Expedited
7085
7360
  # },
7361
+ # type: "SELECT", # accepts SELECT
7362
+ # tier: "Standard", # accepts Standard, Bulk, Expedited
7363
+ # description: "Description",
7364
+ # select_parameters: {
7365
+ # input_serialization: { # required
7366
+ # csv: {
7367
+ # file_header_info: "USE", # accepts USE, IGNORE, NONE
7368
+ # comments: "Comments",
7369
+ # quote_escape_character: "QuoteEscapeCharacter",
7370
+ # record_delimiter: "RecordDelimiter",
7371
+ # field_delimiter: "FieldDelimiter",
7372
+ # quote_character: "QuoteCharacter",
7373
+ # },
7374
+ # },
7375
+ # expression_type: "SQL", # required, accepts SQL
7376
+ # expression: "Expression", # required
7377
+ # output_serialization: { # required
7378
+ # csv: {
7379
+ # quote_fields: "ALWAYS", # accepts ALWAYS, ASNEEDED
7380
+ # quote_escape_character: "QuoteEscapeCharacter",
7381
+ # record_delimiter: "RecordDelimiter",
7382
+ # field_delimiter: "FieldDelimiter",
7383
+ # quote_character: "QuoteCharacter",
7384
+ # },
7385
+ # },
7386
+ # },
7387
+ # output_location: {
7388
+ # s3: {
7389
+ # bucket_name: "BucketName", # required
7390
+ # prefix: "LocationPrefix", # required
7391
+ # encryption: {
7392
+ # encryption_type: "AES256", # required, accepts AES256, aws:kms
7393
+ # kms_key_id: "SSEKMSKeyId",
7394
+ # kms_context: "KMSContext",
7395
+ # },
7396
+ # canned_acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
7397
+ # access_control_list: [
7398
+ # {
7399
+ # grantee: {
7400
+ # display_name: "DisplayName",
7401
+ # email_address: "EmailAddress",
7402
+ # id: "ID",
7403
+ # type: "CanonicalUser", # required, accepts CanonicalUser, AmazonCustomerByEmail, Group
7404
+ # uri: "URI",
7405
+ # },
7406
+ # permission: "FULL_CONTROL", # accepts FULL_CONTROL, WRITE, WRITE_ACP, READ, READ_ACP
7407
+ # },
7408
+ # ],
7409
+ # tagging: {
7410
+ # tag_set: [ # required
7411
+ # {
7412
+ # key: "ObjectKey", # required
7413
+ # value: "Value", # required
7414
+ # },
7415
+ # ],
7416
+ # },
7417
+ # user_metadata: [
7418
+ # {
7419
+ # name: "MetadataKey",
7420
+ # value: "MetadataValue",
7421
+ # },
7422
+ # ],
7423
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA
7424
+ # },
7425
+ # },
7086
7426
  # },
7087
7427
  # request_payer: "requester", # accepts requester
7088
7428
  # }
@@ -7097,6 +7437,7 @@ module Aws::S3
7097
7437
  # @return [String]
7098
7438
  #
7099
7439
  # @!attribute [rw] restore_request
7440
+ # Container for restore job parameters.
7100
7441
  # @return [Types::RestoreRequest]
7101
7442
  #
7102
7443
  # @!attribute [rw] request_payer
@@ -7118,29 +7459,123 @@ module Aws::S3
7118
7459
  include Aws::Structure
7119
7460
  end
7120
7461
 
7462
+ # Container for restore job parameters.
7463
+ #
7121
7464
  # @note When making an API call, you may pass RestoreRequest
7122
7465
  # data as a hash:
7123
7466
  #
7124
7467
  # {
7125
- # days: 1, # required
7468
+ # days: 1,
7126
7469
  # glacier_job_parameters: {
7127
7470
  # tier: "Standard", # required, accepts Standard, Bulk, Expedited
7128
7471
  # },
7472
+ # type: "SELECT", # accepts SELECT
7473
+ # tier: "Standard", # accepts Standard, Bulk, Expedited
7474
+ # description: "Description",
7475
+ # select_parameters: {
7476
+ # input_serialization: { # required
7477
+ # csv: {
7478
+ # file_header_info: "USE", # accepts USE, IGNORE, NONE
7479
+ # comments: "Comments",
7480
+ # quote_escape_character: "QuoteEscapeCharacter",
7481
+ # record_delimiter: "RecordDelimiter",
7482
+ # field_delimiter: "FieldDelimiter",
7483
+ # quote_character: "QuoteCharacter",
7484
+ # },
7485
+ # },
7486
+ # expression_type: "SQL", # required, accepts SQL
7487
+ # expression: "Expression", # required
7488
+ # output_serialization: { # required
7489
+ # csv: {
7490
+ # quote_fields: "ALWAYS", # accepts ALWAYS, ASNEEDED
7491
+ # quote_escape_character: "QuoteEscapeCharacter",
7492
+ # record_delimiter: "RecordDelimiter",
7493
+ # field_delimiter: "FieldDelimiter",
7494
+ # quote_character: "QuoteCharacter",
7495
+ # },
7496
+ # },
7497
+ # },
7498
+ # output_location: {
7499
+ # s3: {
7500
+ # bucket_name: "BucketName", # required
7501
+ # prefix: "LocationPrefix", # required
7502
+ # encryption: {
7503
+ # encryption_type: "AES256", # required, accepts AES256, aws:kms
7504
+ # kms_key_id: "SSEKMSKeyId",
7505
+ # kms_context: "KMSContext",
7506
+ # },
7507
+ # canned_acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
7508
+ # access_control_list: [
7509
+ # {
7510
+ # grantee: {
7511
+ # display_name: "DisplayName",
7512
+ # email_address: "EmailAddress",
7513
+ # id: "ID",
7514
+ # type: "CanonicalUser", # required, accepts CanonicalUser, AmazonCustomerByEmail, Group
7515
+ # uri: "URI",
7516
+ # },
7517
+ # permission: "FULL_CONTROL", # accepts FULL_CONTROL, WRITE, WRITE_ACP, READ, READ_ACP
7518
+ # },
7519
+ # ],
7520
+ # tagging: {
7521
+ # tag_set: [ # required
7522
+ # {
7523
+ # key: "ObjectKey", # required
7524
+ # value: "Value", # required
7525
+ # },
7526
+ # ],
7527
+ # },
7528
+ # user_metadata: [
7529
+ # {
7530
+ # name: "MetadataKey",
7531
+ # value: "MetadataValue",
7532
+ # },
7533
+ # ],
7534
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA
7535
+ # },
7536
+ # },
7129
7537
  # }
7130
7538
  #
7131
7539
  # @!attribute [rw] days
7132
- # Lifetime of the active copy in days
7540
+ # Lifetime of the active copy in days. Do not use with restores that
7541
+ # specify OutputLocation.
7133
7542
  # @return [Integer]
7134
7543
  #
7135
7544
  # @!attribute [rw] glacier_job_parameters
7136
- # Glacier related prameters pertaining to this job.
7545
+ # Glacier related parameters pertaining to this job. Do not use with
7546
+ # restores that specify OutputLocation.
7137
7547
  # @return [Types::GlacierJobParameters]
7138
7548
  #
7549
+ # @!attribute [rw] type
7550
+ # Type of restore request.
7551
+ # @return [String]
7552
+ #
7553
+ # @!attribute [rw] tier
7554
+ # Glacier retrieval tier at which the restore will be processed.
7555
+ # @return [String]
7556
+ #
7557
+ # @!attribute [rw] description
7558
+ # The optional description for the job.
7559
+ # @return [String]
7560
+ #
7561
+ # @!attribute [rw] select_parameters
7562
+ # Describes the parameters for Select job types.
7563
+ # @return [Types::SelectParameters]
7564
+ #
7565
+ # @!attribute [rw] output_location
7566
+ # Describes the location where the restore job's output is stored.
7567
+ # @return [Types::OutputLocation]
7568
+ #
7139
7569
  # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/RestoreRequest AWS API Documentation
7140
7570
  #
7141
7571
  class RestoreRequest < Struct.new(
7142
7572
  :days,
7143
- :glacier_job_parameters)
7573
+ :glacier_job_parameters,
7574
+ :type,
7575
+ :tier,
7576
+ :description,
7577
+ :select_parameters,
7578
+ :output_location)
7144
7579
  include Aws::Structure
7145
7580
  end
7146
7581
 
@@ -7297,6 +7732,98 @@ module Aws::S3
7297
7732
  include Aws::Structure
7298
7733
  end
7299
7734
 
7735
+ # Describes an S3 location that will receive the results of the restore
7736
+ # request.
7737
+ #
7738
+ # @note When making an API call, you may pass S3Location
7739
+ # data as a hash:
7740
+ #
7741
+ # {
7742
+ # bucket_name: "BucketName", # required
7743
+ # prefix: "LocationPrefix", # required
7744
+ # encryption: {
7745
+ # encryption_type: "AES256", # required, accepts AES256, aws:kms
7746
+ # kms_key_id: "SSEKMSKeyId",
7747
+ # kms_context: "KMSContext",
7748
+ # },
7749
+ # canned_acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
7750
+ # access_control_list: [
7751
+ # {
7752
+ # grantee: {
7753
+ # display_name: "DisplayName",
7754
+ # email_address: "EmailAddress",
7755
+ # id: "ID",
7756
+ # type: "CanonicalUser", # required, accepts CanonicalUser, AmazonCustomerByEmail, Group
7757
+ # uri: "URI",
7758
+ # },
7759
+ # permission: "FULL_CONTROL", # accepts FULL_CONTROL, WRITE, WRITE_ACP, READ, READ_ACP
7760
+ # },
7761
+ # ],
7762
+ # tagging: {
7763
+ # tag_set: [ # required
7764
+ # {
7765
+ # key: "ObjectKey", # required
7766
+ # value: "Value", # required
7767
+ # },
7768
+ # ],
7769
+ # },
7770
+ # user_metadata: [
7771
+ # {
7772
+ # name: "MetadataKey",
7773
+ # value: "MetadataValue",
7774
+ # },
7775
+ # ],
7776
+ # storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA
7777
+ # }
7778
+ #
7779
+ # @!attribute [rw] bucket_name
7780
+ # The name of the bucket where the restore results will be placed.
7781
+ # @return [String]
7782
+ #
7783
+ # @!attribute [rw] prefix
7784
+ # The prefix that is prepended to the restore results for this
7785
+ # request.
7786
+ # @return [String]
7787
+ #
7788
+ # @!attribute [rw] encryption
7789
+ # Describes the server-side encryption that will be applied to the
7790
+ # restore results.
7791
+ # @return [Types::Encryption]
7792
+ #
7793
+ # @!attribute [rw] canned_acl
7794
+ # The canned ACL to apply to the restore results.
7795
+ # @return [String]
7796
+ #
7797
+ # @!attribute [rw] access_control_list
7798
+ # A list of grants that control access to the staged results.
7799
+ # @return [Array<Types::Grant>]
7800
+ #
7801
+ # @!attribute [rw] tagging
7802
+ # The tag-set that is applied to the restore results.
7803
+ # @return [Types::Tagging]
7804
+ #
7805
+ # @!attribute [rw] user_metadata
7806
+ # A list of metadata to store with the restore results in S3.
7807
+ # @return [Array<Types::MetadataEntry>]
7808
+ #
7809
+ # @!attribute [rw] storage_class
7810
+ # The class of storage used to store the restore results.
7811
+ # @return [String]
7812
+ #
7813
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/S3Location AWS API Documentation
7814
+ #
7815
+ class S3Location < Struct.new(
7816
+ :bucket_name,
7817
+ :prefix,
7818
+ :encryption,
7819
+ :canned_acl,
7820
+ :access_control_list,
7821
+ :tagging,
7822
+ :user_metadata,
7823
+ :storage_class)
7824
+ include Aws::Structure
7825
+ end
7826
+
7300
7827
  # Specifies the use of SSE-KMS to encrypt delievered Inventory reports.
7301
7828
  #
7302
7829
  # @note When making an API call, you may pass SSEKMS
@@ -7326,6 +7853,61 @@ module Aws::S3
7326
7853
  #
7327
7854
  class SSES3 < Aws::EmptyStructure; end
7328
7855
 
7856
+ # Describes the parameters for Select job types.
7857
+ #
7858
+ # @note When making an API call, you may pass SelectParameters
7859
+ # data as a hash:
7860
+ #
7861
+ # {
7862
+ # input_serialization: { # required
7863
+ # csv: {
7864
+ # file_header_info: "USE", # accepts USE, IGNORE, NONE
7865
+ # comments: "Comments",
7866
+ # quote_escape_character: "QuoteEscapeCharacter",
7867
+ # record_delimiter: "RecordDelimiter",
7868
+ # field_delimiter: "FieldDelimiter",
7869
+ # quote_character: "QuoteCharacter",
7870
+ # },
7871
+ # },
7872
+ # expression_type: "SQL", # required, accepts SQL
7873
+ # expression: "Expression", # required
7874
+ # output_serialization: { # required
7875
+ # csv: {
7876
+ # quote_fields: "ALWAYS", # accepts ALWAYS, ASNEEDED
7877
+ # quote_escape_character: "QuoteEscapeCharacter",
7878
+ # record_delimiter: "RecordDelimiter",
7879
+ # field_delimiter: "FieldDelimiter",
7880
+ # quote_character: "QuoteCharacter",
7881
+ # },
7882
+ # },
7883
+ # }
7884
+ #
7885
+ # @!attribute [rw] input_serialization
7886
+ # Describes the serialization format of the object.
7887
+ # @return [Types::InputSerialization]
7888
+ #
7889
+ # @!attribute [rw] expression_type
7890
+ # The type of the provided expression (e.g., SQL).
7891
+ # @return [String]
7892
+ #
7893
+ # @!attribute [rw] expression
7894
+ # The expression that is used to query the object.
7895
+ # @return [String]
7896
+ #
7897
+ # @!attribute [rw] output_serialization
7898
+ # Describes how the results of the Select job are serialized.
7899
+ # @return [Types::OutputSerialization]
7900
+ #
7901
+ # @see http://docs.aws.amazon.com/goto/WebAPI/s3-2006-03-01/SelectParameters AWS API Documentation
7902
+ #
7903
+ class SelectParameters < Struct.new(
7904
+ :input_serialization,
7905
+ :expression_type,
7906
+ :expression,
7907
+ :output_serialization)
7908
+ include Aws::Structure
7909
+ end
7910
+
7329
7911
  # Describes the default server-side encryption to apply to new objects
7330
7912
  # in the bucket. If Put Object request does not specify any server-side
7331
7913
  # encryption, this default encryption will be applied.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-s3
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.0
4
+ version: 1.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-11-17 00:00:00.000000000 Z
11
+ date: 2017-11-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-kms