aws-sdk-kinesis 1.0.0.rc6 → 1.0.0.rc7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 06cb49f340515303bba7f420f1d69d37a7357526
4
- data.tar.gz: c0e520e5b62f490e5f06ae7db0b3ce206a99429d
3
+ metadata.gz: 7920fd59d51af354f4d90e772ea1930fee76c6c8
4
+ data.tar.gz: 32d549a450f852865bfa72bf77b29f89af2651d6
5
5
  SHA512:
6
- metadata.gz: 56392442f76cadb18251450df1c247d6510594868577d85d402843fefd4f64f382f4f75e353ce94af6abe152656f1af17a3f92d1ef8c323131080c1324d305d1
7
- data.tar.gz: 8fdbcc3c4549bba25a574ae8b6dfb2ff0421bc871e766d0a7319da73dce18d4f0569123238b697fbb2f1cfb880831030168a31b1bb2a92da8dba10a06a247da0
6
+ metadata.gz: b452e908bd7a65f373356dede794a4903440c6604a03eb80664e9684bb009621376bf37935c809ed1da8a6c994d2dc21bd16590e29d148a87b84633ff39515b3
7
+ data.tar.gz: 0175b0be457256014a339b0912d1d489122355b2f2ae244509a68c4e08e0392625a66c10901b8571d975a3a024bdaa270e4afc1a0572bb29c8f46b57fa75014b
@@ -43,6 +43,6 @@ require_relative 'aws-sdk-kinesis/customizations'
43
43
  # @service
44
44
  module Aws::Kinesis
45
45
 
46
- GEM_VERSION = '1.0.0.rc6'
46
+ GEM_VERSION = '1.0.0.rc7'
47
47
 
48
48
  end
@@ -435,6 +435,8 @@ module Aws::Kinesis
435
435
  # resp.stream_description.enhanced_monitoring #=> Array
436
436
  # resp.stream_description.enhanced_monitoring[0].shard_level_metrics #=> Array
437
437
  # resp.stream_description.enhanced_monitoring[0].shard_level_metrics[0] #=> String, one of "IncomingBytes", "IncomingRecords", "OutgoingBytes", "OutgoingRecords", "WriteProvisionedThroughputExceeded", "ReadProvisionedThroughputExceeded", "IteratorAgeMilliseconds", "ALL"
438
+ # resp.stream_description.encryption_type #=> String, one of "NONE", "KMS"
439
+ # resp.stream_description.key_id #=> String
438
440
  #
439
441
  # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/DescribeStream AWS API Documentation
440
442
  #
@@ -670,6 +672,7 @@ module Aws::Kinesis
670
672
  # resp.records[0].approximate_arrival_timestamp #=> Time
671
673
  # resp.records[0].data #=> String
672
674
  # resp.records[0].partition_key #=> String
675
+ # resp.records[0].encryption_type #=> String, one of "NONE", "KMS"
673
676
  # resp.next_shard_iterator #=> String
674
677
  # resp.millis_behind_latest #=> Integer
675
678
  #
@@ -1052,8 +1055,10 @@ module Aws::Kinesis
1052
1055
  # provisioned throughput on the shard involved in the request,
1053
1056
  # `PutRecord` throws `ProvisionedThroughputExceededException`.
1054
1057
  #
1055
- # Data records are accessible for only 24 hours from the time that they
1056
- # are added to a stream.
1058
+ # By default, data records are accessible for 24 hours from the time
1059
+ # that they are added to a stream. You can use
1060
+ # IncreaseStreamRetentionPeriod or DecreaseStreamRetentionPeriod to
1061
+ # modify this retention period.
1057
1062
  #
1058
1063
  #
1059
1064
  #
@@ -1095,6 +1100,7 @@ module Aws::Kinesis
1095
1100
  #
1096
1101
  # * {Types::PutRecordOutput#shard_id #shard_id} => String
1097
1102
  # * {Types::PutRecordOutput#sequence_number #sequence_number} => String
1103
+ # * {Types::PutRecordOutput#encryption_type #encryption_type} => String
1098
1104
  #
1099
1105
  # @example Request syntax with placeholder values
1100
1106
  #
@@ -1110,6 +1116,7 @@ module Aws::Kinesis
1110
1116
  #
1111
1117
  # resp.shard_id #=> String
1112
1118
  # resp.sequence_number #=> String
