aws_sdk_qbusiness/operation/create_plugin/
_create_plugin_input.rs1#[allow(missing_docs)] #[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct CreatePluginInput {
6 pub application_id: ::std::option::Option<::std::string::String>,
8 pub display_name: ::std::option::Option<::std::string::String>,
10 pub r#type: ::std::option::Option<crate::types::PluginType>,
12 pub auth_configuration: ::std::option::Option<crate::types::PluginAuthConfiguration>,
14 pub server_url: ::std::option::Option<::std::string::String>,
16 pub custom_plugin_configuration: ::std::option::Option<crate::types::CustomPluginConfiguration>,
18 pub tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
20 pub client_token: ::std::option::Option<::std::string::String>,
22}
23impl CreatePluginInput {
24 pub fn application_id(&self) -> ::std::option::Option<&str> {
26 self.application_id.as_deref()
27 }
28 pub fn display_name(&self) -> ::std::option::Option<&str> {
30 self.display_name.as_deref()
31 }
32 pub fn r#type(&self) -> ::std::option::Option<&crate::types::PluginType> {
34 self.r#type.as_ref()
35 }
36 pub fn auth_configuration(&self) -> ::std::option::Option<&crate::types::PluginAuthConfiguration> {
38 self.auth_configuration.as_ref()
39 }
40 pub fn server_url(&self) -> ::std::option::Option<&str> {
42 self.server_url.as_deref()
43 }
44 pub fn custom_plugin_configuration(&self) -> ::std::option::Option<&crate::types::CustomPluginConfiguration> {
46 self.custom_plugin_configuration.as_ref()
47 }
48 pub fn tags(&self) -> &[crate::types::Tag] {
52 self.tags.as_deref().unwrap_or_default()
53 }
54 pub fn client_token(&self) -> ::std::option::Option<&str> {
56 self.client_token.as_deref()
57 }
58}
59impl CreatePluginInput {
60 pub fn builder() -> crate::operation::create_plugin::builders::CreatePluginInputBuilder {
62 crate::operation::create_plugin::builders::CreatePluginInputBuilder::default()
63 }
64}
65
66#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
68#[non_exhaustive]
69pub struct CreatePluginInputBuilder {
70 pub(crate) application_id: ::std::option::Option<::std::string::String>,
71 pub(crate) display_name: ::std::option::Option<::std::string::String>,
72 pub(crate) r#type: ::std::option::Option<crate::types::PluginType>,
73 pub(crate) auth_configuration: ::std::option::Option<crate::types::PluginAuthConfiguration>,
74 pub(crate) server_url: ::std::option::Option<::std::string::String>,
75 pub(crate) custom_plugin_configuration: ::std::option::Option<crate::types::CustomPluginConfiguration>,
76 pub(crate) tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
77 pub(crate) client_token: ::std::option::Option<::std::string::String>,
78}
79impl CreatePluginInputBuilder {
80 pub fn application_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
83 self.application_id = ::std::option::Option::Some(input.into());
84 self
85 }
86 pub fn set_application_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
88 self.application_id = input;
89 self
90 }
91 pub fn get_application_id(&self) -> &::std::option::Option<::std::string::String> {
93 &self.application_id
94 }
95 pub fn display_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
98 self.display_name = ::std::option::Option::Some(input.into());
99 self
100 }
101 pub fn set_display_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
103 self.display_name = input;
104 self
105 }
106 pub fn get_display_name(&self) -> &::std::option::Option<::std::string::String> {
108 &self.display_name
109 }
110 pub fn r#type(mut self, input: crate::types::PluginType) -> Self {
113 self.r#type = ::std::option::Option::Some(input);
114 self
115 }
116 pub fn set_type(mut self, input: ::std::option::Option<crate::types::PluginType>) -> Self {
118 self.r#type = input;
119 self
120 }
121 pub fn get_type(&self) -> &::std::option::Option<crate::types::PluginType> {
123 &self.r#type
124 }
125 pub fn auth_configuration(mut self, input: crate::types::PluginAuthConfiguration) -> Self {
128 self.auth_configuration = ::std::option::Option::Some(input);
129 self
130 }
131 pub fn set_auth_configuration(mut self, input: ::std::option::Option<crate::types::PluginAuthConfiguration>) -> Self {
133 self.auth_configuration = input;
134 self
135 }
136 pub fn get_auth_configuration(&self) -> &::std::option::Option<crate::types::PluginAuthConfiguration> {
138 &self.auth_configuration
139 }
140 pub fn server_url(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
142 self.server_url = ::std::option::Option::Some(input.into());
143 self
144 }
145 pub fn set_server_url(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
147 self.server_url = input;
148 self
149 }
150 pub fn get_server_url(&self) -> &::std::option::Option<::std::string::String> {
152 &self.server_url
153 }
154 pub fn custom_plugin_configuration(mut self, input: crate::types::CustomPluginConfiguration) -> Self {
156 self.custom_plugin_configuration = ::std::option::Option::Some(input);
157 self
158 }
159 pub fn set_custom_plugin_configuration(mut self, input: ::std::option::Option<crate::types::CustomPluginConfiguration>) -> Self {
161 self.custom_plugin_configuration = input;
162 self
163 }
164 pub fn get_custom_plugin_configuration(&self) -> &::std::option::Option<crate::types::CustomPluginConfiguration> {
166 &self.custom_plugin_configuration
167 }
168 pub fn tags(mut self, input: crate::types::Tag) -> Self {
174 let mut v = self.tags.unwrap_or_default();
175 v.push(input);
176 self.tags = ::std::option::Option::Some(v);
177 self
178 }
179 pub fn set_tags(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>) -> Self {
181 self.tags = input;
182 self
183 }
184 pub fn get_tags(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Tag>> {
186 &self.tags
187 }
188 pub fn client_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
190 self.client_token = ::std::option::Option::Some(input.into());
191 self
192 }
193 pub fn set_client_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
195 self.client_token = input;
196 self
197 }
198 pub fn get_client_token(&self) -> &::std::option::Option<::std::string::String> {
200 &self.client_token
201 }
202 pub fn build(
204 self,
205 ) -> ::std::result::Result<crate::operation::create_plugin::CreatePluginInput, ::aws_smithy_types::error::operation::BuildError> {
206 ::std::result::Result::Ok(crate::operation::create_plugin::CreatePluginInput {
207 application_id: self.application_id,
208 display_name: self.display_name,
209 r#type: self.r#type,
210 auth_configuration: self.auth_configuration,
211 server_url: self.server_url,
212 custom_plugin_configuration: self.custom_plugin_configuration,
213 tags: self.tags,
214 client_token: self.client_token,
215 })
216 }
217}