aws-sdk-qldb 1.0.0 → 1.5.0

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
- SHA1:
3
- metadata.gz: 461e049d211c13ead1d6ad8ff903300dccd46e1a
4
- data.tar.gz: 3ee92d1e0afcaf23e2f826f81ebfb46a48159979
2
+ SHA256:
3
+ metadata.gz: b7665eb788596410e024a12481607a117aa213a36c05fed41e1ce6199845c435
4
+ data.tar.gz: d829f810a3196a0a02726cefcc84edaa87e950466649bab4f0b5e8c7e8faae2e
5
5
  SHA512:
6
- metadata.gz: 7d71e962fd98ec2a85fdd51713116f5fb73dea238f654931807f0185be358b46187f9d1e55c28778c9bc80037dd4257ebe9019af8840f1653cea255d0c477094
7
- data.tar.gz: d96bc902e2452d910fba1958894adf5d5d4f84394f23def404dad64e7ee1974f0bf73723e0f0f4759e3261826a3a2ff49e539bd2fe236092d96cc89019d90b46
6
+ metadata.gz: 30196d38b1f3b84d35c7e019f0f9731033e2a7fb0953b5f0a933cd16e35a272173bb55dcde273b4cc520ab1711f3ae95eae79b5feada372fa2266e985068ab40
7
+ data.tar.gz: bf6da792b6f0d0c5cee497a0ff174ac49aec2cc800fd55e6e4f146eb5979f1e2f78361487b821f238cde8c1eb2e17260c07b9ac3cf295b8e3a66370bec7e8b55
@@ -24,17 +24,20 @@ require_relative 'aws-sdk-qldb/customizations'
24
24
  # methods each accept a hash of request parameters and return a response
25
25
  # structure.
26
26
  #
27
+ # qldb = Aws::QLDB::Client.new
28
+ # resp = qldb.cancel_journal_kinesis_stream(params)
29
+ #
27
30
  # See {Client} for more information.
28
31
  #
29
32
  # # Errors
30
33
  #
31
- # Errors returned from Amazon QLDB all
32
- # extend {Errors::ServiceError}.
34
+ # Errors returned from Amazon QLDB are defined in the
35
+ # {Errors} module and all extend {Errors::ServiceError}.
33
36
  #
34
37
  # begin
35
38
  # # do stuff
36
39
  # rescue Aws::QLDB::Errors::ServiceError
37
- # # rescues all service API errors
40
+ # # rescues all Amazon QLDB API errors
38
41
  # end
39
42
  #
40
43
  # See {Errors} for more information.
@@ -42,6 +45,6 @@ require_relative 'aws-sdk-qldb/customizations'
42
45
  # @service
43
46
  module Aws::QLDB
44
47
 
45
- GEM_VERSION = '1.0.0'
48
+ GEM_VERSION = '1.5.0'
46
49
 
47
50
  end
@@ -30,6 +30,18 @@ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
30
30
  Aws::Plugins::GlobalConfiguration.add_identifier(:qldb)
31
31
 
32
32
  module Aws::QLDB
33
+ # An API client for QLDB. To construct a client, you need to configure a `:region` and `:credentials`.
34
+ #
35
+ # client = Aws::QLDB::Client.new(
36
+ # region: region_name,
37
+ # credentials: credentials,
38
+ # # ...
39
+ # )
40
+ #
41
+ # For details on configuring region and credentials see
42
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
43
+ #
44
+ # See {#initialize} for a full list of supported configuration options.
33
45
  class Client < Seahorse::Client::Base
34
46
 
35
47
  include Aws::ClientStubs
@@ -93,7 +105,7 @@ module Aws::QLDB
93
105
  # @option options [required, String] :region
94
106
  # The AWS region to connect to. The configured `:region` is
95
107
  # used to determine the service `:endpoint`. When not passed,
96
- # a default `:region` is search for in the following locations:
108
+ # a default `:region` is searched for in the following locations:
97
109
  #
98
110
  # * `Aws.config[:region]`
99
111
  # * `ENV['AWS_REGION']`
@@ -108,6 +120,12 @@ module Aws::QLDB
108
120
  # When set to `true`, a thread polling for endpoints will be running in
109
121
  # the background every 60 secs (default). Defaults to `false`.
110
122
  #
123
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
124
+ # Used only in `adaptive` retry mode. When true, the request will sleep
125
+ # until there is sufficent client side capacity to retry the request.
126
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
127
+ # not retry instead of sleeping.
128
+ #
111
129
  # @option options [Boolean] :client_side_monitoring (false)
112
130
  # When `true`, client-side metrics will be collected for all API requests from
113
131
  # this client.
@@ -132,6 +150,10 @@ module Aws::QLDB
132
150
  # When `true`, an attempt is made to coerce request parameters into
133
151
  # the required types.
134
152
  #
153
+ # @option options [Boolean] :correct_clock_skew (true)
154
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
155
+ # a clock skew correction and retry requests with skewed client clocks.
156
+ #
135
157
  # @option options [Boolean] :disable_host_prefix_injection (false)
136
158
  # Set to true to disable SDK automatically adding host prefix
137
159
  # to default service endpoint when available.
@@ -139,7 +161,7 @@ module Aws::QLDB
139
161
  # @option options [String] :endpoint
140
162
  # The client endpoint is normally constructed from the `:region`
141
163
  # option. You should only configure an `:endpoint` when connecting
142
- # to test endpoints. This should be avalid HTTP(S) URI.
164
+ # to test endpoints. This should be a valid HTTP(S) URI.
143
165
  #
144
166
  # @option options [Integer] :endpoint_cache_max_entries (1000)
145
167
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -154,7 +176,7 @@ module Aws::QLDB
154
176
  # requests fetching endpoints information. Defaults to 60 sec.
155
177
  #
156
178
  # @option options [Boolean] :endpoint_discovery (false)
157
- # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
179
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
158
180
  #
159
181
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
160
182
  # The log formatter.
@@ -166,15 +188,29 @@ module Aws::QLDB
166
188
  # The Logger instance to send log messages to. If this option
167
189
  # is not set, logging will be disabled.
168
190
  #
191
+ # @option options [Integer] :max_attempts (3)
192
+ # An integer representing the maximum number attempts that will be made for
193
+ # a single request, including the initial attempt. For example,
194
+ # setting this value to 5 will result in a request being retried up to
195
+ # 4 times. Used in `standard` and `adaptive` retry modes.
196
+ #
169
197
  # @option options [String] :profile ("default")
170
198
  # Used when loading credentials from the shared credentials file
171
199
  # at HOME/.aws/credentials. When not specified, 'default' is used.
172
200
  #
201
+ # @option options [Proc] :retry_backoff
202
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
203
+ # This option is only used in the `legacy` retry mode.
204
+ #
173
205
  # @option options [Float] :retry_base_delay (0.3)
174
- # The base delay in seconds used by the default backoff function.
206
+ # The base delay in seconds used by the default backoff function. This option
207
+ # is only used in the `legacy` retry mode.
175
208
  #
176
209
  # @option options [Symbol] :retry_jitter (:none)
177
- # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
210
+ # A delay randomiser function used by the default backoff function.
211
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
212
+ # otherwise a Proc that takes and returns a number. This option is only used
213
+ # in the `legacy` retry mode.
178
214
  #
179
215
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
180
216
  #
@@ -182,11 +218,30 @@ module Aws::QLDB
182
218
  # The maximum number of times to retry failed requests. Only
183
219
  # ~ 500 level server errors and certain ~ 400 level client errors
184
220
  # are retried. Generally, these are throttling errors, data
185
- # checksum errors, networking errors, timeout errors and auth
186
- # errors from expired credentials.
221
+ # checksum errors, networking errors, timeout errors, auth errors,
222
+ # endpoint discovery, and errors from expired credentials.
223
+ # This option is only used in the `legacy` retry mode.
187
224
  #
188
225
  # @option options [Integer] :retry_max_delay (0)