1119
+ # resp.encryption_type #=> String, one of "NONE", "KMS"
1113
1120
  #
1114
1121
  # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/PutRecord AWS API Documentation
1115
1122
  #
@@ -1184,10 +1191,10 @@ module Aws::Kinesis
1184
1191
  # see [Adding Multiple Records with PutRecords][3] in the *Amazon
1185
1192
  # Kinesis Streams Developer Guide*.
1186
1193
  #
1187
- # By default, data records are accessible for only 24 hours from the
1188
- # time that they are added to an Amazon Kinesis stream. This retention
1189
- # period can be modified using the DecreaseStreamRetentionPeriod and
1190
- # IncreaseStreamRetentionPeriod operations.
1194
+ # By default, data records are accessible for 24 hours from the time
1195
+ # that they are added to a stream. You can use
1196
+ # IncreaseStreamRetentionPeriod or DecreaseStreamRetentionPeriod to
1197
+ # modify this retention period.
1191
1198
  #
1192
1199
  #
1193
1200
  #
@@ -1205,6 +1212,7 @@ module Aws::Kinesis
1205
1212
  #
1206
1213
  # * {Types::PutRecordsOutput#failed_record_count #failed_record_count} => Integer
1207
1214
  # * {Types::PutRecordsOutput#records #records} => Array<Types::PutRecordsResultEntry>
1215
+ # * {Types::PutRecordsOutput#encryption_type #encryption_type} => String
1208
1216
  #
1209
1217
  # @example Request syntax with placeholder values
1210
1218
  #
@@ -1227,6 +1235,7 @@ module Aws::Kinesis
1227
1235
  # resp.records[0].shard_id #=> String
1228
1236
  # resp.records[0].error_code #=> String
1229
1237
  # resp.records[0].error_message #=> String
1238
+ # resp.encryption_type #=> String, one of "NONE", "KMS"
1230
1239
  #
1231
1240
  # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/PutRecords AWS API Documentation
1232
1241
  #
@@ -1360,6 +1369,119 @@ module Aws::Kinesis
1360
1369
  req.send_request(options)
1361
1370
  end
1362
1371
 
