Skip to main content

nominal_api/conjure/objects/scout/datasource/connection/api/
timestream_connection_details.rs

1#[derive(
2    Debug,
3    Clone,
4    conjure_object::serde::Serialize,
5    conjure_object::serde::Deserialize,
6    PartialEq,
7    Eq,
8    PartialOrd,
9    Ord,
10    Hash
11)]
12#[serde(crate = "conjure_object::serde")]
13#[conjure_object::private::staged_builder::staged_builder]
14#[builder(crate = conjure_object::private::staged_builder, update, inline)]
15pub struct TimestreamConnectionDetails {
16    #[builder(into)]
17    #[serde(rename = "nominalRoleArn")]
18    nominal_role_arn: String,
19    #[builder(into)]
20    #[serde(rename = "nominalRoleRegion")]
21    nominal_role_region: String,
22    #[builder(into)]
23    #[serde(rename = "externalRegion")]
24    external_region: String,
25    #[builder(into)]
26    #[serde(rename = "externalRoleArn")]
27    external_role_arn: String,
28    #[builder(into)]
29    #[serde(rename = "database")]
30    database: String,
31}
32impl TimestreamConnectionDetails {
33    /// The role ARN owned by Nominal that has permission to assume the externalRoleArn.
34    #[inline]
35    pub fn nominal_role_arn(&self) -> &str {
36        &*self.nominal_role_arn
37    }
38    /// AWS region that contains the Nominal role.
39    #[inline]
40    pub fn nominal_role_region(&self) -> &str {
41        &*self.nominal_role_region
42    }
43    /// AWS region that contains the Timestream instance.
44    #[inline]
45    pub fn external_region(&self) -> &str {
46        &*self.external_region
47    }
48    /// The role ARN used to make queries to Timestream. This role is owned by the AWS account that owns the Timestream instance.
49    #[inline]
50    pub fn external_role_arn(&self) -> &str {
51        &*self.external_role_arn
52    }
53    /// Database inside of the Timestream instance to connect to.
54    #[inline]
55    pub fn database(&self) -> &str {
56        &*self.database
57    }
58}