189
- # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
226
+ # The maximum number of seconds to delay between retries (0 for no limit)
227
+ # used by the default backoff function. This option is only used in the
228
+ # `legacy` retry mode.
229
+ #
230
+ # @option options [String] :retry_mode ("legacy")
231
+ # Specifies which retry algorithm to use. Values are:
232
+ #
233
+ # * `legacy` - The pre-existing retry behavior. This is default value if
234
+ # no retry mode is provided.
235
+ #
236
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
237
+ # This includes support for retry quotas, which limit the number of
238
+ # unsuccessful retries a client can make.
239
+ #
240
+ # * `adaptive` - An experimental retry mode that includes all the
241
+ # functionality of `standard` mode along with automatic client side
242
+ # throttling. This is a provisional mode that may change behavior
243
+ # in the future.
244
+ #
190
245
  #
191
246
  # @option options [String] :secret_access_key
192
247
  #
@@ -209,16 +264,15 @@ module Aws::QLDB
209
264
  # requests through. Formatted like 'http://proxy.com:123'.
210
265
  #
211
266
  # @option options [Float] :http_open_timeout (15) The number of
212
- # seconds to wait when opening a HTTP session before rasing a
267
+ # seconds to wait when opening a HTTP session before raising a
213
268
  # `Timeout::Error`.
214
269
  #
215
270
  # @option options [Integer] :http_read_timeout (60) The default
216
271
  # number of seconds to wait for response data. This value can
217
- # safely be set
218
- # per-request on the session yeidled by {#session_for}.
272
+ # safely be set per-request on the session.
219
273
  #
220
274
  # @option options [Float] :http_idle_timeout (5) The number of
221
- # seconds a connection is allowed to sit idble before it is
275
+ # seconds a connection is allowed to sit idle before it is
222
276
  # considered stale. Stale connections are closed and removed
223
277
  # from the pool before making a request.
224
278
  #
@@ -227,7 +281,7 @@ module Aws::QLDB
227
281
  # request body. This option has no effect unless the request has
228
282
  # "Expect" header set to "100-continue". Defaults to `nil` which
229
283
  # disables this behaviour. This value can safely be set per
230
- # request on the session yeidled by {#session_for}.
284
+ # request on the session.
231
285
  #
232
286
  # @option options [Boolean] :http_wire_trace (false) When `true`,
233
287
  # HTTP debug output will be sent to the `:logger`.
@@ -254,6 +308,43 @@ module Aws::QLDB
254
308
 
255
309
  # @!group API Operations
256
310
 
311
+ # Ends a given Amazon QLDB journal stream. Before a stream can be
312
+ # canceled, its current status must be `ACTIVE`.
313
+ #
314
+ # You can't restart a stream after you cancel it. Canceled QLDB stream
315
+ # resources are subject to a 7-day retention period, so they are
316
+ # automatically deleted after this limit expires.
317
+ #
318
+ # @option params [required, String] :ledger_name
319
+ # The name of the ledger.
320
+ #
321
+ # @option params [required, String] :stream_id
322
+ # The unique ID that QLDB assigns to each QLDB journal stream.
323
+ #
324
+ # @return [Types::CancelJournalKinesisStreamResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
325
+ #
326
+ # * {Types::CancelJournalKinesisStreamResponse#stream_id #stream_id} => String
327
+ #
328
+ # @example Request syntax with placeholder values
329
+ #
330
+ # resp = client.cancel_journal_kinesis_stream({
331
+ # ledger_name: "LedgerName", # required
332
+ # stream_id: "UniqueId", # required
333
+ # })
334
+ #
335
+ # @example Response structure
336
+ #
337
+ # resp.stream_id #=> String
338
+ #
339
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/CancelJournalKinesisStream AWS API Documentation
340
+ #
341
+ # @overload cancel_journal_kinesis_stream(params = {})
342
+ # @param [Hash] params ({})
343
+ def cancel_journal_kinesis_stream(params = {}, options = {})
344
+ req = build_request(:cancel_journal_kinesis_stream, params)
345
+ req.send_request(options)
346
+ end
347
+
257
348
  # Creates a new ledger in your AWS account.
258
349
  #
259
350
  # @option params [required, String] :name
@@ -343,16 +434,70 @@ module Aws::QLDB
343
434
  req.send_request(options)
344
435
  end
345
436
 
437
+ # Returns detailed information about a given Amazon QLDB journal stream.
438
+ # The output includes the Amazon Resource Name (ARN), stream name,
439
+ # current status, creation time, and the parameters of your original
440
+ # stream creation request.
441
+ #
442
+ # @option params [required, String] :ledger_name
443
+ # The name of the ledger.
444
+ #
445
+ # @option params [required, String] :stream_id
446
+ # The unique ID that QLDB assigns to each QLDB journal stream.
447
+ #
448
+ # @return [Types::DescribeJournalKinesisStreamResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
449
+ #
450
+ # * {Types::DescribeJournalKinesisStreamResponse#stream #stream} => Types::JournalKinesisStreamDescription
451
+ #
452
+ # @example Request syntax with placeholder values
453
+ #
454
+ # resp = client.describe_journal_kinesis_stream({
455
+ # ledger_name: "LedgerName", # required
456
+ # stream_id: "UniqueId", # required
457
+ # })
458
+ #
459
+ # @example Response structure
460
+ #
461
+ # resp.stream.ledger_name #=> String
462
+ # resp.stream.creation_time #=> Time
463
+ # resp.stream.inclusive_start_time #=> Time
464
+ # resp.stream.exclusive_end_time #=> Time
465
+ # resp.stream.role_arn #=> String
466
+ # resp.stream.stream_id #=> String
467
+ # resp.stream.arn #=> String
468
+ # resp.stream.status #=> String, one of "ACTIVE", "COMPLETED", "CANCELED", "FAILED", "IMPAIRED"
469
+ # resp.stream.kinesis_configuration.stream_arn #=> String
470
+ # resp.stream.kinesis_configuration.aggregation_enabled #=> Boolean
471
+ # resp.stream.error_cause #=> String, one of "KINESIS_STREAM_NOT_FOUND", "IAM_PERMISSION_REVOKED"
472
+ # resp.stream.stream_name #=> String
473
+ #
474
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DescribeJournalKinesisStream AWS API Documentation
475
+ #
476
+ # @overload describe_journal_kinesis_stream(params = {})
477
+ # @param [Hash] params ({})
478
+ def describe_journal_kinesis_stream(params = {}, options = {})
479
+ req = build_request(:describe_journal_kinesis_stream, params)
480
+ req.send_request(options)
481
+ end
482
+
346
483
  # Returns information about a journal export job, including the ledger
347
484
  # name, export ID, when it was created, current status, and its start
348
485
  # and end time export parameters.
349
486
  #
487
+ # This action does not return any expired export jobs. For more
488
+ # information, see [Export Job Expiration][1] in the *Amazon QLDB
489
+ # Developer Guide*.
490
+ #
350
491
  # If the export job with the given `ExportId` doesn't exist, then
351
492
  # throws `ResourceNotFoundException`.
352
493
  #
353
494
  # If the ledger with the given `Name` doesn't exist, then throws
354
495
  # `ResourceNotFoundException`.
355
496
  #
497
+ #
498
+ #
499
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/export-journal.request.html#export-journal.request.expiration
500
+ #
356
501
  # @option params [required, String] :name
357
502
  # The name of the ledger.
358
503
  #
@@ -668,6 +813,69 @@ module Aws::QLDB
668
813
  req.send_request(options)
669
814
  end
670
815
 
