aws_sdk_opensearchserverless/operation/create_collection/
_create_collection_input.rs1#[allow(missing_docs)] #[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct CreateCollectionInput {
6 pub name: ::std::option::Option<::std::string::String>,
8 pub r#type: ::std::option::Option<crate::types::CollectionType>,
10 pub description: ::std::option::Option<::std::string::String>,
12 pub tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
14 pub standby_replicas: ::std::option::Option<crate::types::StandbyReplicas>,
16 pub client_token: ::std::option::Option<::std::string::String>,
18}
19impl CreateCollectionInput {
20 pub fn name(&self) -> ::std::option::Option<&str> {
22 self.name.as_deref()
23 }
24 pub fn r#type(&self) -> ::std::option::Option<&crate::types::CollectionType> {
26 self.r#type.as_ref()
27 }
28 pub fn description(&self) -> ::std::option::Option<&str> {
30 self.description.as_deref()
31 }
32 pub fn tags(&self) -> &[crate::types::Tag] {
36 self.tags.as_deref().unwrap_or_default()
37 }
38 pub fn standby_replicas(&self) -> ::std::option::Option<&crate::types::StandbyReplicas> {
40 self.standby_replicas.as_ref()
41 }
42 pub fn client_token(&self) -> ::std::option::Option<&str> {
44 self.client_token.as_deref()
45 }
46}
47impl CreateCollectionInput {
48 pub fn builder() -> crate::operation::create_collection::builders::CreateCollectionInputBuilder {
50 crate::operation::create_collection::builders::CreateCollectionInputBuilder::default()
51 }
52}
53
54#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
56#[non_exhaustive]
57pub struct CreateCollectionInputBuilder {
58 pub(crate) name: ::std::option::Option<::std::string::String>,
59 pub(crate) r#type: ::std::option::Option<crate::types::CollectionType>,
60 pub(crate) description: ::std::option::Option<::std::string::String>,
61 pub(crate) tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
62 pub(crate) standby_replicas: ::std::option::Option<crate::types::StandbyReplicas>,
63 pub(crate) client_token: ::std::option::Option<::std::string::String>,
64}
65impl CreateCollectionInputBuilder {
66 pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
69 self.name = ::std::option::Option::Some(input.into());
70 self
71 }
72 pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
74 self.name = input;
75 self
76 }
77 pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
79 &self.name
80 }
81 pub fn r#type(mut self, input: crate::types::CollectionType) -> Self {
83 self.r#type = ::std::option::Option::Some(input);
84 self
85 }
86 pub fn set_type(mut self, input: ::std::option::Option<crate::types::CollectionType>) -> Self {
88 self.r#type = input;
89 self
90 }
91 pub fn get_type(&self) -> &::std::option::Option<crate::types::CollectionType> {
93 &self.r#type
94 }
95 pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
97 self.description = ::std::option::Option::Some(input.into());
98 self
99 }
100 pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
102 self.description = input;
103 self
104 }
105 pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
107 &self.description
108 }
109 pub fn tags(mut self, input: crate::types::Tag) -> Self {
115 let mut v = self.tags.unwrap_or_default();
116 v.push(input);
117 self.tags = ::std::option::Option::Some(v);
118 self
119 }
120 pub fn set_tags(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>) -> Self {
122 self.tags = input;
123 self
124 }
125 pub fn get_tags(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Tag>> {
127 &self.tags
128 }
129 pub fn standby_replicas(mut self, input: crate::types::StandbyReplicas) -> Self {
131 self.standby_replicas = ::std::option::Option::Some(input);
132 self
133 }
134 pub fn set_standby_replicas(mut self, input: ::std::option::Option<crate::types::StandbyReplicas>) -> Self {
136 self.standby_replicas = input;
137 self
138 }
139 pub fn get_standby_replicas(&self) -> &::std::option::Option<crate::types::StandbyReplicas> {
141 &self.standby_replicas
142 }
143 pub fn client_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
145 self.client_token = ::std::option::Option::Some(input.into());
146 self
147 }
148 pub fn set_client_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
150 self.client_token = input;
151 self
152 }
153 pub fn get_client_token(&self) -> &::std::option::Option<::std::string::String> {
155 &self.client_token
156 }
157 pub fn build(
159 self,
160 ) -> ::std::result::Result<crate::operation::create_collection::CreateCollectionInput, ::aws_smithy_types::error::operation::BuildError> {
161 ::std::result::Result::Ok(crate::operation::create_collection::CreateCollectionInput {
162 name: self.name,
163 r#type: self.r#type,
164 description: self.description,
165 tags: self.tags,
166 standby_replicas: self.standby_replicas,
167 client_token: self.client_token,
168 })
169 }
170}