1372
+ # Enables or updates server-side encryption using an AWS KMS key for a
1373
+ # specified stream.
1374
+ #
1375
+ # Starting encryption is an asynchronous operation. Upon receiving the
1376
+ # request, Amazon Kinesis returns immediately and sets the status of the
1377
+ # stream to `UPDATING`. After the update is complete, Amazon Kinesis
1378
+ # sets the status of the stream back to `ACTIVE`. Updating or applying
1379
+ # encryption normally takes a few seconds to complete but it can take
1380
+ # minutes. You can continue to read and write data to your stream while
1381
+ # its status is `UPDATING`. Once the status of the stream is `ACTIVE`,
1382
+ # records written to the stream will begin to be encrypted.
1383
+ #
1384
+ # API Limits: You can successfully apply a new AWS KMS key for
1385
+ # server-side encryption 25 times in a rolling 24 hour period.
1386
+ #
1387
+ # Note: It can take up to 5 seconds after the stream is in an `ACTIVE`
1388
+ # status before all records written to the stream are encrypted. After
1389
+ # you’ve enabled encryption, you can verify encryption was applied by
1390
+ # inspecting the API response from `PutRecord` or `PutRecords`.
1391
+ #
1392
+ # @option params [required, String] :stream_name
1393
+ # The name of the stream for which to start encrypting records.
1394
+ #
1395
+ # @option params [required, String] :encryption_type
1396
+ # The encryption type to use. This parameter can be one of the following
1397
+ # values:
1398
+ #
1399
+ # * `NONE`\: Not valid for this operation. An
1400
+ # `InvalidOperationException` will be thrown.
1401
+ #
1402
+ # * `KMS`\: Use server-side encryption on the records in the stream
1403
+ # using a customer-managed KMS key.
1404
+ #
1405
+ # @option params [required, String] :key_id
1406
+ # The GUID for the customer-managed KMS key to use for encryption. You
1407
+ # can also use a Kinesis-owned master key by specifying the alias
1408
+ # `aws/kinesis`.
1409
+ #
1410
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1411
+ #
1412
+ # @example Request syntax with placeholder values
1413
+ #
1414
+ # resp = client.start_stream_encryption({
1415
+ # stream_name: "StreamName", # required
1416
+ # encryption_type: "NONE", # required, accepts NONE, KMS
1417
+ # key_id: "KeyId", # required
1418
+ # })
1419
+ #
1420
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/StartStreamEncryption AWS API Documentation
1421
+ #
1422
+ # @overload start_stream_encryption(params = {})
1423
+ # @param [Hash] params ({})
1424
+ def start_stream_encryption(params = {}, options = {})
1425
+ req = build_request(:start_stream_encryption, params)
1426
+ req.send_request(options)
1427
+ end
1428
+
1429
+ # Disables server-side encryption for a specified stream.
1430
+ #
1431
+ # Stopping encryption is an asynchronous operation. Upon receiving the
1432
+ # request, Amazon Kinesis returns immediately and sets the status of the
1433
+ # stream to `UPDATING`. After the update is complete, Amazon Kinesis
1434
+ # sets the status of the stream back to `ACTIVE`. Stopping encryption
1435
+ # normally takes a few seconds to complete but it can take minutes. You
1436
+ # can continue to read and write data to your stream while its status is
1437
+ # `UPDATING`. Once the status of the stream is `ACTIVE` records written
1438
+ # to the stream will no longer be encrypted by the Amazon Kinesis
1439
+ # Streams service.
1440
+ #
1441
+ # API Limits: You can successfully disable server-side encryption 25
1442
+ # times in a rolling 24 hour period.
1443
+ #
1444
+ # Note: It can take up to 5 seconds after the stream is in an `ACTIVE`
1445
+ # status before all records written to the stream are no longer subject
1446
+ # to encryption. After you’ve disabled encryption, you can verify
1447
+ # encryption was not applied by inspecting the API response from
1448
+ # `PutRecord` or `PutRecords`.
1449
+ #
1450
+ # @option params [required, String] :stream_name
1451
+ # The name of the stream on which to stop encrypting records.
1452
+ #
1453
+ # @option params [required, String] :encryption_type
1454
+ # The encryption type. This parameter can be one of the following
1455
+ # values:
1456
+ #
1457
+ # * `NONE`\: Not valid for this operation. An
1458
+ # `InvalidOperationException` will be thrown.
1459
+ #
1460
+ # * `KMS`\: Use server-side encryption on the records in the stream
1461
+ # using a customer-managed KMS key.
1462
+ #
1463
+ # @option params [required, String] :key_id
1464
+ # The GUID for the customer-managed key that was used for encryption.
1465
+ #
1466
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1467
+ #
1468
+ # @example Request syntax with placeholder values
1469
+ #
1470
+ # resp = client.stop_stream_encryption({
1471
+ # stream_name: "StreamName", # required
1472
+ # encryption_type: "NONE", # required, accepts NONE, KMS
1473
+ # key_id: "KeyId", # required
1474
+ # })
1475
+ #
1476
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/StopStreamEncryption AWS API Documentation
1477
+ #
1478
+ # @overload stop_stream_encryption(params = {})
1479
+ # @param [Hash] params ({})
1480
+ def stop_stream_encryption(params = {}, options = {})
1481
+ req = build_request(:stop_stream_encryption, params)
1482
+ req.send_request(options)
1483
+ end
1484
+
1363
1485
  # Updates the shard count of the specified stream to the specified
1364
1486
  # number of shards.
1365
1487
  #
@@ -1371,16 +1493,29 @@ module Aws::Kinesis
1371
1493
  # complete. You can continue to read and write data to your stream while
1372
1494
  # its status is `UPDATING`.
1373
1495
  #
1374
- # To update the shard count, Amazon Kinesis performs splits and merges
1375
- # and individual shards. This can cause short-lived shards to be
1376
- # created, in addition to the final shards. We recommend that you double
1377
- # or halve the shard count, as this results in the fewest number of
1378
- # splits or merges.
1496
+ # To update the shard count, Amazon Kinesis performs splits or merges on
1497
+ # individual shards. This can cause short-lived shards to be created, in
1498
+ # addition to the final shards. We recommend that you double or halve
1499
+ # the shard count, as this results in the fewest number of splits or
1500
+ # merges.
1501
+ #
1502
+ # This operation has the following limits, which are per region per
1503
+ # account unless otherwise noted:
1504
+ #
1505
+ # * scale more than twice per rolling 24 hour period
1506
+ #
1507
+ # * scale up above double your current shard count
1508
+ #
1509
+ # * scale down below half your current shard count
1510
+ #
1511
+ # * scale up above 200 shards in a stream
1512
+ #
1513
+ # * scale a stream with more than 200 shards down unless the result is
1514
+ # less than 200 shards
1515
+ #
1516
+ # * scale up above the shard limits for your account
1379
1517
  #