816
+ # Returns an array of all Amazon QLDB journal stream descriptors for a
817
+ # given ledger. The output of each stream descriptor includes the same
818
+ # details that are returned by `DescribeJournalKinesisStream`.
819
+ #
820
+ # This action returns a maximum of `MaxResults` items. It is paginated
821
+ # so that you can retrieve all the items by calling
822
+ # `ListJournalKinesisStreamsForLedger` multiple times.
823
+ #
824
+ # @option params [required, String] :ledger_name
825
+ # The name of the ledger.
826
+ #
827
+ # @option params [Integer] :max_results
828
+ # The maximum number of results to return in a single
829
+ # `ListJournalKinesisStreamsForLedger` request. (The actual number of
830
+ # results returned might be fewer.)
831
+ #
832
+ # @option params [String] :next_token
833
+ # A pagination token, indicating that you want to retrieve the next page
834
+ # of results. If you received a value for `NextToken` in the response
835
+ # from a previous `ListJournalKinesisStreamsForLedger` call, you should
836
+ # use that value as input here.
837
+ #
838
+ # @return [Types::ListJournalKinesisStreamsForLedgerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
839
+ #
840
+ # * {Types::ListJournalKinesisStreamsForLedgerResponse#streams #streams} => Array&lt;Types::JournalKinesisStreamDescription&gt;
841
+ # * {Types::ListJournalKinesisStreamsForLedgerResponse#next_token #next_token} => String
842
+ #
843
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
844
+ #
845
+ # @example Request syntax with placeholder values
846
+ #
847
+ # resp = client.list_journal_kinesis_streams_for_ledger({
848
+ # ledger_name: "LedgerName", # required
849
+ # max_results: 1,
850
+ # next_token: "NextToken",
851
+ # })
852
+ #
853
+ # @example Response structure
854
+ #
855
+ # resp.streams #=> Array
856
+ # resp.streams[0].ledger_name #=> String
857
+ # resp.streams[0].creation_time #=> Time
858
+ # resp.streams[0].inclusive_start_time #=> Time
859
+ # resp.streams[0].exclusive_end_time #=> Time
860
+ # resp.streams[0].role_arn #=> String
861
+ # resp.streams[0].stream_id #=> String
862
+ # resp.streams[0].arn #=> String
863
+ # resp.streams[0].status #=> String, one of "ACTIVE", "COMPLETED", "CANCELED", "FAILED", "IMPAIRED"
864
+ # resp.streams[0].kinesis_configuration.stream_arn #=> String
865
+ # resp.streams[0].kinesis_configuration.aggregation_enabled #=> Boolean
866
+ # resp.streams[0].error_cause #=> String, one of "KINESIS_STREAM_NOT_FOUND", "IAM_PERMISSION_REVOKED"
867
+ # resp.streams[0].stream_name #=> String
868
+ # resp.next_token #=> String
869
+ #
870
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListJournalKinesisStreamsForLedger AWS API Documentation
871
+ #
872
+ # @overload list_journal_kinesis_streams_for_ledger(params = {})
873
+ # @param [Hash] params ({})
874
+ def list_journal_kinesis_streams_for_ledger(params = {}, options = {})
875
+ req = build_request(:list_journal_kinesis_streams_for_ledger, params)
876
+ req.send_request(options)
877
+ end
878
+
671
879
  # Returns an array of journal export job descriptions for all ledgers
672
880
  # that are associated with the current AWS account and Region.
673
881
  #
@@ -675,6 +883,14 @@ module Aws::QLDB
675
883
  # so that you can retrieve all the items by calling
676
884
  # `ListJournalS3Exports` multiple times.
677
885
  #
886
+ # This action does not return any expired export jobs. For more
887
+ # information, see [Export Job Expiration][1] in the *Amazon QLDB
888
+ # Developer Guide*.
889
+ #
890
+ #
891
+ #
892
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/export-journal.request.html#export-journal.request.expiration
893
+ #
678
894
  # @option params [Integer] :max_results
679
895
  # The maximum number of results to return in a single
680
896
  # `ListJournalS3Exports` request. (The actual number of results returned
@@ -691,6 +907,8 @@ module Aws::QLDB
691
907
  # * {Types::ListJournalS3ExportsResponse#journal_s3_exports #journal_s3_exports} => Array&lt;Types::JournalS3ExportDescription&gt;
692
908
  # * {Types::ListJournalS3ExportsResponse#next_token #next_token} => String
693
909
  #
910
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
911
+ #
694
912
  # @example Request syntax with placeholder values
695
913
  #
696
914
  # resp = client.list_journal_s3_exports({
@@ -730,6 +948,14 @@ module Aws::QLDB
730
948
  # so that you can retrieve all the items by calling
731
949
  # `ListJournalS3ExportsForLedger` multiple times.
732
950
  #
951
+ # This action does not return any expired export jobs. For more
952
+ # information, see [Export Job Expiration][1] in the *Amazon QLDB
953
+ # Developer Guide*.
954
+ #
955
+ #
956
+ #
957
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/export-journal.request.html#export-journal.request.expiration
958
+ #
733
959
  # @option params [required, String] :name
734
960
  # The name of the ledger.
735
961
  #
@@ -749,6 +975,8 @@ module Aws::QLDB
749
975
  # * {Types::ListJournalS3ExportsForLedgerResponse#journal_s3_exports #journal_s3_exports} => Array&lt;Types::JournalS3ExportDescription&gt;
750
976
  # * {Types::ListJournalS3ExportsForLedgerResponse#next_token #next_token} => String
751
977
  #
978
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
979
+ #
752
980
  # @example Request syntax with placeholder values
753
981
  #
754
982
  # resp = client.list_journal_s3_exports_for_ledger({
@@ -804,6 +1032,8 @@ module Aws::QLDB
804
1032
  # * {Types::ListLedgersResponse#ledgers #ledgers} => Array&lt;Types::LedgerSummary&gt;
805
1033
  # * {Types::ListLedgersResponse#next_token #next_token} => String
806
1034
  #
1035
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1036
+ #
807
1037
  # @example Request syntax with placeholder values
808
1038
  #
809
1039
  # resp = client.list_ledgers({
@@ -860,6 +1090,100 @@ module Aws::QLDB
860
1090
  req.send_request(options)
861
1091
  end
862
1092
 
1093
+ # Creates a stream for a given Amazon QLDB ledger that delivers the
1094
+ # journal data to a specified Amazon Kinesis Data Streams resource. The
1095
+ # stream captures every document revision that is committed to your
1096
+ # journal and sends it to the Kinesis data stream.
1097
+ #
1098
+ # @option params [required, String] :ledger_name
1099
+ # The name of the ledger.
1100
+ #
1101
+ # @option params [required, String] :role_arn
1102
+ # The Amazon Resource Name (ARN) of the IAM role that grants QLDB
1103
+ # permissions for a journal stream to write data records to a Kinesis
1104
+ # Data Streams resource.
1105
+ #
1106
+ # @option params [Hash<String,String>] :tags
1107
+ # The key-value pairs to add as tags to the stream that you want to
1108
+ # create. Tag keys are case sensitive. Tag values are case sensitive and
1109
+ # can be null.
1110
+ #
1111
+ # @option params [required, Time,DateTime,Date,Integer,String] :inclusive_start_time
1112
+ # The inclusive start date and time from which to start streaming
1113
+ # journal data. This parameter must be in `ISO 8601` date and time
1114
+ # format and in Universal Coordinated Time (UTC). For example:
1115
+ # `2019-06-13T21:36:34Z`
1116
+ #
1117
+ # The `InclusiveStartTime` cannot be in the future and must be before
1118
+ # `ExclusiveEndTime`.
1119
+ #
1120
+ # If you provide an `InclusiveStartTime` that is before the ledger's
1121
+ # `CreationDateTime`, QLDB effectively defaults it to the ledger's
1122
+ # `CreationDateTime`.
1123
+ #
1124
+ # @option params [Time,DateTime,Date,Integer,String] :exclusive_end_time
1125
+ # The exclusive date and time that specifies when the stream ends. If
1126
+ # you keep this parameter blank, the stream runs indefinitely until you
1127
+ # cancel it.
1128
+ #
1129
+ # The `ExclusiveEndTime` must be in `ISO 8601` date and time format and
1130
+ # in Universal Coordinated Time (UTC). For example:
1131
+ # `2019-06-13T21:36:34Z`
1132
+ #
1133
+ # @option params [required, Types::KinesisConfiguration] :kinesis_configuration
1134
+ # The configuration settings of the Kinesis Data Streams destination for
1135
+ # your stream request.
1136
+ #
1137
+ # @option params [required, String] :stream_name
1138
+ # The name that you want to assign to the QLDB journal stream.
1139
+ # User-defined names can help identify and indicate the purpose of a
1140
+ # stream.
1141
+ #
1142
+ # Your stream name must be unique among other *active* streams for a
1143
+ # given ledger. If you try to create a stream with the same name and
1144
+ # configuration of an active, existing stream for the same ledger, QLDB
1145
+ # simply returns the existing stream. Stream names have the same naming
1146
+ # constraints as ledger names, as defined in [Quotas in Amazon QLDB][1]
1147
+ # in the *Amazon QLDB Developer Guide*.
1148
+ #
1149
+ #
1150
+ #
1151
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/limits.html#limits.naming
1152
+ #
1153
+ # @return [Types::StreamJournalToKinesisResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1154
+ #
1155
+ # * {Types::StreamJournalToKinesisResponse#stream_id #stream_id} => String
1156
+ #
1157
+ # @example Request syntax with placeholder values
1158
+ #
1159
+ # resp = client.stream_journal_to_kinesis({
1160
+ # ledger_name: "LedgerName", # required
1161
+ # role_arn: "Arn", # required
1162
+ # tags: {
1163
+ # "TagKey" => "TagValue",
1164
+ # },
1165
+ # inclusive_start_time: Time.now, # required
1166
+ # exclusive_end_time: Time.now,
1167
+ # kinesis_configuration: { # required
1168
+ # stream_arn: "Arn", # required
1169
+ # aggregation_enabled: false,
1170
+ # },
1171
+ # stream_name: "StreamName", # required
1172
+ # })
1173
+ #
1174
+ # @example Response structure
1175
+ #
1176
+ # resp.stream_id #=> String
1177
+ #
1178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/StreamJournalToKinesis AWS API Documentation
1179
+ #
1180
+ # @overload stream_journal_to_kinesis(params = {})
1181
+ # @param [Hash] params ({})
1182
+ def stream_journal_to_kinesis(params = {}, options = {})
1183
+ req = build_request(:stream_journal_to_kinesis, params)
1184
+ req.send_request(options)
1185
+ end
1186
+
863
1187
  # Adds one or more tags to a specified Amazon QLDB resource.
