aws_sdk_sagemaker/operation/describe_project/
_describe_project_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 DescribeProjectOutput {
6    /// <p>The Amazon Resource Name (ARN) of the project.</p>
7    pub project_arn: ::std::option::Option<::std::string::String>,
8    /// <p>The name of the project.</p>
9    pub project_name: ::std::option::Option<::std::string::String>,
10    /// <p>The ID of the project.</p>
11    pub project_id: ::std::option::Option<::std::string::String>,
12    /// <p>The description of the project.</p>
13    pub project_description: ::std::option::Option<::std::string::String>,
14    /// <p>Information used to provision a service catalog product. For information, see <a href="https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html">What is Amazon Web Services Service Catalog</a>.</p>
15    pub service_catalog_provisioning_details: ::std::option::Option<crate::types::ServiceCatalogProvisioningDetails>,
16    /// <p>Information about a provisioned service catalog product.</p>
17    pub service_catalog_provisioned_product_details: ::std::option::Option<crate::types::ServiceCatalogProvisionedProductDetails>,
18    /// <p>The status of the project.</p>
19    pub project_status: ::std::option::Option<crate::types::ProjectStatus>,
20    /// <p>Information about the user who created or modified an experiment, trial, trial component, lineage group, project, or model card.</p>
21    pub created_by: ::std::option::Option<crate::types::UserContext>,
22    /// <p>The time when the project was created.</p>
23    pub creation_time: ::std::option::Option<::aws_smithy_types::DateTime>,
24    /// <p>The timestamp when project was last modified.</p>
25    pub last_modified_time: ::std::option::Option<::aws_smithy_types::DateTime>,
26    /// <p>Information about the user who created or modified an experiment, trial, trial component, lineage group, project, or model card.</p>
27    pub last_modified_by: ::std::option::Option<crate::types::UserContext>,
28    _request_id: Option<String>,
29}
30impl DescribeProjectOutput {
31    /// <p>The Amazon Resource Name (ARN) of the project.</p>
32    pub fn project_arn(&self) -> ::std::option::Option<&str> {
33        self.project_arn.as_deref()
34    }
35    /// <p>The name of the project.</p>
36    pub fn project_name(&self) -> ::std::option::Option<&str> {
37        self.project_name.as_deref()
38    }
39    /// <p>The ID of the project.</p>
40    pub fn project_id(&self) -> ::std::option::Option<&str> {
41        self.project_id.as_deref()
42    }
43    /// <p>The description of the project.</p>
44    pub fn project_description(&self) -> ::std::option::Option<&str> {
45        self.project_description.as_deref()
46    }
47    /// <p>Information used to provision a service catalog product. For information, see <a href="https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html">What is Amazon Web Services Service Catalog</a>.</p>
48    pub fn service_catalog_provisioning_details(&self) -> ::std::option::Option<&crate::types::ServiceCatalogProvisioningDetails> {
49        self.service_catalog_provisioning_details.as_ref()
50    }
51    /// <p>Information about a provisioned service catalog product.</p>
52    pub fn service_catalog_provisioned_product_details(&self) -> ::std::option::Option<&crate::types::ServiceCatalogProvisionedProductDetails> {
53        self.service_catalog_provisioned_product_details.as_ref()
54    }
55    /// <p>The status of the project.</p>
56    pub fn project_status(&self) -> ::std::option::Option<&crate::types::ProjectStatus> {
57        self.project_status.as_ref()
58    }
59    /// <p>Information about the user who created or modified an experiment, trial, trial component, lineage group, project, or model card.</p>
60    pub fn created_by(&self) -> ::std::option::Option<&crate::types::UserContext> {
61        self.created_by.as_ref()
62    }
63    /// <p>The time when the project was created.</p>
64    pub fn creation_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
65        self.creation_time.as_ref()
66    }
67    /// <p>The timestamp when project was last modified.</p>
68    pub fn last_modified_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
69        self.last_modified_time.as_ref()
70    }
71    /// <p>Information about the user who created or modified an experiment, trial, trial component, lineage group, project, or model card.</p>
72    pub fn last_modified_by(&self) -> ::std::option::Option<&crate::types::UserContext> {
73        self.last_modified_by.as_ref()
74    }
75}
76impl ::aws_types::request_id::RequestId for DescribeProjectOutput {
77    fn request_id(&self) -> Option<&str> {
78        self._request_id.as_deref()
79    }
80}
81impl DescribeProjectOutput {
82    /// Creates a new builder-style object to manufacture [`DescribeProjectOutput`](crate::operation::describe_project::DescribeProjectOutput).
83    pub fn builder() -> crate::operation::describe_project::builders::DescribeProjectOutputBuilder {
84        crate::operation::describe_project::builders::DescribeProjectOutputBuilder::default()
85    }
86}
87
88/// A builder for [`DescribeProjectOutput`](crate::operation::describe_project::DescribeProjectOutput).
89#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
90#[non_exhaustive]
91pub struct DescribeProjectOutputBuilder {
92    pub(crate) project_arn: ::std::option::Option<::std::string::String>,
93    pub(crate) project_name: ::std::option::Option<::std::string::String>,
94    pub(crate) project_id: ::std::option::Option<::std::string::String>,
95    pub(crate) project_description: ::std::option::Option<::std::string::String>,
96    pub(crate) service_catalog_provisioning_details: ::std::option::Option<crate::types::ServiceCatalogProvisioningDetails>,
97    pub(crate) service_catalog_provisioned_product_details: ::std::option::Option<crate::types::ServiceCatalogProvisionedProductDetails>,
98    pub(crate) project_status: ::std::option::Option<crate::types::ProjectStatus>,
99    pub(crate) created_by: ::std::option::Option<crate::types::UserContext>,
100    pub(crate) creation_time: ::std::option::Option<::aws_smithy_types::DateTime>,
101    pub(crate) last_modified_time: ::std::option::Option<::aws_smithy_types::DateTime>,
102    pub(crate) last_modified_by: ::std::option::Option<crate::types::UserContext>,
103    _request_id: Option<String>,
104}
105impl DescribeProjectOutputBuilder {
106    /// <p>The Amazon Resource Name (ARN) of the project.</p>
107    /// This field is required.
108    pub fn project_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
109        self.project_arn = ::std::option::Option::Some(input.into());
110        self
111    }
112    /// <p>The Amazon Resource Name (ARN) of the project.</p>
113    pub fn set_project_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
114        self.project_arn = input;
115        self
116    }
117    /// <p>The Amazon Resource Name (ARN) of the project.</p>
118    pub fn get_project_arn(&self) -> &::std::option::Option<::std::string::String> {
119        &self.project_arn
120    }
121    /// <p>The name of the project.</p>
122    /// This field is required.
123    pub fn project_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
124        self.project_name = ::std::option::Option::Some(input.into());
125        self
126    }
127    /// <p>The name of the project.</p>
128    pub fn set_project_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
129        self.project_name = input;
130        self
131    }
132    /// <p>The name of the project.</p>
133    pub fn get_project_name(&self) -> &::std::option::Option<::std::string::String> {
134        &self.project_name
135    }
136    /// <p>The ID of the project.</p>
137    /// This field is required.
138    pub fn project_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
139        self.project_id = ::std::option::Option::Some(input.into());
140        self
141    }
142    /// <p>The ID of the project.</p>
143    pub fn set_project_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
144        self.project_id = input;
145        self
146    }
147    /// <p>The ID of the project.</p>
148    pub fn get_project_id(&self) -> &::std::option::Option<::std::string::String> {
149        &self.project_id
150    }
151    /// <p>The description of the project.</p>
152    pub fn project_description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
153        self.project_description = ::std::option::Option::Some(input.into());
154        self
155    }
156    /// <p>The description of the project.</p>
157    pub fn set_project_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
158        self.project_description = input;
159        self
160    }
161    /// <p>The description of the project.</p>
162    pub fn get_project_description(&self) -> &::std::option::Option<::std::string::String> {
163        &self.project_description
164    }
165    /// <p>Information used to provision a service catalog product. For information, see <a href="https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html">What is Amazon Web Services Service Catalog</a>.</p>
166    pub fn service_catalog_provisioning_details(mut self, input: crate::types::ServiceCatalogProvisioningDetails) -> Self {
167        self.service_catalog_provisioning_details = ::std::option::Option::Some(input);
168        self
169    }
170    /// <p>Information used to provision a service catalog product. For information, see <a href="https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html">What is Amazon Web Services Service Catalog</a>.</p>
171    pub fn set_service_catalog_provisioning_details(mut self, input: ::std::option::Option<crate::types::ServiceCatalogProvisioningDetails>) -> Self {
172        self.service_catalog_provisioning_details = input;
173        self
174    }
175    /// <p>Information used to provision a service catalog product. For information, see <a href="https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html">What is Amazon Web Services Service Catalog</a>.</p>
176    pub fn get_service_catalog_provisioning_details(&self) -> &::std::option::Option<crate::types::ServiceCatalogProvisioningDetails> {
177        &self.service_catalog_provisioning_details
178    }
179    /// <p>Information about a provisioned service catalog product.</p>
180    pub fn service_catalog_provisioned_product_details(mut self, input: crate::types::ServiceCatalogProvisionedProductDetails) -> Self {
181        self.service_catalog_provisioned_product_details = ::std::option::Option::Some(input);
182        self
183    }
184    /// <p>Information about a provisioned service catalog product.</p>
185    pub fn set_service_catalog_provisioned_product_details(
186        mut self,
187        input: ::std::option::Option<crate::types::ServiceCatalogProvisionedProductDetails>,
188    ) -> Self {
189        self.service_catalog_provisioned_product_details = input;
190        self
191    }
192    /// <p>Information about a provisioned service catalog product.</p>
193    pub fn get_service_catalog_provisioned_product_details(&self) -> &::std::option::Option<crate::types::ServiceCatalogProvisionedProductDetails> {
194        &self.service_catalog_provisioned_product_details
195    }
196    /// <p>The status of the project.</p>
197    /// This field is required.
198    pub fn project_status(mut self, input: crate::types::ProjectStatus) -> Self {
199        self.project_status = ::std::option::Option::Some(input);
200        self
201    }
202    /// <p>The status of the project.</p>
203    pub fn set_project_status(mut self, input: ::std::option::Option<crate::types::ProjectStatus>) -> Self {
204        self.project_status = input;
205        self
206    }
207    /// <p>The status of the project.</p>
208    pub fn get_project_status(&self) -> &::std::option::Option<crate::types::ProjectStatus> {
209        &self.project_status
210    }
211    /// <p>Information about the user who created or modified an experiment, trial, trial component, lineage group, project, or model card.</p>
212    pub fn created_by(mut self, input: crate::types::UserContext) -> Self {
213        self.created_by = ::std::option::Option::Some(input);
214        self
215    }
216    /// <p>Information about the user who created or modified an experiment, trial, trial component, lineage group, project, or model card.</p>
217    pub fn set_created_by(mut self, input: ::std::option::Option<crate::types::UserContext>) -> Self {
218        self.created_by = input;
219        self
220    }
221    /// <p>Information about the user who created or modified an experiment, trial, trial component, lineage group, project, or model card.</p>
222    pub fn get_created_by(&self) -> &::std::option::Option<crate::types::UserContext> {
223        &self.created_by
224    }
225    /// <p>The time when the project was created.</p>
226    /// This field is required.
227    pub fn creation_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
228        self.creation_time = ::std::option::Option::Some(input);
229        self
230    }
231    /// <p>The time when the project was created.</p>
232    pub fn set_creation_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
233        self.creation_time = input;
234        self
235    }
236    /// <p>The time when the project was created.</p>
237    pub fn get_creation_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
238        &self.creation_time
239    }
240    /// <p>The timestamp when project was last modified.</p>
241    pub fn last_modified_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
242        self.last_modified_time = ::std::option::Option::Some(input);
243        self
244    }
245    /// <p>The timestamp when project was last modified.</p>
246    pub fn set_last_modified_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
247        self.last_modified_time = input;
248        self
249    }
250    /// <p>The timestamp when project was last modified.</p>
251    pub fn get_last_modified_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
252        &self.last_modified_time
253    }
254    /// <p>Information about the user who created or modified an experiment, trial, trial component, lineage group, project, or model card.</p>
255    pub fn last_modified_by(mut self, input: crate::types::UserContext) -> Self {
256        self.last_modified_by = ::std::option::Option::Some(input);
257        self
258    }
259    /// <p>Information about the user who created or modified an experiment, trial, trial component, lineage group, project, or model card.</p>
260    pub fn set_last_modified_by(mut self, input: ::std::option::Option<crate::types::UserContext>) -> Self {
261        self.last_modified_by = input;
262        self
263    }
264    /// <p>Information about the user who created or modified an experiment, trial, trial component, lineage group, project, or model card.</p>
265    pub fn get_last_modified_by(&self) -> &::std::option::Option<crate::types::UserContext> {
266        &self.last_modified_by
267    }
268    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
269        self._request_id = Some(request_id.into());
270        self
271    }
272
273    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
274        self._request_id = request_id;
275        self
276    }
277    /// Consumes the builder and constructs a [`DescribeProjectOutput`](crate::operation::describe_project::DescribeProjectOutput).
278    pub fn build(self) -> crate::operation::describe_project::DescribeProjectOutput {
279        crate::operation::describe_project::DescribeProjectOutput {
280            project_arn: self.project_arn,
281            project_name: self.project_name,
282            project_id: self.project_id,
283            project_description: self.project_description,
284            service_catalog_provisioning_details: self.service_catalog_provisioning_details,
285            service_catalog_provisioned_product_details: self.service_catalog_provisioned_product_details,
286            project_status: self.project_status,
287            created_by: self.created_by,
288            creation_time: self.creation_time,
289            last_modified_time: self.last_modified_time,
290            last_modified_by: self.last_modified_by,
291            _request_id: self._request_id,
292        }
293    }
294}