Skip to main content

aws_sdk_ssoadmin/operation/describe_instance/
_describe_instance_output.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct DescribeInstanceOutput {
6    /// <p>The ARN of the instance of IAM Identity Center under which the operation will run. For more information about ARNs, see <a href="/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces</a> in the <i>Amazon Web Services General Reference</i>.</p>
7    pub instance_arn: ::std::option::Option<::std::string::String>,
8    /// <p>The identifier of the identity store that is connected to the instance of IAM Identity Center.</p>
9    pub identity_store_id: ::std::option::Option<::std::string::String>,
10    /// <p>The identifier of the Amazon Web Services account for which the instance was created.</p>
11    pub owner_account_id: ::std::option::Option<::std::string::String>,
12    /// <p>Specifies the instance name.</p>
13    pub name: ::std::option::Option<::std::string::String>,
14    /// <p>The date the instance was created.</p>
15    pub created_date: ::std::option::Option<::aws_smithy_types::DateTime>,
16    /// <p>The status of the instance.</p>
17    pub status: ::std::option::Option<crate::types::InstanceStatus>,
18    /// <p>Provides additional context about the current status of the IAM Identity Center instance. This field is particularly useful when an instance is in a non-ACTIVE state, such as CREATE_FAILED. When an instance fails to create or update, this field contains information about the cause, which may include issues with KMS key configuration, permission problems with the specified KMS key, or service-related errors.</p>
19    pub status_reason: ::std::option::Option<::std::string::String>,
20    /// <p>Contains the encryption configuration for your IAM Identity Center instance, including the encryption status, KMS key type, and KMS key ARN.</p>
21    pub encryption_configuration_details: ::std::option::Option<crate::types::EncryptionConfigurationDetails>,
22    /// <p>Indicates whether permission sets are enabled for this Identity Center instance.</p>
23    pub permission_sets_enabled: ::std::option::Option<bool>,
24    _request_id: Option<String>,
25}
26impl DescribeInstanceOutput {
27    /// <p>The ARN of the instance of IAM Identity Center under which the operation will run. For more information about ARNs, see <a href="/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces</a> in the <i>Amazon Web Services General Reference</i>.</p>
28    pub fn instance_arn(&self) -> ::std::option::Option<&str> {
29        self.instance_arn.as_deref()
30    }
31    /// <p>The identifier of the identity store that is connected to the instance of IAM Identity Center.</p>
32    pub fn identity_store_id(&self) -> ::std::option::Option<&str> {
33        self.identity_store_id.as_deref()
34    }
35    /// <p>The identifier of the Amazon Web Services account for which the instance was created.</p>
36    pub fn owner_account_id(&self) -> ::std::option::Option<&str> {
37        self.owner_account_id.as_deref()
38    }
39    /// <p>Specifies the instance name.</p>
40    pub fn name(&self) -> ::std::option::Option<&str> {
41        self.name.as_deref()
42    }
43    /// <p>The date the instance was created.</p>
44    pub fn created_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
45        self.created_date.as_ref()
46    }
47    /// <p>The status of the instance.</p>
48    pub fn status(&self) -> ::std::option::Option<&crate::types::InstanceStatus> {
49        self.status.as_ref()
50    }
51    /// <p>Provides additional context about the current status of the IAM Identity Center instance. This field is particularly useful when an instance is in a non-ACTIVE state, such as CREATE_FAILED. When an instance fails to create or update, this field contains information about the cause, which may include issues with KMS key configuration, permission problems with the specified KMS key, or service-related errors.</p>
52    pub fn status_reason(&self) -> ::std::option::Option<&str> {
53        self.status_reason.as_deref()
54    }
55    /// <p>Contains the encryption configuration for your IAM Identity Center instance, including the encryption status, KMS key type, and KMS key ARN.</p>
56    pub fn encryption_configuration_details(&self) -> ::std::option::Option<&crate::types::EncryptionConfigurationDetails> {
57        self.encryption_configuration_details.as_ref()
58    }
59    /// <p>Indicates whether permission sets are enabled for this Identity Center instance.</p>
60    pub fn permission_sets_enabled(&self) -> ::std::option::Option<bool> {
61        self.permission_sets_enabled
62    }
63}
64impl ::aws_types::request_id::RequestId for DescribeInstanceOutput {
65    fn request_id(&self) -> Option<&str> {
66        self._request_id.as_deref()
67    }
68}
69impl DescribeInstanceOutput {
70    /// Creates a new builder-style object to manufacture [`DescribeInstanceOutput`](crate::operation::describe_instance::DescribeInstanceOutput).
71    pub fn builder() -> crate::operation::describe_instance::builders::DescribeInstanceOutputBuilder {
72        crate::operation::describe_instance::builders::DescribeInstanceOutputBuilder::default()
73    }
74}
75
76/// A builder for [`DescribeInstanceOutput`](crate::operation::describe_instance::DescribeInstanceOutput).
77#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
78#[non_exhaustive]
79pub struct DescribeInstanceOutputBuilder {
80    pub(crate) instance_arn: ::std::option::Option<::std::string::String>,
81    pub(crate) identity_store_id: ::std::option::Option<::std::string::String>,
82    pub(crate) owner_account_id: ::std::option::Option<::std::string::String>,
83    pub(crate) name: ::std::option::Option<::std::string::String>,
84    pub(crate) created_date: ::std::option::Option<::aws_smithy_types::DateTime>,
85    pub(crate) status: ::std::option::Option<crate::types::InstanceStatus>,
86    pub(crate) status_reason: ::std::option::Option<::std::string::String>,
87    pub(crate) encryption_configuration_details: ::std::option::Option<crate::types::EncryptionConfigurationDetails>,
88    pub(crate) permission_sets_enabled: ::std::option::Option<bool>,
89    _request_id: Option<String>,
90}
91impl DescribeInstanceOutputBuilder {
92    /// <p>The ARN of the instance of IAM Identity Center under which the operation will run. For more information about ARNs, see <a href="/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces</a> in the <i>Amazon Web Services General Reference</i>.</p>
93    pub fn instance_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
94        self.instance_arn = ::std::option::Option::Some(input.into());
95        self
96    }
97    /// <p>The ARN of the instance of IAM Identity Center under which the operation will run. For more information about ARNs, see <a href="/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces</a> in the <i>Amazon Web Services General Reference</i>.</p>
98    pub fn set_instance_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
99        self.instance_arn = input;
100        self
101    }
102    /// <p>The ARN of the instance of IAM Identity Center under which the operation will run. For more information about ARNs, see <a href="/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces</a> in the <i>Amazon Web Services General Reference</i>.</p>
103    pub fn get_instance_arn(&self) -> &::std::option::Option<::std::string::String> {
104        &self.instance_arn
105    }
106    /// <p>The identifier of the identity store that is connected to the instance of IAM Identity Center.</p>
107    pub fn identity_store_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
108        self.identity_store_id = ::std::option::Option::Some(input.into());
109        self
110    }
111    /// <p>The identifier of the identity store that is connected to the instance of IAM Identity Center.</p>
112    pub fn set_identity_store_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
113        self.identity_store_id = input;
114        self
115    }
116    /// <p>The identifier of the identity store that is connected to the instance of IAM Identity Center.</p>
117    pub fn get_identity_store_id(&self) -> &::std::option::Option<::std::string::String> {
118        &self.identity_store_id
119    }
120    /// <p>The identifier of the Amazon Web Services account for which the instance was created.</p>
121    pub fn owner_account_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
122        self.owner_account_id = ::std::option::Option::Some(input.into());
123        self
124    }
125    /// <p>The identifier of the Amazon Web Services account for which the instance was created.</p>
126    pub fn set_owner_account_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
127        self.owner_account_id = input;
128        self
129    }
130    /// <p>The identifier of the Amazon Web Services account for which the instance was created.</p>
131    pub fn get_owner_account_id(&self) -> &::std::option::Option<::std::string::String> {
132        &self.owner_account_id
133    }
134    /// <p>Specifies the instance name.</p>
135    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
136        self.name = ::std::option::Option::Some(input.into());
137        self
138    }
139    /// <p>Specifies the instance name.</p>
140    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
141        self.name = input;
142        self
143    }
144    /// <p>Specifies the instance name.</p>
145    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
146        &self.name
147    }
148    /// <p>The date the instance was created.</p>
149    pub fn created_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
150        self.created_date = ::std::option::Option::Some(input);
151        self
152    }
153    /// <p>The date the instance was created.</p>
154    pub fn set_created_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
155        self.created_date = input;
156        self
157    }
158    /// <p>The date the instance was created.</p>
159    pub fn get_created_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
160        &self.created_date
161    }
162    /// <p>The status of the instance.</p>
163    pub fn status(mut self, input: crate::types::InstanceStatus) -> Self {
164        self.status = ::std::option::Option::Some(input);
165        self
166    }
167    /// <p>The status of the instance.</p>
168    pub fn set_status(mut self, input: ::std::option::Option<crate::types::InstanceStatus>) -> Self {
169        self.status = input;
170        self
171    }
172    /// <p>The status of the instance.</p>
173    pub fn get_status(&self) -> &::std::option::Option<crate::types::InstanceStatus> {
174        &self.status
175    }
176    /// <p>Provides additional context about the current status of the IAM Identity Center instance. This field is particularly useful when an instance is in a non-ACTIVE state, such as CREATE_FAILED. When an instance fails to create or update, this field contains information about the cause, which may include issues with KMS key configuration, permission problems with the specified KMS key, or service-related errors.</p>
177    pub fn status_reason(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
178        self.status_reason = ::std::option::Option::Some(input.into());
179        self
180    }
181    /// <p>Provides additional context about the current status of the IAM Identity Center instance. This field is particularly useful when an instance is in a non-ACTIVE state, such as CREATE_FAILED. When an instance fails to create or update, this field contains information about the cause, which may include issues with KMS key configuration, permission problems with the specified KMS key, or service-related errors.</p>
182    pub fn set_status_reason(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
183        self.status_reason = input;
184        self
185    }
186    /// <p>Provides additional context about the current status of the IAM Identity Center instance. This field is particularly useful when an instance is in a non-ACTIVE state, such as CREATE_FAILED. When an instance fails to create or update, this field contains information about the cause, which may include issues with KMS key configuration, permission problems with the specified KMS key, or service-related errors.</p>
187    pub fn get_status_reason(&self) -> &::std::option::Option<::std::string::String> {
188        &self.status_reason
189    }
190    /// <p>Contains the encryption configuration for your IAM Identity Center instance, including the encryption status, KMS key type, and KMS key ARN.</p>
191    pub fn encryption_configuration_details(mut self, input: crate::types::EncryptionConfigurationDetails) -> Self {
192        self.encryption_configuration_details = ::std::option::Option::Some(input);
193        self
194    }
195    /// <p>Contains the encryption configuration for your IAM Identity Center instance, including the encryption status, KMS key type, and KMS key ARN.</p>
196    pub fn set_encryption_configuration_details(mut self, input: ::std::option::Option<crate::types::EncryptionConfigurationDetails>) -> Self {
197        self.encryption_configuration_details = input;
198        self
199    }
200    /// <p>Contains the encryption configuration for your IAM Identity Center instance, including the encryption status, KMS key type, and KMS key ARN.</p>
201    pub fn get_encryption_configuration_details(&self) -> &::std::option::Option<crate::types::EncryptionConfigurationDetails> {
202        &self.encryption_configuration_details
203    }
204    /// <p>Indicates whether permission sets are enabled for this Identity Center instance.</p>
205    pub fn permission_sets_enabled(mut self, input: bool) -> Self {
206        self.permission_sets_enabled = ::std::option::Option::Some(input);
207        self
208    }
209    /// <p>Indicates whether permission sets are enabled for this Identity Center instance.</p>
210    pub fn set_permission_sets_enabled(mut self, input: ::std::option::Option<bool>) -> Self {
211        self.permission_sets_enabled = input;
212        self
213    }
214    /// <p>Indicates whether permission sets are enabled for this Identity Center instance.</p>
215    pub fn get_permission_sets_enabled(&self) -> &::std::option::Option<bool> {
216        &self.permission_sets_enabled
217    }
218    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
219        self._request_id = Some(request_id.into());
220        self
221    }
222
223    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
224        self._request_id = request_id;
225        self
226    }
227    /// Consumes the builder and constructs a [`DescribeInstanceOutput`](crate::operation::describe_instance::DescribeInstanceOutput).
228    pub fn build(self) -> crate::operation::describe_instance::DescribeInstanceOutput {
229        crate::operation::describe_instance::DescribeInstanceOutput {
230            instance_arn: self.instance_arn,
231            identity_store_id: self.identity_store_id,
232            owner_account_id: self.owner_account_id,
233            name: self.name,
234            created_date: self.created_date,
235            status: self.status,
236            status_reason: self.status_reason,
237            encryption_configuration_details: self.encryption_configuration_details,
238            permission_sets_enabled: self.permission_sets_enabled,
239            _request_id: self._request_id,
240        }
241    }
242}