864
1188
  #
865
1189
  # A resource can have up to 50 tags. If you try to create more than 50
@@ -988,7 +1312,7 @@ module Aws::QLDB
988
1312
  params: params,
989
1313
  config: config)
990
1314
  context[:gem_name] = 'aws-sdk-qldb'
991
- context[:gem_version] = '1.0.0'
1315
+ context[:gem_version] = '1.5.0'
992
1316
  Seahorse::Client::Request.new(handlers, context)
993
1317
  end
994
1318
 
@@ -12,15 +12,21 @@ module Aws::QLDB
12
12
  include Seahorse::Model
13
13
 
14
14
  Arn = Shapes::StringShape.new(name: 'Arn')
15
+ Boolean = Shapes::BooleanShape.new(name: 'Boolean')
16
+ CancelJournalKinesisStreamRequest = Shapes::StructureShape.new(name: 'CancelJournalKinesisStreamRequest')
17
+ CancelJournalKinesisStreamResponse = Shapes::StructureShape.new(name: 'CancelJournalKinesisStreamResponse')
15
18
  CreateLedgerRequest = Shapes::StructureShape.new(name: 'CreateLedgerRequest')
16
19
  CreateLedgerResponse = Shapes::StructureShape.new(name: 'CreateLedgerResponse')
17
20
  DeleteLedgerRequest = Shapes::StructureShape.new(name: 'DeleteLedgerRequest')
18
21
  DeletionProtection = Shapes::BooleanShape.new(name: 'DeletionProtection')
22
+ DescribeJournalKinesisStreamRequest = Shapes::StructureShape.new(name: 'DescribeJournalKinesisStreamRequest')
23
+ DescribeJournalKinesisStreamResponse = Shapes::StructureShape.new(name: 'DescribeJournalKinesisStreamResponse')
19
24
  DescribeJournalS3ExportRequest = Shapes::StructureShape.new(name: 'DescribeJournalS3ExportRequest')
20
25
  DescribeJournalS3ExportResponse = Shapes::StructureShape.new(name: 'DescribeJournalS3ExportResponse')
21
26
  DescribeLedgerRequest = Shapes::StructureShape.new(name: 'DescribeLedgerRequest')
22
27
  DescribeLedgerResponse = Shapes::StructureShape.new(name: 'DescribeLedgerResponse')
23
28
  Digest = Shapes::BlobShape.new(name: 'Digest')
29
+ ErrorCause = Shapes::StringShape.new(name: 'ErrorCause')
24
30
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
25
31
  ExportJournalToS3Request = Shapes::StructureShape.new(name: 'ExportJournalToS3Request')
26
32
  ExportJournalToS3Response = Shapes::StructureShape.new(name: 'ExportJournalToS3Response')
@@ -33,13 +39,18 @@ module Aws::QLDB
33
39
  GetRevisionResponse = Shapes::StructureShape.new(name: 'GetRevisionResponse')
34
40
  InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
35
41
  IonText = Shapes::StringShape.new(name: 'IonText')
42
+ JournalKinesisStreamDescription = Shapes::StructureShape.new(name: 'JournalKinesisStreamDescription')
43
+ JournalKinesisStreamDescriptionList = Shapes::ListShape.new(name: 'JournalKinesisStreamDescriptionList')
36
44
  JournalS3ExportDescription = Shapes::StructureShape.new(name: 'JournalS3ExportDescription')
37
45
  JournalS3ExportList = Shapes::ListShape.new(name: 'JournalS3ExportList')
46
+ KinesisConfiguration = Shapes::StructureShape.new(name: 'KinesisConfiguration')
38
47
  LedgerList = Shapes::ListShape.new(name: 'LedgerList')
39
48
  LedgerName = Shapes::StringShape.new(name: 'LedgerName')
40
49
  LedgerState = Shapes::StringShape.new(name: 'LedgerState')
41
50
  LedgerSummary = Shapes::StructureShape.new(name: 'LedgerSummary')
42
51
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
52
+ ListJournalKinesisStreamsForLedgerRequest = Shapes::StructureShape.new(name: 'ListJournalKinesisStreamsForLedgerRequest')
53
+ ListJournalKinesisStreamsForLedgerResponse = Shapes::StructureShape.new(name: 'ListJournalKinesisStreamsForLedgerResponse')
43
54
  ListJournalS3ExportsForLedgerRequest = Shapes::StructureShape.new(name: 'ListJournalS3ExportsForLedgerRequest')
44
55
  ListJournalS3ExportsForLedgerResponse = Shapes::StructureShape.new(name: 'ListJournalS3ExportsForLedgerResponse')
45
56
  ListJournalS3ExportsRequest = Shapes::StructureShape.new(name: 'ListJournalS3ExportsRequest')
@@ -63,6 +74,10 @@ module Aws::QLDB
63
74
  S3ExportConfiguration = Shapes::StructureShape.new(name: 'S3ExportConfiguration')
64
75
  S3ObjectEncryptionType = Shapes::StringShape.new(name: 'S3ObjectEncryptionType')
65
76
  S3Prefix = Shapes::StringShape.new(name: 'S3Prefix')
77
+ StreamJournalToKinesisRequest = Shapes::StructureShape.new(name: 'StreamJournalToKinesisRequest')
78
+ StreamJournalToKinesisResponse = Shapes::StructureShape.new(name: 'StreamJournalToKinesisResponse')
79
+ StreamName = Shapes::StringShape.new(name: 'StreamName')
80
+ StreamStatus = Shapes::StringShape.new(name: 'StreamStatus')
66
81
  TagKey = Shapes::StringShape.new(name: 'TagKey')
67
82
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
68
83
  TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
@@ -77,6 +92,13 @@ module Aws::QLDB
77
92
  UpdateLedgerResponse = Shapes::StructureShape.new(name: 'UpdateLedgerResponse')
78
93
  ValueHolder = Shapes::StructureShape.new(name: 'ValueHolder')
