1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct CreateDataTableOutput {
/// <p>The unique identifier for the created data table. Does not include the version alias.</p>
pub id: ::std::string::String,
/// <p>The Amazon Resource Name (ARN) for the created data table. Does not include the version alias.</p>
pub arn: ::std::string::String,
/// <p>The lock version information for the created data table, used for optimistic locking and table versioning.</p>
pub lock_version: ::std::option::Option<crate::types::DataTableLockVersion>,
_request_id: Option<String>,
}
impl CreateDataTableOutput {
/// <p>The unique identifier for the created data table. Does not include the version alias.</p>
pub fn id(&self) -> &str {
use std::ops::Deref;
self.id.deref()
}
/// <p>The Amazon Resource Name (ARN) for the created data table. Does not include the version alias.</p>
pub fn arn(&self) -> &str {
use std::ops::Deref;
self.arn.deref()
}
/// <p>The lock version information for the created data table, used for optimistic locking and table versioning.</p>
pub fn lock_version(&self) -> ::std::option::Option<&crate::types::DataTableLockVersion> {
self.lock_version.as_ref()
}
}
impl ::aws_types::request_id::RequestId for CreateDataTableOutput {
fn request_id(&self) -> Option<&str> {
self._request_id.as_deref()
}
}
impl CreateDataTableOutput {
/// Creates a new builder-style object to manufacture [`CreateDataTableOutput`](crate::operation::create_data_table::CreateDataTableOutput).
pub fn builder() -> crate::operation::create_data_table::builders::CreateDataTableOutputBuilder {
crate::operation::create_data_table::builders::CreateDataTableOutputBuilder::default()
}
}
/// A builder for [`CreateDataTableOutput`](crate::operation::create_data_table::CreateDataTableOutput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct CreateDataTableOutputBuilder {
pub(crate) id: ::std::option::Option<::std::string::String>,
pub(crate) arn: ::std::option::Option<::std::string::String>,
pub(crate) lock_version: ::std::option::Option<crate::types::DataTableLockVersion>,
_request_id: Option<String>,
}
impl CreateDataTableOutputBuilder {
/// <p>The unique identifier for the created data table. Does not include the version alias.</p>
/// This field is required.
pub fn id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.id = ::std::option::Option::Some(input.into());
self
}
/// <p>The unique identifier for the created data table. Does not include the version alias.</p>
pub fn set_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.id = input;
self
}
/// <p>The unique identifier for the created data table. Does not include the version alias.</p>
pub fn get_id(&self) -> &::std::option::Option<::std::string::String> {
&self.id
}
/// <p>The Amazon Resource Name (ARN) for the created data table. Does not include the version alias.</p>
/// This field is required.
pub fn arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.arn = ::std::option::Option::Some(input.into());
self
}
/// <p>The Amazon Resource Name (ARN) for the created data table. Does not include the version alias.</p>
pub fn set_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.arn = input;
self
}
/// <p>The Amazon Resource Name (ARN) for the created data table. Does not include the version alias.</p>
pub fn get_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.arn
}
/// <p>The lock version information for the created data table, used for optimistic locking and table versioning.</p>
/// This field is required.
pub fn lock_version(mut self, input: crate::types::DataTableLockVersion) -> Self {
self.lock_version = ::std::option::Option::Some(input);
self
}
/// <p>The lock version information for the created data table, used for optimistic locking and table versioning.</p>
pub fn set_lock_version(mut self, input: ::std::option::Option<crate::types::DataTableLockVersion>) -> Self {
self.lock_version = input;
self
}
/// <p>The lock version information for the created data table, used for optimistic locking and table versioning.</p>
pub fn get_lock_version(&self) -> &::std::option::Option<crate::types::DataTableLockVersion> {
&self.lock_version
}
pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
self._request_id = Some(request_id.into());
self
}
pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
self._request_id = request_id;
self
}
/// Consumes the builder and constructs a [`CreateDataTableOutput`](crate::operation::create_data_table::CreateDataTableOutput).
/// This method will fail if any of the following fields are not set:
/// - [`id`](crate::operation::create_data_table::builders::CreateDataTableOutputBuilder::id)
/// - [`arn`](crate::operation::create_data_table::builders::CreateDataTableOutputBuilder::arn)
pub fn build(
self,
) -> ::std::result::Result<crate::operation::create_data_table::CreateDataTableOutput, ::aws_smithy_types::error::operation::BuildError> {
::std::result::Result::Ok(crate::operation::create_data_table::CreateDataTableOutput {
id: self.id.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"id",
"id was not specified but it is required when building CreateDataTableOutput",
)
})?,
arn: self.arn.ok_or_else(|| {
::aws_smithy_types::error::operation::BuildError::missing_field(
"arn",
"arn was not specified but it is required when building CreateDataTableOutput",
)
})?,
lock_version: self.lock_version,
_request_id: self._request_id,
})
}
}