aws_sdk_keyspaces/operation/get_table/
_get_table_output.rs1#[allow(missing_docs)] #[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct GetTableOutput {
6 pub keyspace_name: ::std::string::String,
8 pub table_name: ::std::string::String,
10 pub resource_arn: ::std::string::String,
12 pub creation_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
14 pub status: ::std::option::Option<crate::types::TableStatus>,
16 pub schema_definition: ::std::option::Option<crate::types::SchemaDefinition>,
18 pub capacity_specification: ::std::option::Option<crate::types::CapacitySpecificationSummary>,
26 pub encryption_specification: ::std::option::Option<crate::types::EncryptionSpecification>,
28 pub point_in_time_recovery: ::std::option::Option<crate::types::PointInTimeRecoverySummary>,
30 pub ttl: ::std::option::Option<crate::types::TimeToLive>,
32 pub default_time_to_live: ::std::option::Option<i32>,
34 pub comment: ::std::option::Option<crate::types::Comment>,
36 pub client_side_timestamps: ::std::option::Option<crate::types::ClientSideTimestamps>,
38 pub replica_specifications: ::std::option::Option<::std::vec::Vec<crate::types::ReplicaSpecificationSummary>>,
40 _request_id: Option<String>,
41}
42impl GetTableOutput {
43 pub fn keyspace_name(&self) -> &str {
45 use std::ops::Deref;
46 self.keyspace_name.deref()
47 }
48 pub fn table_name(&self) -> &str {
50 use std::ops::Deref;
51 self.table_name.deref()
52 }
53 pub fn resource_arn(&self) -> &str {
55 use std::ops::Deref;
56 self.resource_arn.deref()
57 }
58 pub fn creation_timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
60 self.creation_timestamp.as_ref()
61 }
62 pub fn status(&self) -> ::std::option::Option<&crate::types::TableStatus> {
64 self.status.as_ref()
65 }
66 pub fn schema_definition(&self) -> ::std::option::Option<&crate::types::SchemaDefinition> {
68 self.schema_definition.as_ref()
69 }
70 pub fn capacity_specification(&self) -> ::std::option::Option<&crate::types::CapacitySpecificationSummary> {
78 self.capacity_specification.as_ref()
79 }
80 pub fn encryption_specification(&self) -> ::std::option::Option<&crate::types::EncryptionSpecification> {
82 self.encryption_specification.as_ref()
83 }
84 pub fn point_in_time_recovery(&self) -> ::std::option::Option<&crate::types::PointInTimeRecoverySummary> {
86 self.point_in_time_recovery.as_ref()
87 }
88 pub fn ttl(&self) -> ::std::option::Option<&crate::types::TimeToLive> {
90 self.ttl.as_ref()
91 }
92 pub fn default_time_to_live(&self) -> ::std::option::Option<i32> {
94 self.default_time_to_live
95 }
96 pub fn comment(&self) -> ::std::option::Option<&crate::types::Comment> {
98 self.comment.as_ref()
99 }
100 pub fn client_side_timestamps(&self) -> ::std::option::Option<&crate::types::ClientSideTimestamps> {
102 self.client_side_timestamps.as_ref()
103 }
104 pub fn replica_specifications(&self) -> &[crate::types::ReplicaSpecificationSummary] {
108 self.replica_specifications.as_deref().unwrap_or_default()
109 }
110}
111impl ::aws_types::request_id::RequestId for GetTableOutput {
112 fn request_id(&self) -> Option<&str> {
113 self._request_id.as_deref()
114 }
115}
116impl GetTableOutput {
117 pub fn builder() -> crate::operation::get_table::builders::GetTableOutputBuilder {
119 crate::operation::get_table::builders::GetTableOutputBuilder::default()
120 }
121}
122
123#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
125#[non_exhaustive]
126pub struct GetTableOutputBuilder {
127 pub(crate) keyspace_name: ::std::option::Option<::std::string::String>,
128 pub(crate) table_name: ::std::option::Option<::std::string::String>,
129 pub(crate) resource_arn: ::std::option::Option<::std::string::String>,
130 pub(crate) creation_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
131 pub(crate) status: ::std::option::Option<crate::types::TableStatus>,
132 pub(crate) schema_definition: ::std::option::Option<crate::types::SchemaDefinition>,
133 pub(crate) capacity_specification: ::std::option::Option<crate::types::CapacitySpecificationSummary>,
134 pub(crate) encryption_specification: ::std::option::Option<crate::types::EncryptionSpecification>,
135 pub(crate) point_in_time_recovery: ::std::option::Option<crate::types::PointInTimeRecoverySummary>,
136 pub(crate) ttl: ::std::option::Option<crate::types::TimeToLive>,
137 pub(crate) default_time_to_live: ::std::option::Option<i32>,
138 pub(crate) comment: ::std::option::Option<crate::types::Comment>,
139 pub(crate) client_side_timestamps: ::std::option::Option<crate::types::ClientSideTimestamps>,
140 pub(crate) replica_specifications: ::std::option::Option<::std::vec::Vec<crate::types::ReplicaSpecificationSummary>>,
141 _request_id: Option<String>,
142}
143impl GetTableOutputBuilder {
144 pub fn keyspace_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
147 self.keyspace_name = ::std::option::Option::Some(input.into());
148 self
149 }
150 pub fn set_keyspace_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
152 self.keyspace_name = input;
153 self
154 }
155 pub fn get_keyspace_name(&self) -> &::std::option::Option<::std::string::String> {
157 &self.keyspace_name
158 }
159 pub fn table_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
162 self.table_name = ::std::option::Option::Some(input.into());
163 self
164 }
165 pub fn set_table_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
167 self.table_name = input;
168 self
169 }
170 pub fn get_table_name(&self) -> &::std::option::Option<::std::string::String> {
172 &self.table_name
173 }
174 pub fn resource_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
177 self.resource_arn = ::std::option::Option::Some(input.into());
178 self
179 }
180 pub fn set_resource_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
182 self.resource_arn = input;
183 self
184 }
185 pub fn get_resource_arn(&self) -> &::std::option::Option<::std::string::String> {
187 &self.resource_arn
188 }
189 pub fn creation_timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
191 self.creation_timestamp = ::std::option::Option::Some(input);
192 self
193 }
194 pub fn set_creation_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
196 self.creation_timestamp = input;
197 self
198 }
199 pub fn get_creation_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
201 &self.creation_timestamp
202 }
203 pub fn status(mut self, input: crate::types::TableStatus) -> Self {
205 self.status = ::std::option::Option::Some(input);
206 self
207 }
208 pub fn set_status(mut self, input: ::std::option::Option<crate::types::TableStatus>) -> Self {
210 self.status = input;
211 self
212 }
213 pub fn get_status(&self) -> &::std::option::Option<crate::types::TableStatus> {
215 &self.status
216 }
217 pub fn schema_definition(mut self, input: crate::types::SchemaDefinition) -> Self {
219 self.schema_definition = ::std::option::Option::Some(input);
220 self
221 }
222 pub fn set_schema_definition(mut self, input: ::std::option::Option<crate::types::SchemaDefinition>) -> Self {
224 self.schema_definition = input;
225 self
226 }
227 pub fn get_schema_definition(&self) -> &::std::option::Option<crate::types::SchemaDefinition> {
229 &self.schema_definition
230 }
231 pub fn capacity_specification(mut self, input: crate::types::CapacitySpecificationSummary) -> Self {
239 self.capacity_specification = ::std::option::Option::Some(input);
240 self
241 }
242 pub fn set_capacity_specification(mut self, input: ::std::option::Option<crate::types::CapacitySpecificationSummary>) -> Self {
250 self.capacity_specification = input;
251 self
252 }
253 pub fn get_capacity_specification(&self) -> &::std::option::Option<crate::types::CapacitySpecificationSummary> {
261 &self.capacity_specification
262 }
263 pub fn encryption_specification(mut self, input: crate::types::EncryptionSpecification) -> Self {
265 self.encryption_specification = ::std::option::Option::Some(input);
266 self
267 }
268 pub fn set_encryption_specification(mut self, input: ::std::option::Option<crate::types::EncryptionSpecification>) -> Self {
270 self.encryption_specification = input;
271 self
272 }
273 pub fn get_encryption_specification(&self) -> &::std::option::Option<crate::types::EncryptionSpecification> {
275 &self.encryption_specification
276 }
277 pub fn point_in_time_recovery(mut self, input: crate::types::PointInTimeRecoverySummary) -> Self {
279 self.point_in_time_recovery = ::std::option::Option::Some(input);
280 self
281 }
282 pub fn set_point_in_time_recovery(mut self, input: ::std::option::Option<crate::types::PointInTimeRecoverySummary>) -> Self {
284 self.point_in_time_recovery = input;
285 self
286 }
287 pub fn get_point_in_time_recovery(&self) -> &::std::option::Option<crate::types::PointInTimeRecoverySummary> {
289 &self.point_in_time_recovery
290 }
291 pub fn ttl(mut self, input: crate::types::TimeToLive) -> Self {
293 self.ttl = ::std::option::Option::Some(input);
294 self
295 }
296 pub fn set_ttl(mut self, input: ::std::option::Option<crate::types::TimeToLive>) -> Self {
298 self.ttl = input;
299 self
300 }
301 pub fn get_ttl(&self) -> &::std::option::Option<crate::types::TimeToLive> {
303 &self.ttl
304 }
305 pub fn default_time_to_live(mut self, input: i32) -> Self {
307 self.default_time_to_live = ::std::option::Option::Some(input);
308 self
309 }
310 pub fn set_default_time_to_live(mut self, input: ::std::option::Option<i32>) -> Self {
312 self.default_time_to_live = input;
313 self
314 }
315 pub fn get_default_time_to_live(&self) -> &::std::option::Option<i32> {
317 &self.default_time_to_live
318 }
319 pub fn comment(mut self, input: crate::types::Comment) -> Self {
321 self.comment = ::std::option::Option::Some(input);
322 self
323 }
324 pub fn set_comment(mut self, input: ::std::option::Option<crate::types::Comment>) -> Self {
326 self.comment = input;
327 self
328 }
329 pub fn get_comment(&self) -> &::std::option::Option<crate::types::Comment> {
331 &self.comment
332 }
333 pub fn client_side_timestamps(mut self, input: crate::types::ClientSideTimestamps) -> Self {
335 self.client_side_timestamps = ::std::option::Option::Some(input);
336 self
337 }
338 pub fn set_client_side_timestamps(mut self, input: ::std::option::Option<crate::types::ClientSideTimestamps>) -> Self {
340 self.client_side_timestamps = input;
341 self
342 }
343 pub fn get_client_side_timestamps(&self) -> &::std::option::Option<crate::types::ClientSideTimestamps> {
345 &self.client_side_timestamps
346 }
347 pub fn replica_specifications(mut self, input: crate::types::ReplicaSpecificationSummary) -> Self {
353 let mut v = self.replica_specifications.unwrap_or_default();
354 v.push(input);
355 self.replica_specifications = ::std::option::Option::Some(v);
356 self
357 }
358 pub fn set_replica_specifications(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ReplicaSpecificationSummary>>) -> Self {
360 self.replica_specifications = input;
361 self
362 }
363 pub fn get_replica_specifications(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ReplicaSpecificationSummary>> {
365 &self.replica_specifications
366 }
367 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
368 self._request_id = Some(request_id.into());
369 self
370 }
371
372 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
373 self._request_id = request_id;
374 self
375 }
376 pub fn build(self) -> ::std::result::Result<crate::operation::get_table::GetTableOutput, ::aws_smithy_types::error::operation::BuildError> {
382 ::std::result::Result::Ok(crate::operation::get_table::GetTableOutput {
383 keyspace_name: self.keyspace_name.ok_or_else(|| {
384 ::aws_smithy_types::error::operation::BuildError::missing_field(
385 "keyspace_name",
386 "keyspace_name was not specified but it is required when building GetTableOutput",
387 )
388 })?,
389 table_name: self.table_name.ok_or_else(|| {
390 ::aws_smithy_types::error::operation::BuildError::missing_field(
391 "table_name",
392 "table_name was not specified but it is required when building GetTableOutput",
393 )
394 })?,
395 resource_arn: self.resource_arn.ok_or_else(|| {
396 ::aws_smithy_types::error::operation::BuildError::missing_field(
397 "resource_arn",
398 "resource_arn was not specified but it is required when building GetTableOutput",
399 )
400 })?,
401 creation_timestamp: self.creation_timestamp,
402 status: self.status,
403 schema_definition: self.schema_definition,
404 capacity_specification: self.capacity_specification,
405 encryption_specification: self.encryption_specification,
406 point_in_time_recovery: self.point_in_time_recovery,
407 ttl: self.ttl,
408 default_time_to_live: self.default_time_to_live,
409 comment: self.comment,
410 client_side_timestamps: self.client_side_timestamps,
411 replica_specifications: self.replica_specifications,
412 _request_id: self._request_id,
413 })
414 }
415}