79
94
 
95
+ CancelJournalKinesisStreamRequest.add_member(:ledger_name, Shapes::ShapeRef.new(shape: LedgerName, required: true, location: "uri", location_name: "name"))
96
+ CancelJournalKinesisStreamRequest.add_member(:stream_id, Shapes::ShapeRef.new(shape: UniqueId, required: true, location: "uri", location_name: "streamId"))
97
+ CancelJournalKinesisStreamRequest.struct_class = Types::CancelJournalKinesisStreamRequest
98
+
99
+ CancelJournalKinesisStreamResponse.add_member(:stream_id, Shapes::ShapeRef.new(shape: UniqueId, location_name: "StreamId"))
100
+ CancelJournalKinesisStreamResponse.struct_class = Types::CancelJournalKinesisStreamResponse
101
+
80
102
  CreateLedgerRequest.add_member(:name, Shapes::ShapeRef.new(shape: LedgerName, required: true, location_name: "Name"))
81
103
  CreateLedgerRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
82
104
  CreateLedgerRequest.add_member(:permissions_mode, Shapes::ShapeRef.new(shape: PermissionsMode, required: true, location_name: "PermissionsMode"))
@@ -93,6 +115,13 @@ module Aws::QLDB
93
115
  DeleteLedgerRequest.add_member(:name, Shapes::ShapeRef.new(shape: LedgerName, required: true, location: "uri", location_name: "name"))
94
116
  DeleteLedgerRequest.struct_class = Types::DeleteLedgerRequest
95
117
 
118
+ DescribeJournalKinesisStreamRequest.add_member(:ledger_name, Shapes::ShapeRef.new(shape: LedgerName, required: true, location: "uri", location_name: "name"))
119
+ DescribeJournalKinesisStreamRequest.add_member(:stream_id, Shapes::ShapeRef.new(shape: UniqueId, required: true, location: "uri", location_name: "streamId"))
120
+ DescribeJournalKinesisStreamRequest.struct_class = Types::DescribeJournalKinesisStreamRequest
121
+
122
+ DescribeJournalKinesisStreamResponse.add_member(:stream, Shapes::ShapeRef.new(shape: JournalKinesisStreamDescription, location_name: "Stream"))
123
+ DescribeJournalKinesisStreamResponse.struct_class = Types::DescribeJournalKinesisStreamResponse
124
+
96
125
  DescribeJournalS3ExportRequest.add_member(:name, Shapes::ShapeRef.new(shape: LedgerName, required: true, location: "uri", location_name: "name"))
97
126
  DescribeJournalS3ExportRequest.add_member(:export_id, Shapes::ShapeRef.new(shape: UniqueId, required: true, location: "uri", location_name: "exportId"))
98
127
  DescribeJournalS3ExportRequest.struct_class = Types::DescribeJournalS3ExportRequest
@@ -150,6 +179,21 @@ module Aws::QLDB
150
179
  InvalidParameterException.add_member(:parameter_name, Shapes::ShapeRef.new(shape: ParameterName, location_name: "ParameterName"))
151
180
  InvalidParameterException.struct_class = Types::InvalidParameterException
152
181
 
182
+ JournalKinesisStreamDescription.add_member(:ledger_name, Shapes::ShapeRef.new(shape: LedgerName, required: true, location_name: "LedgerName"))
183
+ JournalKinesisStreamDescription.add_member(:creation_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreationTime"))
184
+ JournalKinesisStreamDescription.add_member(:inclusive_start_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "InclusiveStartTime"))
185
+ JournalKinesisStreamDescription.add_member(:exclusive_end_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "ExclusiveEndTime"))
186
+ JournalKinesisStreamDescription.add_member(:role_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "RoleArn"))
187
+ JournalKinesisStreamDescription.add_member(:stream_id, Shapes::ShapeRef.new(shape: UniqueId, required: true, location_name: "StreamId"))
188
+ JournalKinesisStreamDescription.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, location_name: "Arn"))
189
+ JournalKinesisStreamDescription.add_member(:status, Shapes::ShapeRef.new(shape: StreamStatus, required: true, location_name: "Status"))
190
+ JournalKinesisStreamDescription.add_member(:kinesis_configuration, Shapes::ShapeRef.new(shape: KinesisConfiguration, required: true, location_name: "KinesisConfiguration"))
191
+ JournalKinesisStreamDescription.add_member(:error_cause, Shapes::ShapeRef.new(shape: ErrorCause, location_name: "ErrorCause"))
192
+ JournalKinesisStreamDescription.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, required: true, location_name: "StreamName"))
193
+ JournalKinesisStreamDescription.struct_class = Types::JournalKinesisStreamDescription
194
+
195
+ JournalKinesisStreamDescriptionList.member = Shapes::ShapeRef.new(shape: JournalKinesisStreamDescription)
196
+
153
197
  JournalS3ExportDescription.add_member(:ledger_name, Shapes::ShapeRef.new(shape: LedgerName, required: true, location_name: "LedgerName"))
154
198
  JournalS3ExportDescription.add_member(:export_id, Shapes::ShapeRef.new(shape: UniqueId, required: true, location_name: "ExportId"))
155
199
  JournalS3ExportDescription.add_member(:export_creation_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "ExportCreationTime"))
@@ -162,6 +206,10 @@ module Aws::QLDB
162
206
 
163
207
  JournalS3ExportList.member = Shapes::ShapeRef.new(shape: JournalS3ExportDescription)
164
208
 
209
+ KinesisConfiguration.add_member(:stream_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "StreamArn"))
210
+ KinesisConfiguration.add_member(:aggregation_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "AggregationEnabled"))
211
+ KinesisConfiguration.struct_class = Types::KinesisConfiguration
212
+
165
213
  LedgerList.member = Shapes::ShapeRef.new(shape: LedgerSummary)
166
214
 
167
215
  LedgerSummary.add_member(:name, Shapes::ShapeRef.new(shape: LedgerName, location_name: "Name"))
@@ -173,6 +221,15 @@ module Aws::QLDB
173
221
  LimitExceededException.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, location_name: "ResourceType"))
174
222
  LimitExceededException.struct_class = Types::LimitExceededException
175
223
 
224
+ ListJournalKinesisStreamsForLedgerRequest.add_member(:ledger_name, Shapes::ShapeRef.new(shape: LedgerName, required: true, location: "uri", location_name: "name"))
225
+ ListJournalKinesisStreamsForLedgerRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "max_results"))
226
+ ListJournalKinesisStreamsForLedgerRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "next_token"))
227
+ ListJournalKinesisStreamsForLedgerRequest.struct_class = Types::ListJournalKinesisStreamsForLedgerRequest
228
+
229
+ ListJournalKinesisStreamsForLedgerResponse.add_member(:streams, Shapes::ShapeRef.new(shape: JournalKinesisStreamDescriptionList, location_name: "Streams"))
230
+ ListJournalKinesisStreamsForLedgerResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
231
+ ListJournalKinesisStreamsForLedgerResponse.struct_class = Types::ListJournalKinesisStreamsForLedgerResponse
232
+
176
233
  ListJournalS3ExportsForLedgerRequest.add_member(:name, Shapes::ShapeRef.new(shape: LedgerName, required: true, location: "uri", location_name: "name"))
177
234
  ListJournalS3ExportsForLedgerRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "max_results"))
178
235
  ListJournalS3ExportsForLedgerRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "next_token"))
@@ -233,6 +290,18 @@ module Aws::QLDB
233
290
  S3ExportConfiguration.add_member(:encryption_configuration, Shapes::ShapeRef.new(shape: S3EncryptionConfiguration, required: true, location_name: "EncryptionConfiguration"))
234
291
  S3ExportConfiguration.struct_class = Types::S3ExportConfiguration
235
292
 