1380
- # This operation has a rate limit of twice per rolling 24 hour period.
1381
- # You cannot scale above double your current shard count, scale below
1382
- # half your current shard count, or exceed the shard limits for your
1383
- # account.
1518
+ # *
1384
1519
  #
1385
1520
  # For the default limits for an AWS account, see [Streams Limits][1] in
1386
1521
  # the *Amazon Kinesis Streams Developer Guide*. If you need to increase
@@ -1442,7 +1577,7 @@ module Aws::Kinesis
1442
1577
  params: params,
1443
1578
  config: config)
1444
1579
  context[:gem_name] = 'aws-sdk-kinesis'
1445
- context[:gem_version] = '1.0.0.rc6'
1580
+ context[:gem_version] = '1.0.0.rc7'
1446
1581
  Seahorse::Client::Request.new(handlers, context)
1447
1582
  end
1448
1583
 
@@ -24,6 +24,7 @@ module Aws::Kinesis
24
24
  DescribeStreamOutput = Shapes::StructureShape.new(name: 'DescribeStreamOutput')
25
25
  DisableEnhancedMonitoringInput = Shapes::StructureShape.new(name: 'DisableEnhancedMonitoringInput')
26
26
  EnableEnhancedMonitoringInput = Shapes::StructureShape.new(name: 'EnableEnhancedMonitoringInput')
27
+ EncryptionType = Shapes::StringShape.new(name: 'EncryptionType')
27
28
  EnhancedMetrics = Shapes::StructureShape.new(name: 'EnhancedMetrics')
28
29
  EnhancedMonitoringList = Shapes::ListShape.new(name: 'EnhancedMonitoringList')
29
30
  EnhancedMonitoringOutput = Shapes::StructureShape.new(name: 'EnhancedMonitoringOutput')
@@ -39,6 +40,13 @@ module Aws::Kinesis
39
40
  HashKeyRange = Shapes::StructureShape.new(name: 'HashKeyRange')
40
41
  IncreaseStreamRetentionPeriodInput = Shapes::StructureShape.new(name: 'IncreaseStreamRetentionPeriodInput')
41
42
  InvalidArgumentException = Shapes::StructureShape.new(name: 'InvalidArgumentException')
43
+ KMSAccessDeniedException = Shapes::StructureShape.new(name: 'KMSAccessDeniedException')
44
+ KMSDisabledException = Shapes::StructureShape.new(name: 'KMSDisabledException')
45
+ KMSInvalidStateException = Shapes::StructureShape.new(name: 'KMSInvalidStateException')
46
+ KMSNotFoundException = Shapes::StructureShape.new(name: 'KMSNotFoundException')
47
+ KMSOptInRequired = Shapes::StructureShape.new(name: 'KMSOptInRequired')
48
+ KMSThrottlingException = Shapes::StructureShape.new(name: 'KMSThrottlingException')
49
+ KeyId = Shapes::StringShape.new(name: 'KeyId')
42
50
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
43
51
  ListStreamsInput = Shapes::StructureShape.new(name: 'ListStreamsInput')
44
52
  ListStreamsInputLimit = Shapes::IntegerShape.new(name: 'ListStreamsInputLimit')
@@ -76,6 +84,8 @@ module Aws::Kinesis
76
84
  ShardIteratorType = Shapes::StringShape.new(name: 'ShardIteratorType')
77
85
  ShardList = Shapes::ListShape.new(name: 'ShardList')
78
86
  SplitShardInput = Shapes::StructureShape.new(name: 'SplitShardInput')
87
+ StartStreamEncryptionInput = Shapes::StructureShape.new(name: 'StartStreamEncryptionInput')
88
+ StopStreamEncryptionInput = Shapes::StructureShape.new(name: 'StopStreamEncryptionInput')
79
89
  StreamARN = Shapes::StringShape.new(name: 'StreamARN')
80
90
  StreamDescription = Shapes::StructureShape.new(name: 'StreamDescription')
81
91
  StreamName = Shapes::StringShape.new(name: 'StreamName')
