1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`StreamJournalToKinesis`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`ledger_name(impl Into<String>)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::ledger_name) / [`set_ledger_name(Option<String>)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::set_ledger_name):<br>required: **true**<br><p>The name of the ledger.</p><br>
    ///   - [`role_arn(impl Into<String>)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::role_arn) / [`set_role_arn(Option<String>)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::set_role_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of the IAM role that grants QLDB permissions for a journal stream to write data records to a Kinesis Data Streams resource.</p> <p>To pass a role to QLDB when requesting a journal stream, you must have permissions to perform the <code>iam:PassRole</code> action on the IAM role resource. This is required for all journal stream requests.</p><br>
    ///   - [`tags(impl Into<String>, Option<String>)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, Option<String>>>)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::set_tags):<br>required: **false**<br><p>The key-value pairs to add as tags to the stream that you want to create. Tag keys are case sensitive. Tag values are case sensitive and can be null.</p><br>
    ///   - [`inclusive_start_time(DateTime)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::inclusive_start_time) / [`set_inclusive_start_time(Option<DateTime>)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::set_inclusive_start_time):<br>required: **true**<br><p>The inclusive start date and time from which to start streaming journal data. This parameter must be in <code>ISO 8601</code> date and time format and in Universal Coordinated Time (UTC). For example: <code>2019-06-13T21:36:34Z</code>.</p> <p>The <code>InclusiveStartTime</code> cannot be in the future and must be before <code>ExclusiveEndTime</code>.</p> <p>If you provide an <code>InclusiveStartTime</code> that is before the ledger's <code>CreationDateTime</code>, QLDB effectively defaults it to the ledger's <code>CreationDateTime</code>.</p><br>
    ///   - [`exclusive_end_time(DateTime)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::exclusive_end_time) / [`set_exclusive_end_time(Option<DateTime>)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::set_exclusive_end_time):<br>required: **false**<br><p>The exclusive date and time that specifies when the stream ends. If you don't define this parameter, the stream runs indefinitely until you cancel it.</p> <p>The <code>ExclusiveEndTime</code> must be in <code>ISO 8601</code> date and time format and in Universal Coordinated Time (UTC). For example: <code>2019-06-13T21:36:34Z</code>.</p><br>
    ///   - [`kinesis_configuration(KinesisConfiguration)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::kinesis_configuration) / [`set_kinesis_configuration(Option<KinesisConfiguration>)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::set_kinesis_configuration):<br>required: **true**<br><p>The configuration settings of the Kinesis Data Streams destination for your stream request.</p><br>
    ///   - [`stream_name(impl Into<String>)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::stream_name) / [`set_stream_name(Option<String>)`](crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::set_stream_name):<br>required: **true**<br><p>The name that you want to assign to the QLDB journal stream. User-defined names can help identify and indicate the purpose of a stream.</p> <p>Your stream name must be unique among other <i>active</i> streams for a given ledger. Stream names have the same naming constraints as ledger names, as defined in <a href="https://docs.aws.amazon.com/qldb/latest/developerguide/limits.html#limits.naming">Quotas in Amazon QLDB</a> in the <i>Amazon QLDB Developer Guide</i>.</p><br>
    /// - On success, responds with [`StreamJournalToKinesisOutput`](crate::operation::stream_journal_to_kinesis::StreamJournalToKinesisOutput) with field(s):
    ///   - [`stream_id(Option<String>)`](crate::operation::stream_journal_to_kinesis::StreamJournalToKinesisOutput::stream_id): <p>The UUID (represented in Base62-encoded text) that QLDB assigns to each QLDB journal stream.</p>
    /// - On failure, responds with [`SdkError<StreamJournalToKinesisError>`](crate::operation::stream_journal_to_kinesis::StreamJournalToKinesisError)
    pub fn stream_journal_to_kinesis(&self) -> crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder {
        crate::operation::stream_journal_to_kinesis::builders::StreamJournalToKinesisFluentBuilder::new(self.handle.clone())
    }
}