293
+ StreamJournalToKinesisRequest.add_member(:ledger_name, Shapes::ShapeRef.new(shape: LedgerName, required: true, location: "uri", location_name: "name"))
294
+ StreamJournalToKinesisRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location_name: "RoleArn"))
295
+ StreamJournalToKinesisRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
296
+ StreamJournalToKinesisRequest.add_member(:inclusive_start_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "InclusiveStartTime"))
297
+ StreamJournalToKinesisRequest.add_member(:exclusive_end_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "ExclusiveEndTime"))
298
+ StreamJournalToKinesisRequest.add_member(:kinesis_configuration, Shapes::ShapeRef.new(shape: KinesisConfiguration, required: true, location_name: "KinesisConfiguration"))
299
+ StreamJournalToKinesisRequest.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, required: true, location_name: "StreamName"))
300
+ StreamJournalToKinesisRequest.struct_class = Types::StreamJournalToKinesisRequest
301
+
302
+ StreamJournalToKinesisResponse.add_member(:stream_id, Shapes::ShapeRef.new(shape: UniqueId, location_name: "StreamId"))
303
+ StreamJournalToKinesisResponse.struct_class = Types::StreamJournalToKinesisResponse
304
+
236
305
  TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
237
306
 
238
307
  TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: Arn, required: true, location: "uri", location_name: "resourceArn"))
@@ -283,6 +352,17 @@ module Aws::QLDB
283
352
  "uid" => "qldb-2019-01-02",
284
353
  }
285
354
 
355
+ api.add_operation(:cancel_journal_kinesis_stream, Seahorse::Model::Operation.new.tap do |o|
356
+ o.name = "CancelJournalKinesisStream"
357
+ o.http_method = "DELETE"
358
+ o.http_request_uri = "/ledgers/{name}/journal-kinesis-streams/{streamId}"
359
+ o.input = Shapes::ShapeRef.new(shape: CancelJournalKinesisStreamRequest)
360
+ o.output = Shapes::ShapeRef.new(shape: CancelJournalKinesisStreamResponse)
361
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
362
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
363
+ o.errors << Shapes::ShapeRef.new(shape: ResourcePreconditionNotMetException)
364
+ end)
365
+
286
366
  api.add_operation(:create_ledger, Seahorse::Model::Operation.new.tap do |o|
287
367
  o.name = "CreateLedger"
288
368
  o.http_method = "POST"
@@ -307,6 +387,17 @@ module Aws::QLDB
307
387
  o.errors << Shapes::ShapeRef.new(shape: ResourcePreconditionNotMetException)
308
388
  end)
309
389
 
390
+ api.add_operation(:describe_journal_kinesis_stream, Seahorse::Model::Operation.new.tap do |o|
391
+ o.name = "DescribeJournalKinesisStream"
392
+ o.http_method = "GET"
393
+ o.http_request_uri = "/ledgers/{name}/journal-kinesis-streams/{streamId}"
394
+ o.input = Shapes::ShapeRef.new(shape: DescribeJournalKinesisStreamRequest)
395
+ o.output = Shapes::ShapeRef.new(shape: DescribeJournalKinesisStreamResponse)
396
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
397
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
398
+ o.errors << Shapes::ShapeRef.new(shape: ResourcePreconditionNotMetException)
399
+ end)
400
+
310
401
  api.add_operation(:describe_journal_s3_export, Seahorse::Model::Operation.new.tap do |o|
311
402
  o.name = "DescribeJournalS3Export"
312
403
  o.http_method = "GET"
@@ -369,6 +460,23 @@ module Aws::QLDB
369
460
  o.errors << Shapes::ShapeRef.new(shape: ResourcePreconditionNotMetException)
370
461
  end)
371
462
 
463
+ api.add_operation(:list_journal_kinesis_streams_for_ledger, Seahorse::Model::Operation.new.tap do |o|
464
+ o.name = "ListJournalKinesisStreamsForLedger"
465
+ o.http_method = "GET"
466
+ o.http_request_uri = "/ledgers/{name}/journal-kinesis-streams"
467
+ o.input = Shapes::ShapeRef.new(shape: ListJournalKinesisStreamsForLedgerRequest)
468
+ o.output = Shapes::ShapeRef.new(shape: ListJournalKinesisStreamsForLedgerResponse)
469
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
470
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
471
+ o.errors << Shapes::ShapeRef.new(shape: ResourcePreconditionNotMetException)
472
+ o[:pager] = Aws::Pager.new(
473
+ limit_key: "max_results",
474
+ tokens: {
475
+ "next_token" => "next_token"
476
+ }
477
+ )
478
+ end)
479
+
372
480
  api.add_operation(:list_journal_s3_exports, Seahorse::Model::Operation.new.tap do |o|
373
481
  o.name = "ListJournalS3Exports"
374
482
  o.http_method = "GET"
@@ -421,6 +529,17 @@ module Aws::QLDB
421
529
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
422
530
  end)
423
531
 
532
+ api.add_operation(:stream_journal_to_kinesis, Seahorse::Model::Operation.new.tap do |o|
533
+ o.name = "StreamJournalToKinesis"
534
+ o.http_method = "POST"
535
+ o.http_request_uri = "/ledgers/{name}/journal-kinesis-streams"
536
+ o.input = Shapes::ShapeRef.new(shape: StreamJournalToKinesisRequest)
537
+ o.output = Shapes::ShapeRef.new(shape: StreamJournalToKinesisResponse)
538
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
539
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
540
+ o.errors << Shapes::ShapeRef.new(shape: ResourcePreconditionNotMetException)
541
+ end)
542
+
424
543
  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
425
544
  o.name = "TagResource"
426
545
  o.http_method = "POST"
@@ -6,6 +6,34 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::QLDB
9
+
10
+ # When QLDB returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::QLDB::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all QLDB errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::QLDB::Errors::ServiceError
18
+ # # rescues all QLDB API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {InvalidParameterException}
29
+ # * {LimitExceededException}
30
+ # * {ResourceAlreadyExistsException}
31
+ # * {ResourceInUseException}
32
+ # * {ResourceNotFoundException}
33
+ # * {ResourcePreconditionNotMetException}
34
+ #
35
+ # Additionally, error classes are dynamically generated for service errors based on the error code
36
+ # if they are not defined above.
9
37
  module Errors
10
38
 
11
39
  extend Aws::Errors::DynamicErrors
@@ -28,7 +56,6 @@ module Aws::QLDB
28
56
  def parameter_name
29
57
  @data[:parameter_name]
30
58
  end
31
-
32
59
  end
33
60
 
34
61
  class LimitExceededException < ServiceError
@@ -49,7 +76,6 @@ module Aws::QLDB
49
76
  def resource_type
50
77
  @data[:resource_type]
51
78
  end
52
-
53
79
  end
54
80
 
55
81
  class ResourceAlreadyExistsException < ServiceError
@@ -75,7 +101,6 @@ module Aws::QLDB
75
101
  def resource_name
76
102
  @data[:resource_name]
77
103
  end
78
-
79
104
  end
80
105
 
81
106
  class ResourceInUseException < ServiceError
@@ -101,7 +126,6 @@ module Aws::QLDB
101
126
  def resource_name
102
127
  @data[:resource_name]
103
128
  end
104
-
105
129
  end
106
130
 
107
131
  class ResourceNotFoundException < ServiceError
@@ -127,7 +151,6 @@ module Aws::QLDB
127
151
  def resource_name
128
152
  @data[:resource_name]
129
153
  end
130
-
131
154
  end
132
155
 
133
156
  class ResourcePreconditionNotMetException < ServiceError
@@ -153,7 +176,6 @@ module Aws::QLDB
153
176
  def resource_name
154
177
  @data[:resource_name]
155
178
  end
156
-
157
179
  end
158
180
 
159
181
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::QLDB
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -8,6 +8,41 @@
8
8
  module Aws::QLDB
9
9
  module Types
10
10
 