@@ -198,6 +208,7 @@ module Aws::Kinesis
198
208
 
199
209
  PutRecordOutput.add_member(:shard_id, Shapes::ShapeRef.new(shape: ShardId, required: true, location_name: "ShardId"))
200
210
  PutRecordOutput.add_member(:sequence_number, Shapes::ShapeRef.new(shape: SequenceNumber, required: true, location_name: "SequenceNumber"))
211
+ PutRecordOutput.add_member(:encryption_type, Shapes::ShapeRef.new(shape: EncryptionType, location_name: "EncryptionType"))
201
212
  PutRecordOutput.struct_class = Types::PutRecordOutput
202
213
 
203
214
  PutRecordsInput.add_member(:records, Shapes::ShapeRef.new(shape: PutRecordsRequestEntryList, required: true, location_name: "Records"))
@@ -206,6 +217,7 @@ module Aws::Kinesis
206
217
 
207
218
  PutRecordsOutput.add_member(:failed_record_count, Shapes::ShapeRef.new(shape: PositiveIntegerObject, location_name: "FailedRecordCount"))
208
219
  PutRecordsOutput.add_member(:records, Shapes::ShapeRef.new(shape: PutRecordsResultEntryList, required: true, location_name: "Records"))
220
+ PutRecordsOutput.add_member(:encryption_type, Shapes::ShapeRef.new(shape: EncryptionType, location_name: "EncryptionType"))
209
221
  PutRecordsOutput.struct_class = Types::PutRecordsOutput
210
222
 
211
223
  PutRecordsRequestEntry.add_member(:data, Shapes::ShapeRef.new(shape: Data, required: true, location_name: "Data"))
@@ -227,6 +239,7 @@ module Aws::Kinesis
227
239
  Record.add_member(:approximate_arrival_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "ApproximateArrivalTimestamp"))
228
240
  Record.add_member(:data, Shapes::ShapeRef.new(shape: Data, required: true, location_name: "Data"))
229
241
  Record.add_member(:partition_key, Shapes::ShapeRef.new(shape: PartitionKey, required: true, location_name: "PartitionKey"))
242
+ Record.add_member(:encryption_type, Shapes::ShapeRef.new(shape: EncryptionType, location_name: "EncryptionType"))
230
243
  Record.struct_class = Types::Record
231
244
 
232
245
  RecordList.member = Shapes::ShapeRef.new(shape: Record)
@@ -253,6 +266,16 @@ module Aws::Kinesis
253
266
  SplitShardInput.add_member(:new_starting_hash_key, Shapes::ShapeRef.new(shape: HashKey, required: true, location_name: "NewStartingHashKey"))
254
267
  SplitShardInput.struct_class = Types::SplitShardInput
255
268
 
269
+ StartStreamEncryptionInput.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, required: true, location_name: "StreamName"))
270
+ StartStreamEncryptionInput.add_member(:encryption_type, Shapes::ShapeRef.new(shape: EncryptionType, required: true, location_name: "EncryptionType"))
271
+ StartStreamEncryptionInput.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyId, required: true, location_name: "KeyId"))
272
+ StartStreamEncryptionInput.struct_class = Types::StartStreamEncryptionInput
273
+
274
+ StopStreamEncryptionInput.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, required: true, location_name: "StreamName"))
275
+ StopStreamEncryptionInput.add_member(:encryption_type, Shapes::ShapeRef.new(shape: EncryptionType, required: true, location_name: "EncryptionType"))
276
+ StopStreamEncryptionInput.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyId, required: true, location_name: "KeyId"))
277
+ StopStreamEncryptionInput.struct_class = Types::StopStreamEncryptionInput
278
+
256
279
  StreamDescription.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, required: true, location_name: "StreamName"))
257
280
  StreamDescription.add_member(:stream_arn, Shapes::ShapeRef.new(shape: StreamARN, required: true, location_name: "StreamARN"))
258
281
  StreamDescription.add_member(:stream_status, Shapes::ShapeRef.new(shape: StreamStatus, required: true, location_name: "StreamStatus"))
@@ -261,6 +284,8 @@ module Aws::Kinesis
261
284
  StreamDescription.add_member(:retention_period_hours, Shapes::ShapeRef.new(shape: PositiveIntegerObject, required: true, location_name: "RetentionPeriodHours"))
262
285
  StreamDescription.add_member(:stream_creation_timestamp, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "StreamCreationTimestamp"))
