aws-sdk-qldb 1.0.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- 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