11
+ # @note When making an API call, you may pass CancelJournalKinesisStreamRequest
12
+ # data as a hash:
13
+ #
14
+ # {
15
+ # ledger_name: "LedgerName", # required
16
+ # stream_id: "UniqueId", # required
17
+ # }
18
+ #
19
+ # @!attribute [rw] ledger_name
20
+ # The name of the ledger.
21
+ # @return [String]
22
+ #
23
+ # @!attribute [rw] stream_id
24
+ # The unique ID that QLDB assigns to each QLDB journal stream.
25
+ # @return [String]
26
+ #
27
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/CancelJournalKinesisStreamRequest AWS API Documentation
28
+ #
29
+ class CancelJournalKinesisStreamRequest < Struct.new(
30
+ :ledger_name,
31
+ :stream_id)
32
+ include Aws::Structure
33
+ end
34
+
35
+ # @!attribute [rw] stream_id
36
+ # The unique ID that QLDB assigns to each QLDB journal stream.
37
+ # @return [String]
38
+ #
39
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/CancelJournalKinesisStreamResponse AWS API Documentation
40
+ #
41
+ class CancelJournalKinesisStreamResponse < Struct.new(
42
+ :stream_id)
43
+ include Aws::Structure
44
+ end
45
+
11
46
  # @note When making an API call, you may pass CreateLedgerRequest
12
47
  # data as a hash:
13
48
  #
@@ -119,6 +154,42 @@ module Aws::QLDB
119
154
  include Aws::Structure
120
155
  end
121
156
 
157
+ # @note When making an API call, you may pass DescribeJournalKinesisStreamRequest
158
+ # data as a hash:
159
+ #
160
+ # {
161
+ # ledger_name: "LedgerName", # required
162
+ # stream_id: "UniqueId", # required
163
+ # }
164
+ #
165
+ # @!attribute [rw] ledger_name
166
+ # The name of the ledger.
167
+ # @return [String]
168
+ #
169
+ # @!attribute [rw] stream_id
170
+ # The unique ID that QLDB assigns to each QLDB journal stream.
171
+ # @return [String]
172
+ #
173
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DescribeJournalKinesisStreamRequest AWS API Documentation
174
+ #
175
+ class DescribeJournalKinesisStreamRequest < Struct.new(
176
+ :ledger_name,
177
+ :stream_id)
178
+ include Aws::Structure
179
+ end
180
+
181
+ # @!attribute [rw] stream
182
+ # Information about the QLDB journal stream returned by a
183
+ # `DescribeJournalS3Export` request.
184
+ # @return [Types::JournalKinesisStreamDescription]
185
+ #
186
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/DescribeJournalKinesisStreamResponse AWS API Documentation
187
+ #
188
+ class DescribeJournalKinesisStreamResponse < Struct.new(
189
+ :stream)
190
+ include Aws::Structure
191
+ end
192
+
122
193
  # @note When making an API call, you may pass DescribeJournalS3ExportRequest
123
194
  # data as a hash:
124
195
  #
@@ -488,6 +559,81 @@ module Aws::QLDB
488
559
  include Aws::Structure
489
560
  end
490
561
 
562
+ # The information about an Amazon QLDB journal stream, including the
563
+ # Amazon Resource Name (ARN), stream name, creation time, current
564
+ # status, and the parameters of your original stream creation request.
565
+ #
566
+ # @!attribute [rw] ledger_name
567
+ # The name of the ledger.
568
+ # @return [String]
569
+ #
570
+ # @!attribute [rw] creation_time
571
+ # The date and time, in epoch time format, when the QLDB journal
572
+ # stream was created. (Epoch time format is the number of seconds
573
+ # elapsed since 12:00:00 AM January 1, 1970 UTC.)
574
+ # @return [Time]
575
+ #
576
+ # @!attribute [rw] inclusive_start_time
577
+ # The inclusive start date and time from which to start streaming
578
+ # journal data.
579
+ # @return [Time]
580
+ #
581
+ # @!attribute [rw] exclusive_end_time
582
+ # The exclusive date and time that specifies when the stream ends. If
583
+ # this parameter is blank, the stream runs indefinitely until you
584
+ # cancel it.
585
+ # @return [Time]
586
+ #
587
+ # @!attribute [rw] role_arn
588
+ # The Amazon Resource Name (ARN) of the IAM role that grants QLDB
589
+ # permissions for a journal stream to write data records to a Kinesis
590
+ # Data Streams resource.
591
+ # @return [String]
592
+ #
593
+ # @!attribute [rw] stream_id
594
+ # The unique ID that QLDB assigns to each QLDB journal stream.
595
+ # @return [String]
596
+ #
597
+ # @!attribute [rw] arn
598
+ # The Amazon Resource Name (ARN) of the QLDB journal stream.
599
+ # @return [String]
600
+ #
601
+ # @!attribute [rw] status
602
+ # The current state of the QLDB journal stream.
603
+ # @return [String]
604
+ #
605
+ # @!attribute [rw] kinesis_configuration
606
+ # The configuration settings of the Amazon Kinesis Data Streams
607
+ # destination for your QLDB journal stream.
608
+ # @return [Types::KinesisConfiguration]
609
+ #
610
+ # @!attribute [rw] error_cause
611
+ # The error message that describes the reason that a stream has a
612
+ # status of `IMPAIRED` or `FAILED`. This is not applicable to streams
613
+ # that have other status values.
614
+ # @return [String]
615
+ #
616
+ # @!attribute [rw] stream_name
617
+ # The user-defined name of the QLDB journal stream.
618
+ # @return [String]
619
+ #
620
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/JournalKinesisStreamDescription AWS API Documentation
621
+ #
622
+ class JournalKinesisStreamDescription < Struct.new(
623
+ :ledger_name,
624
+ :creation_time,
625
+ :inclusive_start_time,
626
+ :exclusive_end_time,
627
+ :role_arn,
628
+ :stream_id,
629
+ :arn,
630
+ :status,
631
+ :kinesis_configuration,
632
+ :error_cause,
633
+ :stream_name)
634
+ include Aws::Structure
635
+ end
636
+
491
637
  # The information about a journal export job, including the ledger name,
492
638
  # export ID, when it was created, current status, and its start and end
493
639
  # time export parameters.
@@ -551,6 +697,39 @@ module Aws::QLDB
551
697
  include Aws::Structure
552
698
  end
553
699
 
700
+ # The configuration settings of the Amazon Kinesis Data Streams
701
+ # destination for your Amazon QLDB journal stream.
702
+ #
703
+ # @note When making an API call, you may pass KinesisConfiguration
704
+ # data as a hash:
705
+ #
706
+ # {
707
+ # stream_arn: "Arn", # required
708
+ # aggregation_enabled: false,
709
+ # }
710
+ #
711
+ # @!attribute [rw] stream_arn
712
+ # The Amazon Resource Name (ARN) of the Kinesis data stream resource.
713
+ # @return [String]
714
+ #
715
+ # @!attribute [rw] aggregation_enabled
716
+ # Enables QLDB to publish multiple stream records in a single Kinesis
717
+ # Data Streams record. To learn more, see [KPL Key Concepts][1] in the
718
+ # *Amazon Kinesis Data Streams Developer Guide*.
719
+ #
720
+ #
721
+ #
722
+ # [1]: https://docs.aws.amazon.com/streams/latest/dev/kinesis-kpl-concepts.html
723
+ # @return [Boolean]
724
+ #
725
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/KinesisConfiguration AWS API Documentation
726
+ #
727
+ class KinesisConfiguration < Struct.new(
728
+ :stream_arn,
729
+ :aggregation_enabled)
730
+ include Aws::Structure
731
+ end
732
+
554
733
  # Information about a ledger, including its name, state, and when it was
555
734
  # created.
556
735
  #
@@ -594,6 +773,63 @@ module Aws::QLDB
594
773
  include Aws::Structure
595
774
  end
596
775
 