263
286
  StreamDescription.add_member(:enhanced_monitoring, Shapes::ShapeRef.new(shape: EnhancedMonitoringList, required: true, location_name: "EnhancedMonitoring"))
287
+ StreamDescription.add_member(:encryption_type, Shapes::ShapeRef.new(shape: EncryptionType, location_name: "EncryptionType"))
288
+ StreamDescription.add_member(:key_id, Shapes::ShapeRef.new(shape: KeyId, location_name: "KeyId"))
264
289
  StreamDescription.struct_class = Types::StreamDescription
265
290
 
266
291
  StreamNameList.member = Shapes::ShapeRef.new(shape: StreamName)
@@ -405,6 +430,12 @@ module Aws::Kinesis
405
430
  o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
406
431
  o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
407
432
  o.errors << Shapes::ShapeRef.new(shape: ExpiredIteratorException)
433
+ o.errors << Shapes::ShapeRef.new(shape: KMSDisabledException)
434
+ o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
435
+ o.errors << Shapes::ShapeRef.new(shape: KMSAccessDeniedException)
436
+ o.errors << Shapes::ShapeRef.new(shape: KMSNotFoundException)
437
+ o.errors << Shapes::ShapeRef.new(shape: KMSOptInRequired)
438
+ o.errors << Shapes::ShapeRef.new(shape: KMSThrottlingException)
408
439
  end)
409
440
 
410
441
  api.add_operation(:get_shard_iterator, Seahorse::Model::Operation.new.tap do |o|
@@ -477,6 +508,12 @@ module Aws::Kinesis
477
508
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
478
509
  o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
479
510
  o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
511
+ o.errors << Shapes::ShapeRef.new(shape: KMSDisabledException)
512
+ o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
513
+ o.errors << Shapes::ShapeRef.new(shape: KMSAccessDeniedException)
514
+ o.errors << Shapes::ShapeRef.new(shape: KMSNotFoundException)
515
+ o.errors << Shapes::ShapeRef.new(shape: KMSOptInRequired)
516
+ o.errors << Shapes::ShapeRef.new(shape: KMSThrottlingException)
480
517
  end)
481
518
 
482
519
  api.add_operation(:put_records, Seahorse::Model::Operation.new.tap do |o|
@@ -488,6 +525,12 @@ module Aws::Kinesis
488
525
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
489
526
  o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
490
527
  o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
528
+ o.errors << Shapes::ShapeRef.new(shape: KMSDisabledException)
529
+ o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
530
+ o.errors << Shapes::ShapeRef.new(shape: KMSAccessDeniedException)
531
+ o.errors << Shapes::ShapeRef.new(shape: KMSNotFoundException)
532
+ o.errors << Shapes::ShapeRef.new(shape: KMSOptInRequired)
533
+ o.errors << Shapes::ShapeRef.new(shape: KMSThrottlingException)
491
534
  end)
492
535
 
493
536
  api.add_operation(:remove_tags_from_stream, Seahorse::Model::Operation.new.tap do |o|
@@ -514,6 +557,36 @@ module Aws::Kinesis
514
557
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
515
558
  end)
516
559
 
560
+ api.add_operation(:start_stream_encryption, Seahorse::Model::Operation.new.tap do |o|
561
+ o.name = "StartStreamEncryption"
562
+ o.http_method = "POST"
563
+ o.http_request_uri = "/"
564
+ o.input = Shapes::ShapeRef.new(shape: StartStreamEncryptionInput)
565
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
566
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
567
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
568
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
569
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
570
+ o.errors << Shapes::ShapeRef.new(shape: KMSDisabledException)
571
+ o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
572
+ o.errors << Shapes::ShapeRef.new(shape: KMSAccessDeniedException)
573
+ o.errors << Shapes::ShapeRef.new(shape: KMSNotFoundException)
574
+ o.errors << Shapes::ShapeRef.new(shape: KMSOptInRequired)
575
+ o.errors << Shapes::ShapeRef.new(shape: KMSThrottlingException)
576
+ end)
577
+
578
+ api.add_operation(:stop_stream_encryption, Seahorse::Model::Operation.new.tap do |o|
579
+ o.name = "StopStreamEncryption"
580
+ o.http_method = "POST"
581
+ o.http_request_uri = "/"
582
+ o.input = Shapes::ShapeRef.new(shape: StopStreamEncryptionInput)
583
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
584
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
585
+ o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
586
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
587
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
588
+ end)
589
+
517
590
  api.add_operation(:update_shard_count, Seahorse::Model::Operation.new.tap do |o|
518
591
  o.name = "UpdateShardCount"
519
592
  o.http_method = "POST"
@@ -763,11 +763,22 @@ module Aws::Kinesis
763
763
  # associated with every record put into the stream.
764
764
  # @return [String]
765
765
  #
766
+ # @!attribute [rw] encryption_type
767
+ # The encryption type to use on the record. This parameter can be one
768
+ # of the following values:
769
+ #
770
+ # * `NONE`\: Do not encrypt the records in the stream.
771
+ #
772
+ # * `KMS`\: Use server-side encryption on the records in the stream
773
+ # using a customer-managed KMS key.
774
+ # @return [String]
775
+ #
766
776
  # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/PutRecordOutput AWS API Documentation
767
777
  #
768
778
  class PutRecordOutput < Struct.new(
769
779
  :shard_id,
770
- :sequence_number)
780
+ :sequence_number,
781
+ :encryption_type)
771
782
  include Aws::Structure
