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

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: 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