776
+ # @note When making an API call, you may pass ListJournalKinesisStreamsForLedgerRequest
777
+ # data as a hash:
778
+ #
779
+ # {
780
+ # ledger_name: "LedgerName", # required
781
+ # max_results: 1,
782
+ # next_token: "NextToken",
783
+ # }
784
+ #
785
+ # @!attribute [rw] ledger_name
786
+ # The name of the ledger.
787
+ # @return [String]
788
+ #
789
+ # @!attribute [rw] max_results
790
+ # The maximum number of results to return in a single
791
+ # `ListJournalKinesisStreamsForLedger` request. (The actual number of
792
+ # results returned might be fewer.)
793
+ # @return [Integer]
794
+ #
795
+ # @!attribute [rw] next_token
796
+ # A pagination token, indicating that you want to retrieve the next
797
+ # page of results. If you received a value for `NextToken` in the
798
+ # response from a previous `ListJournalKinesisStreamsForLedger` call,
799
+ # you should use that value as input here.
800
+ # @return [String]
801
+ #
802
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListJournalKinesisStreamsForLedgerRequest AWS API Documentation
803
+ #
804
+ class ListJournalKinesisStreamsForLedgerRequest < Struct.new(
805
+ :ledger_name,
806
+ :max_results,
807
+ :next_token)
808
+ include Aws::Structure
809
+ end
810
+
811
+ # @!attribute [rw] streams
812
+ # The array of QLDB journal stream descriptors that are associated
813
+ # with the given ledger.
814
+ # @return [Array<Types::JournalKinesisStreamDescription>]
815
+ #
816
+ # @!attribute [rw] next_token
817
+ # * If `NextToken` is empty, the last page of results has been
818
+ # processed and there are no more results to be retrieved.
819
+ #
820
+ # * If `NextToken` is *not* empty, more results are available. To
821
+ # retrieve the next page of results, use the value of `NextToken` in
822
+ # a subsequent `ListJournalKinesisStreamsForLedger` call.
823
+ # @return [String]
824
+ #
825
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/ListJournalKinesisStreamsForLedgerResponse AWS API Documentation
826
+ #
827
+ class ListJournalKinesisStreamsForLedgerResponse < Struct.new(
828
+ :streams,
829
+ :next_token)
830
+ include Aws::Structure
831
+ end
832
+
597
833
  # @note When making an API call, you may pass ListJournalS3ExportsForLedgerRequest
598
834
  # data as a hash:
599
835
  #
@@ -900,8 +1136,9 @@ module Aws::QLDB
900
1136
  # @return [String]
901
1137
  #
902
1138
  # @!attribute [rw] kms_key_arn
903
- # The Amazon Resource Name (ARN) for a customer master key (CMK) in
904
- # AWS Key Management Service (AWS KMS).
1139
+ # The Amazon Resource Name (ARN) for a symmetric customer master key
1140
+ # (CMK) in AWS Key Management Service (AWS KMS). Amazon QLDB does not
1141
+ # support asymmetric CMKs.
905
1142
  #
906
1143
  # You must provide a `KmsKeyArn` if you specify `SSE_KMS` as the
907
1144
  # `ObjectEncryptionType`.
@@ -981,6 +1218,110 @@ module Aws::QLDB
981
1218
  include Aws::Structure
982
1219
  end
983
1220
 
1221
+ # @note When making an API call, you may pass StreamJournalToKinesisRequest
1222
+ # data as a hash:
1223
+ #
1224
+ # {
1225
+ # ledger_name: "LedgerName", # required
1226
+ # role_arn: "Arn", # required
1227
+ # tags: {
1228
+ # "TagKey" => "TagValue",
1229
+ # },
1230
+ # inclusive_start_time: Time.now, # required
1231
+ # exclusive_end_time: Time.now,
1232
+ # kinesis_configuration: { # required
1233
+ # stream_arn: "Arn", # required
1234
+ # aggregation_enabled: false,
1235
+ # },
1236
+ # stream_name: "StreamName", # required
1237
+ # }
1238
+ #
1239
+ # @!attribute [rw] ledger_name
1240
+ # The name of the ledger.
1241
+ # @return [String]
1242
+ #
1243
+ # @!attribute [rw] role_arn
1244
+ # The Amazon Resource Name (ARN) of the IAM role that grants QLDB
1245
+ # permissions for a journal stream to write data records to a Kinesis
1246
+ # Data Streams resource.
1247
+ # @return [String]
1248
+ #
1249
+ # @!attribute [rw] tags
1250
+ # The key-value pairs to add as tags to the stream that you want to
1251
+ # create. Tag keys are case sensitive. Tag values are case sensitive
1252
+ # and can be null.
1253
+ # @return [Hash<String,String>]
1254
+ #
1255
+ # @!attribute [rw] inclusive_start_time
1256
+ # The inclusive start date and time from which to start streaming
1257
+ # journal data. This parameter must be in `ISO 8601` date and time
1258
+ # format and in Universal Coordinated Time (UTC). For example:
1259
+ # `2019-06-13T21:36:34Z`
1260
+ #
1261
+ # The `InclusiveStartTime` cannot be in the future and must be before
1262
+ # `ExclusiveEndTime`.
1263
+ #
1264
+ # If you provide an `InclusiveStartTime` that is before the ledger's
1265
+ # `CreationDateTime`, QLDB effectively defaults it to the ledger's
1266
+ # `CreationDateTime`.
1267
+ # @return [Time]
1268
+ #
1269
+ # @!attribute [rw] exclusive_end_time
1270
+ # The exclusive date and time that specifies when the stream ends. If
1271
+ # you keep this parameter blank, the stream runs indefinitely until
1272
+ # you cancel it.
1273
+ #
1274
+ # The `ExclusiveEndTime` must be in `ISO 8601` date and time format
1275
+ # and in Universal Coordinated Time (UTC). For example:
1276
+ # `2019-06-13T21:36:34Z`
1277
+ # @return [Time]
1278
+ #
1279
+ # @!attribute [rw] kinesis_configuration
1280
+ # The configuration settings of the Kinesis Data Streams destination
1281
+ # for your stream request.
1282
+ # @return [Types::KinesisConfiguration]
1283
+ #
1284
+ # @!attribute [rw] stream_name
1285
+ # The name that you want to assign to the QLDB journal stream.
1286
+ # User-defined names can help identify and indicate the purpose of a
1287
+ # stream.
1288
+ #
1289
+ # Your stream name must be unique among other *active* streams for a
1290
+ # given ledger. If you try to create a stream with the same name and
1291
+ # configuration of an active, existing stream for the same ledger,
1292
+ # QLDB simply returns the existing stream. Stream names have the same
1293
+ # naming constraints as ledger names, as defined in [Quotas in Amazon
1294
+ # QLDB][1] in the *Amazon QLDB Developer Guide*.
1295
+ #
1296
+ #
1297
+ #
1298
+ # [1]: https://docs.aws.amazon.com/qldb/latest/developerguide/limits.html#limits.naming
1299
+ # @return [String]
1300
+ #
1301
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/StreamJournalToKinesisRequest AWS API Documentation
1302
+ #
1303
+ class StreamJournalToKinesisRequest < Struct.new(
1304
+ :ledger_name,
1305
+ :role_arn,
1306
+ :tags,
1307
+ :inclusive_start_time,
1308
+ :exclusive_end_time,
1309
+ :kinesis_configuration,
1310
+ :stream_name)
1311
+ include Aws::Structure
1312
+ end
1313
+
1314
+ # @!attribute [rw] stream_id
1315
+ # The unique ID that QLDB assigns to each QLDB journal stream.
1316
+ # @return [String]
1317
+ #
1318
+ # @see http://docs.aws.amazon.com/goto/WebAPI/qldb-2019-01-02/StreamJournalToKinesisResponse AWS API Documentation
1319
+ #
1320
+ class StreamJournalToKinesisResponse < Struct.new(
1321
+ :stream_id)
1322
+ include Aws::Structure
1323
+ end
1324
+
984
1325
  # @note When making an API call, you may pass TagResourceRequest
985
1326
  # data as a hash:
986
1327
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-qldb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.5.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: 2019-09-09 00:00:00.000000000 Z
11
+ date: 2020-05-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.61.1
22
+ version: 3.71.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.61.1
32
+ version: 3.71.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -81,7 +81,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
81
81
  version: '0'
82
82
  requirements: []
83
83
  rubyforge_project:
84
- rubygems_version: 2.5.2.3
84
+ rubygems_version: 2.7.6.2
85
85
  signing_key:
86
86
  specification_version: 4
87
87
  summary: AWS SDK for Ruby - QLDB