772
783
  end
773
784
 
@@ -818,11 +829,22 @@ module Aws::Kinesis
818
829
  # includes `ErrorCode` and `ErrorMessage` in the result.
819
830
  # @return [Array<Types::PutRecordsResultEntry>]
820
831
  #
832
+ # @!attribute [rw] encryption_type
833
+ # The encryption type used on the records. This parameter can be one
834
+ # of the following values:
835
+ #
836
+ # * `NONE`\: Do not encrypt the records.
837
+ #
838
+ # * `KMS`\: Use server-side encryption on the records using a
839
+ # customer-managed KMS key.
840
+ # @return [String]
841
+ #
821
842
  # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/PutRecordsOutput AWS API Documentation
822
843
  #
823
844
  class PutRecordsOutput < Struct.new(
824
845
  :failed_record_count,
825
- :records)
846
+ :records,
847
+ :encryption_type)
826
848
  include Aws::Structure
827
849
  end
828
850
 
@@ -912,7 +934,7 @@ module Aws::Kinesis
912
934
  # sequence number, a partition key, and a data blob.
913
935
  #
914
936
  # @!attribute [rw] sequence_number
915
- # The unique identifier of the record in the stream.
937
+ # The unique identifier of the record within its shard.
916
938
  # @return [String]
917
939
  #
918
940
  # @!attribute [rw] approximate_arrival_timestamp
@@ -931,13 +953,24 @@ module Aws::Kinesis
931
953
  # Identifies which shard in the stream the data record is assigned to.
932
954
  # @return [String]
933
955
  #
956
+ # @!attribute [rw] encryption_type
957
+ # The encryption type used on the record. This parameter can be one of
958
+ # the following values:
959
+ #
960
+ # * `NONE`\: Do not encrypt the records in the stream.
961
+ #
962
+ # * `KMS`\: Use server-side encryption on the records in the stream
963
+ # using a customer-managed KMS key.
964
+ # @return [String]
965
+ #
934
966
  # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/Record AWS API Documentation
935
967
  #
936
968
  class Record < Struct.new(
937
969
  :sequence_number,
938
970
  :approximate_arrival_timestamp,
939
971
  :data,
940
- :partition_key)
972
+ :partition_key,
973
+ :encryption_type)
941
974
  include Aws::Structure
942
975
  end
943
976
 
@@ -1061,6 +1094,82 @@ module Aws::Kinesis
1061
1094
  include Aws::Structure
1062
1095
  end
1063
1096
 
1097
+ # @note When making an API call, you may pass StartStreamEncryptionInput
1098
+ # data as a hash:
1099
+ #
1100
+ # {
1101
+ # stream_name: "StreamName", # required
1102
+ # encryption_type: "NONE", # required, accepts NONE, KMS
1103
+ # key_id: "KeyId", # required
1104
+ # }
1105
+ #
1106
+ # @!attribute [rw] stream_name
1107
+ # The name of the stream for which to start encrypting records.
1108
+ # @return [String]
1109
+ #
1110
+ # @!attribute [rw] encryption_type
1111
+ # The encryption type to use. This parameter can be one of the
1112
+ # following values:
1113
+ #
1114
+ # * `NONE`\: Not valid for this operation. An
1115
+ # `InvalidOperationException` will be thrown.
1116
+ #
1117
+ # * `KMS`\: Use server-side encryption on the records in the stream
1118
+ # using a customer-managed KMS key.
1119
+ # @return [String]
1120
+ #
1121
+ # @!attribute [rw] key_id
1122
+ # The GUID for the customer-managed KMS key to use for encryption. You
1123
+ # can also use a Kinesis-owned master key by specifying the alias
1124
+ # `aws/kinesis`.
1125
+ # @return [String]
1126
+ #
1127
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/StartStreamEncryptionInput AWS API Documentation
1128
+ #
1129
+ class StartStreamEncryptionInput < Struct.new(
1130
+ :stream_name,
1131
+ :encryption_type,
1132
+ :key_id)
1133
+ include Aws::Structure
1134
+ end
1135
+
1136
+ # @note When making an API call, you may pass StopStreamEncryptionInput
1137
+ # data as a hash:
1138
+ #
1139
+ # {
1140
+ # stream_name: "StreamName", # required
1141
+ # encryption_type: "NONE", # required, accepts NONE, KMS
1142
+ # key_id: "KeyId", # required
1143
+ # }
1144
+ #
1145
+ # @!attribute [rw] stream_name
1146
+ # The name of the stream on which to stop encrypting records.
1147
+ # @return [String]
1148
+ #
1149
+ # @!attribute [rw] encryption_type
1150
+ # The encryption type. This parameter can be one of the following
1151
+ # values:
1152
+ #
1153
+ # * `NONE`\: Not valid for this operation. An
1154
+ # `InvalidOperationException` will be thrown.
1155
+ #
1156
+ # * `KMS`\: Use server-side encryption on the records in the stream
1157
+ # using a customer-managed KMS key.
1158
+ # @return [String]
1159
+ #
1160
+ # @!attribute [rw] key_id
1161
+ # The GUID for the customer-managed key that was used for encryption.
1162
+ # @return [String]
1163
+ #
1164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/StopStreamEncryptionInput AWS API Documentation
1165
+ #
1166
+ class StopStreamEncryptionInput < Struct.new(
1167
+ :stream_name,
1168
+ :encryption_type,
1169
+ :key_id)
1170
+ include Aws::Structure
1171
+ end
1172
+
1064
1173
  # Represents the output for DescribeStream.
1065
1174
  #
1066
1175
  # @!attribute [rw] stream_name
@@ -1112,6 +1221,21 @@ module Aws::Kinesis
1112
1221
  # Represents the current enhanced monitoring settings of the stream.
1113
1222
  # @return [Array<Types::EnhancedMetrics>]
1114
1223
  #
1224
+ # @!attribute [rw] encryption_type
1225
+ # The server-side encryption type used on the stream. This parameter
1226
+ # can be one of the following values:
1227
+ #
1228
+ # * `NONE`\: Do not encrypt the records in the stream.
1229
+ #
1230
+ # * `KMS`\: Use server-side encryption on the records in the stream
1231
+ # using a customer-managed KMS key.
1232
+ # @return [String]
1233
+ #
1234
+ # @!attribute [rw] key_id
1235
+ # The GUID for the customer-managed KMS key used for encryption on the
1236
+ # stream.
1237
+ # @return [String]
1238
+ #
1115
1239
  # @see http://docs.aws.amazon.com/goto/WebAPI/kinesis-2013-12-02/StreamDescription AWS API Documentation
1116
1240
  #
1117
1241
  class StreamDescription < Struct.new(
@@ -1122,7 +1246,9 @@ module Aws::Kinesis
1122
1246
  :has_more_shards,
1123
1247
  :retention_period_hours,
1124
1248
  :stream_creation_timestamp,
1125
- :enhanced_monitoring)
1249
+ :enhanced_monitoring,
1250
+ :encryption_type,
1251
+ :key_id)
1126
1252
  include Aws::Structure
1127
1253
  end
1128
1254
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-kinesis
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.rc6
4
+ version: 1.0.0.rc7
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-06-29 00:00:00.000000000 Z
11
+ date: 2017-07-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 3.0.0.rc14
19
+ version: 3.0.0.rc16
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 3.0.0.rc14
26
+ version: 3.0.0.rc16
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: aws-sigv4
29
29
  requirement: !ruby/object:Gem::Requirement