aws_sdk_storagegateway/operation/update_nfs_file_share/builders.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::update_nfs_file_share::_update_nfs_file_share_output::UpdateNfsFileShareOutputBuilder;
3
4pub use crate::operation::update_nfs_file_share::_update_nfs_file_share_input::UpdateNfsFileShareInputBuilder;
5
6impl crate::operation::update_nfs_file_share::builders::UpdateNfsFileShareInputBuilder {
7 /// Sends a request with this input using the given client.
8 pub async fn send_with(
9 self,
10 client: &crate::Client,
11 ) -> ::std::result::Result<
12 crate::operation::update_nfs_file_share::UpdateNfsFileShareOutput,
13 ::aws_smithy_runtime_api::client::result::SdkError<
14 crate::operation::update_nfs_file_share::UpdateNFSFileShareError,
15 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16 >,
17 > {
18 let mut fluent_builder = client.update_nfs_file_share();
19 fluent_builder.inner = self;
20 fluent_builder.send().await
21 }
22}
23/// Fluent builder constructing a request to `UpdateNFSFileShare`.
24///
25/// <p>Updates a Network File System (NFS) file share. This operation is only supported in S3 File Gateways.</p><note>
26/// <p>To leave a file share field unchanged, set the corresponding input field to null.</p>
27/// </note>
28/// <p>Updates the following file share settings:</p>
29/// <ul>
30/// <li>
31/// <p>Default storage class for your S3 bucket</p></li>
32/// <li>
33/// <p>Metadata defaults for your S3 bucket</p></li>
34/// <li>
35/// <p>Allowed NFS clients for your file share</p></li>
36/// <li>
37/// <p>Squash settings</p></li>
38/// <li>
39/// <p>Write status of your file share</p></li>
40/// </ul>
41#[derive(::std::clone::Clone, ::std::fmt::Debug)]
42pub struct UpdateNFSFileShareFluentBuilder {
43 handle: ::std::sync::Arc<crate::client::Handle>,
44 inner: crate::operation::update_nfs_file_share::builders::UpdateNfsFileShareInputBuilder,
45 config_override: ::std::option::Option<crate::config::Builder>,
46}
47impl
48 crate::client::customize::internal::CustomizableSend<
49 crate::operation::update_nfs_file_share::UpdateNfsFileShareOutput,
50 crate::operation::update_nfs_file_share::UpdateNFSFileShareError,
51 > for UpdateNFSFileShareFluentBuilder
52{
53 fn send(
54 self,
55 config_override: crate::config::Builder,
56 ) -> crate::client::customize::internal::BoxFuture<
57 crate::client::customize::internal::SendResult<
58 crate::operation::update_nfs_file_share::UpdateNfsFileShareOutput,
59 crate::operation::update_nfs_file_share::UpdateNFSFileShareError,
60 >,
61 > {
62 ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
63 }
64}
65impl UpdateNFSFileShareFluentBuilder {
66 /// Creates a new `UpdateNFSFileShareFluentBuilder`.
67 pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
68 Self {
69 handle,
70 inner: ::std::default::Default::default(),
71 config_override: ::std::option::Option::None,
72 }
73 }
74 /// Access the UpdateNFSFileShare as a reference.
75 pub fn as_input(&self) -> &crate::operation::update_nfs_file_share::builders::UpdateNfsFileShareInputBuilder {
76 &self.inner
77 }
78 /// Sends the request and returns the response.
79 ///
80 /// If an error occurs, an `SdkError` will be returned with additional details that
81 /// can be matched against.
82 ///
83 /// By default, any retryable failures will be retried twice. Retry behavior
84 /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
85 /// set when configuring the client.
86 pub async fn send(
87 self,
88 ) -> ::std::result::Result<
89 crate::operation::update_nfs_file_share::UpdateNfsFileShareOutput,
90 ::aws_smithy_runtime_api::client::result::SdkError<
91 crate::operation::update_nfs_file_share::UpdateNFSFileShareError,
92 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
93 >,
94 > {
95 let input = self
96 .inner
97 .build()
98 .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
99 let runtime_plugins = crate::operation::update_nfs_file_share::UpdateNFSFileShare::operation_runtime_plugins(
100 self.handle.runtime_plugins.clone(),
101 &self.handle.conf,
102 self.config_override,
103 );
104 crate::operation::update_nfs_file_share::UpdateNFSFileShare::orchestrate(&runtime_plugins, input).await
105 }
106
107 /// Consumes this builder, creating a customizable operation that can be modified before being sent.
108 pub fn customize(
109 self,
110 ) -> crate::client::customize::CustomizableOperation<
111 crate::operation::update_nfs_file_share::UpdateNfsFileShareOutput,
112 crate::operation::update_nfs_file_share::UpdateNFSFileShareError,
113 Self,
114 > {
115 crate::client::customize::CustomizableOperation::new(self)
116 }
117 pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
118 self.set_config_override(::std::option::Option::Some(config_override.into()));
119 self
120 }
121
122 pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
123 self.config_override = config_override;
124 self
125 }
126 /// <p>The Amazon Resource Name (ARN) of the file share to be updated.</p>
127 pub fn file_share_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
128 self.inner = self.inner.file_share_arn(input.into());
129 self
130 }
131 /// <p>The Amazon Resource Name (ARN) of the file share to be updated.</p>
132 pub fn set_file_share_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
133 self.inner = self.inner.set_file_share_arn(input);
134 self
135 }
136 /// <p>The Amazon Resource Name (ARN) of the file share to be updated.</p>
137 pub fn get_file_share_arn(&self) -> &::std::option::Option<::std::string::String> {
138 self.inner.get_file_share_arn()
139 }
140 /// <p>A value that specifies the type of server-side encryption that the file share will use for the data that it stores in Amazon S3.</p><note>
141 /// <p>We recommend using <code>EncryptionType</code> instead of <code>KMSEncrypted</code> to set the file share encryption method. You do not need to provide values for both parameters.</p>
142 /// <p>If values for both parameters exist in the same request, then the specified encryption methods must not conflict. For example, if <code>EncryptionType</code> is <code>SseS3</code>, then <code>KMSEncrypted</code> must be <code>false</code>. If <code>EncryptionType</code> is <code>SseKms</code> or <code>DsseKms</code>, then <code>KMSEncrypted</code> must be <code>true</code>.</p>
143 /// </note>
144 pub fn encryption_type(mut self, input: crate::types::EncryptionType) -> Self {
145 self.inner = self.inner.encryption_type(input);
146 self
147 }
148 /// <p>A value that specifies the type of server-side encryption that the file share will use for the data that it stores in Amazon S3.</p><note>
149 /// <p>We recommend using <code>EncryptionType</code> instead of <code>KMSEncrypted</code> to set the file share encryption method. You do not need to provide values for both parameters.</p>
150 /// <p>If values for both parameters exist in the same request, then the specified encryption methods must not conflict. For example, if <code>EncryptionType</code> is <code>SseS3</code>, then <code>KMSEncrypted</code> must be <code>false</code>. If <code>EncryptionType</code> is <code>SseKms</code> or <code>DsseKms</code>, then <code>KMSEncrypted</code> must be <code>true</code>.</p>
151 /// </note>
152 pub fn set_encryption_type(mut self, input: ::std::option::Option<crate::types::EncryptionType>) -> Self {
153 self.inner = self.inner.set_encryption_type(input);
154 self
155 }
156 /// <p>A value that specifies the type of server-side encryption that the file share will use for the data that it stores in Amazon S3.</p><note>
157 /// <p>We recommend using <code>EncryptionType</code> instead of <code>KMSEncrypted</code> to set the file share encryption method. You do not need to provide values for both parameters.</p>
158 /// <p>If values for both parameters exist in the same request, then the specified encryption methods must not conflict. For example, if <code>EncryptionType</code> is <code>SseS3</code>, then <code>KMSEncrypted</code> must be <code>false</code>. If <code>EncryptionType</code> is <code>SseKms</code> or <code>DsseKms</code>, then <code>KMSEncrypted</code> must be <code>true</code>.</p>
159 /// </note>
160 pub fn get_encryption_type(&self) -> &::std::option::Option<crate::types::EncryptionType> {
161 self.inner.get_encryption_type()
162 }
163 /// <p>Optional. Set to <code>true</code> to use Amazon S3 server-side encryption with your own KMS key (SSE-KMS), or <code>false</code> to use a key managed by Amazon S3 (SSE-S3). To use dual-layer encryption (DSSE-KMS), set the <code>EncryptionType</code> parameter instead.</p><note>
164 /// <p>We recommend using <code>EncryptionType</code> instead of <code>KMSEncrypted</code> to set the file share encryption method. You do not need to provide values for both parameters.</p>
165 /// <p>If values for both parameters exist in the same request, then the specified encryption methods must not conflict. For example, if <code>EncryptionType</code> is <code>SseS3</code>, then <code>KMSEncrypted</code> must be <code>false</code>. If <code>EncryptionType</code> is <code>SseKms</code> or <code>DsseKms</code>, then <code>KMSEncrypted</code> must be <code>true</code>.</p>
166 /// </note>
167 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
168 #[deprecated(note = "KMSEncrypted is deprecated, use EncryptionType instead.")]
169 pub fn kms_encrypted(mut self, input: bool) -> Self {
170 self.inner = self.inner.kms_encrypted(input);
171 self
172 }
173 /// <p>Optional. Set to <code>true</code> to use Amazon S3 server-side encryption with your own KMS key (SSE-KMS), or <code>false</code> to use a key managed by Amazon S3 (SSE-S3). To use dual-layer encryption (DSSE-KMS), set the <code>EncryptionType</code> parameter instead.</p><note>
174 /// <p>We recommend using <code>EncryptionType</code> instead of <code>KMSEncrypted</code> to set the file share encryption method. You do not need to provide values for both parameters.</p>
175 /// <p>If values for both parameters exist in the same request, then the specified encryption methods must not conflict. For example, if <code>EncryptionType</code> is <code>SseS3</code>, then <code>KMSEncrypted</code> must be <code>false</code>. If <code>EncryptionType</code> is <code>SseKms</code> or <code>DsseKms</code>, then <code>KMSEncrypted</code> must be <code>true</code>.</p>
176 /// </note>
177 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
178 #[deprecated(note = "KMSEncrypted is deprecated, use EncryptionType instead.")]
179 pub fn set_kms_encrypted(mut self, input: ::std::option::Option<bool>) -> Self {
180 self.inner = self.inner.set_kms_encrypted(input);
181 self
182 }
183 /// <p>Optional. Set to <code>true</code> to use Amazon S3 server-side encryption with your own KMS key (SSE-KMS), or <code>false</code> to use a key managed by Amazon S3 (SSE-S3). To use dual-layer encryption (DSSE-KMS), set the <code>EncryptionType</code> parameter instead.</p><note>
184 /// <p>We recommend using <code>EncryptionType</code> instead of <code>KMSEncrypted</code> to set the file share encryption method. You do not need to provide values for both parameters.</p>
185 /// <p>If values for both parameters exist in the same request, then the specified encryption methods must not conflict. For example, if <code>EncryptionType</code> is <code>SseS3</code>, then <code>KMSEncrypted</code> must be <code>false</code>. If <code>EncryptionType</code> is <code>SseKms</code> or <code>DsseKms</code>, then <code>KMSEncrypted</code> must be <code>true</code>.</p>
186 /// </note>
187 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
188 #[deprecated(note = "KMSEncrypted is deprecated, use EncryptionType instead.")]
189 pub fn get_kms_encrypted(&self) -> &::std::option::Option<bool> {
190 self.inner.get_kms_encrypted()
191 }
192 /// <p>Optional. The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value must be set if <code>KMSEncrypted</code> is <code>true</code>, or if <code>EncryptionType</code> is <code>SseKms</code> or <code>DsseKms</code>.</p>
193 pub fn kms_key(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
194 self.inner = self.inner.kms_key(input.into());
195 self
196 }
197 /// <p>Optional. The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value must be set if <code>KMSEncrypted</code> is <code>true</code>, or if <code>EncryptionType</code> is <code>SseKms</code> or <code>DsseKms</code>.</p>
198 pub fn set_kms_key(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
199 self.inner = self.inner.set_kms_key(input);
200 self
201 }
202 /// <p>Optional. The Amazon Resource Name (ARN) of a symmetric customer master key (CMK) used for Amazon S3 server-side encryption. Storage Gateway does not support asymmetric CMKs. This value must be set if <code>KMSEncrypted</code> is <code>true</code>, or if <code>EncryptionType</code> is <code>SseKms</code> or <code>DsseKms</code>.</p>
203 pub fn get_kms_key(&self) -> &::std::option::Option<::std::string::String> {
204 self.inner.get_kms_key()
205 }
206 /// <p>The default values for the file share. Optional.</p>
207 pub fn nfs_file_share_defaults(mut self, input: crate::types::NfsFileShareDefaults) -> Self {
208 self.inner = self.inner.nfs_file_share_defaults(input);
209 self
210 }
211 /// <p>The default values for the file share. Optional.</p>
212 pub fn set_nfs_file_share_defaults(mut self, input: ::std::option::Option<crate::types::NfsFileShareDefaults>) -> Self {
213 self.inner = self.inner.set_nfs_file_share_defaults(input);
214 self
215 }
216 /// <p>The default values for the file share. Optional.</p>
217 pub fn get_nfs_file_share_defaults(&self) -> &::std::option::Option<crate::types::NfsFileShareDefaults> {
218 self.inner.get_nfs_file_share_defaults()
219 }
220 /// <p>The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is <code>S3_STANDARD</code>. Optional.</p>
221 /// <p>Valid Values: <code>S3_STANDARD</code> | <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> | <code>S3_ONEZONE_IA</code></p>
222 pub fn default_storage_class(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
223 self.inner = self.inner.default_storage_class(input.into());
224 self
225 }
226 /// <p>The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is <code>S3_STANDARD</code>. Optional.</p>
227 /// <p>Valid Values: <code>S3_STANDARD</code> | <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> | <code>S3_ONEZONE_IA</code></p>
228 pub fn set_default_storage_class(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
229 self.inner = self.inner.set_default_storage_class(input);
230 self
231 }
232 /// <p>The default storage class for objects put into an Amazon S3 bucket by the S3 File Gateway. The default value is <code>S3_STANDARD</code>. Optional.</p>
233 /// <p>Valid Values: <code>S3_STANDARD</code> | <code>S3_INTELLIGENT_TIERING</code> | <code>S3_STANDARD_IA</code> | <code>S3_ONEZONE_IA</code></p>
234 pub fn get_default_storage_class(&self) -> &::std::option::Option<::std::string::String> {
235 self.inner.get_default_storage_class()
236 }
237 /// <p>A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway puts objects into. The default value is <code>private</code>.</p>
238 pub fn object_acl(mut self, input: crate::types::ObjectAcl) -> Self {
239 self.inner = self.inner.object_acl(input);
240 self
241 }
242 /// <p>A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway puts objects into. The default value is <code>private</code>.</p>
243 pub fn set_object_acl(mut self, input: ::std::option::Option<crate::types::ObjectAcl>) -> Self {
244 self.inner = self.inner.set_object_acl(input);
245 self
246 }
247 /// <p>A value that sets the access control list (ACL) permission for objects in the S3 bucket that a S3 File Gateway puts objects into. The default value is <code>private</code>.</p>
248 pub fn get_object_acl(&self) -> &::std::option::Option<crate::types::ObjectAcl> {
249 self.inner.get_object_acl()
250 }
251 ///
252 /// Appends an item to `ClientList`.
253 ///
254 /// To override the contents of this collection use [`set_client_list`](Self::set_client_list).
255 ///
256 /// <p>The list of clients that are allowed to access the S3 File Gateway. The list must contain either valid IPv4/IPv6 addresses or valid CIDR blocks.</p>
257 pub fn client_list(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
258 self.inner = self.inner.client_list(input.into());
259 self
260 }
261 /// <p>The list of clients that are allowed to access the S3 File Gateway. The list must contain either valid IPv4/IPv6 addresses or valid CIDR blocks.</p>
262 pub fn set_client_list(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
263 self.inner = self.inner.set_client_list(input);
264 self
265 }
266 /// <p>The list of clients that are allowed to access the S3 File Gateway. The list must contain either valid IPv4/IPv6 addresses or valid CIDR blocks.</p>
267 pub fn get_client_list(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
268 self.inner.get_client_list()
269 }
270 /// <p>The user mapped to anonymous user.</p>
271 /// <p>Valid values are the following:</p>
272 /// <ul>
273 /// <li>
274 /// <p><code>RootSquash</code>: Only root is mapped to anonymous user.</p></li>
275 /// <li>
276 /// <p><code>NoSquash</code>: No one is mapped to anonymous user.</p></li>
277 /// <li>
278 /// <p><code>AllSquash</code>: Everyone is mapped to anonymous user.</p></li>
279 /// </ul>
280 pub fn squash(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
281 self.inner = self.inner.squash(input.into());
282 self
283 }
284 /// <p>The user mapped to anonymous user.</p>
285 /// <p>Valid values are the following:</p>
286 /// <ul>
287 /// <li>
288 /// <p><code>RootSquash</code>: Only root is mapped to anonymous user.</p></li>
289 /// <li>
290 /// <p><code>NoSquash</code>: No one is mapped to anonymous user.</p></li>
291 /// <li>
292 /// <p><code>AllSquash</code>: Everyone is mapped to anonymous user.</p></li>
293 /// </ul>
294 pub fn set_squash(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
295 self.inner = self.inner.set_squash(input);
296 self
297 }
298 /// <p>The user mapped to anonymous user.</p>
299 /// <p>Valid values are the following:</p>
300 /// <ul>
301 /// <li>
302 /// <p><code>RootSquash</code>: Only root is mapped to anonymous user.</p></li>
303 /// <li>
304 /// <p><code>NoSquash</code>: No one is mapped to anonymous user.</p></li>
305 /// <li>
306 /// <p><code>AllSquash</code>: Everyone is mapped to anonymous user.</p></li>
307 /// </ul>
308 pub fn get_squash(&self) -> &::std::option::Option<::std::string::String> {
309 self.inner.get_squash()
310 }
311 /// <p>A value that sets the write status of a file share. Set this value to <code>true</code> to set the write status to read-only, otherwise set to <code>false</code>.</p>
312 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
313 pub fn read_only(mut self, input: bool) -> Self {
314 self.inner = self.inner.read_only(input);
315 self
316 }
317 /// <p>A value that sets the write status of a file share. Set this value to <code>true</code> to set the write status to read-only, otherwise set to <code>false</code>.</p>
318 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
319 pub fn set_read_only(mut self, input: ::std::option::Option<bool>) -> Self {
320 self.inner = self.inner.set_read_only(input);
321 self
322 }
323 /// <p>A value that sets the write status of a file share. Set this value to <code>true</code> to set the write status to read-only, otherwise set to <code>false</code>.</p>
324 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
325 pub fn get_read_only(&self) -> &::std::option::Option<bool> {
326 self.inner.get_read_only()
327 }
328 /// <p>A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to <code>true</code> to enable MIME type guessing, otherwise set to <code>false</code>. The default value is <code>true</code>.</p>
329 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
330 pub fn guess_mime_type_enabled(mut self, input: bool) -> Self {
331 self.inner = self.inner.guess_mime_type_enabled(input);
332 self
333 }
334 /// <p>A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to <code>true</code> to enable MIME type guessing, otherwise set to <code>false</code>. The default value is <code>true</code>.</p>
335 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
336 pub fn set_guess_mime_type_enabled(mut self, input: ::std::option::Option<bool>) -> Self {
337 self.inner = self.inner.set_guess_mime_type_enabled(input);
338 self
339 }
340 /// <p>A value that enables guessing of the MIME type for uploaded objects based on file extensions. Set this value to <code>true</code> to enable MIME type guessing, otherwise set to <code>false</code>. The default value is <code>true</code>.</p>
341 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
342 pub fn get_guess_mime_type_enabled(&self) -> &::std::option::Option<bool> {
343 self.inner.get_guess_mime_type_enabled()
344 }
345 /// <p>A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket. If this value is set to <code>true</code>, the requester pays the costs; otherwise, the S3 bucket owner pays. However, the S3 bucket owner always pays the cost of storing data.</p><note>
346 /// <p><code>RequesterPays</code> is a configuration for the S3 bucket that backs the file share, so make sure that the configuration on the file share is the same as the S3 bucket configuration.</p>
347 /// </note>
348 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
349 pub fn requester_pays(mut self, input: bool) -> Self {
350 self.inner = self.inner.requester_pays(input);
351 self
352 }
353 /// <p>A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket. If this value is set to <code>true</code>, the requester pays the costs; otherwise, the S3 bucket owner pays. However, the S3 bucket owner always pays the cost of storing data.</p><note>
354 /// <p><code>RequesterPays</code> is a configuration for the S3 bucket that backs the file share, so make sure that the configuration on the file share is the same as the S3 bucket configuration.</p>
355 /// </note>
356 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
357 pub fn set_requester_pays(mut self, input: ::std::option::Option<bool>) -> Self {
358 self.inner = self.inner.set_requester_pays(input);
359 self
360 }
361 /// <p>A value that sets who pays the cost of the request and the cost associated with data download from the S3 bucket. If this value is set to <code>true</code>, the requester pays the costs; otherwise, the S3 bucket owner pays. However, the S3 bucket owner always pays the cost of storing data.</p><note>
362 /// <p><code>RequesterPays</code> is a configuration for the S3 bucket that backs the file share, so make sure that the configuration on the file share is the same as the S3 bucket configuration.</p>
363 /// </note>
364 /// <p>Valid Values: <code>true</code> | <code>false</code></p>
365 pub fn get_requester_pays(&self) -> &::std::option::Option<bool> {
366 self.inner.get_requester_pays()
367 }
368 /// <p>The name of the file share. Optional.</p><note>
369 /// <p><code>FileShareName</code> must be set if an S3 prefix name is set in <code>LocationARN</code>, or if an access point or access point alias is used.</p>
370 /// <p>A valid NFS file share name can only contain the following characters: <code>a</code>-<code>z</code>, <code>A</code>-<code>Z</code>, <code>0</code>-<code>9</code>, <code>-</code>, <code>.</code>, and <code>_</code>.</p>
371 /// </note>
372 pub fn file_share_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
373 self.inner = self.inner.file_share_name(input.into());
374 self
375 }
376 /// <p>The name of the file share. Optional.</p><note>
377 /// <p><code>FileShareName</code> must be set if an S3 prefix name is set in <code>LocationARN</code>, or if an access point or access point alias is used.</p>
378 /// <p>A valid NFS file share name can only contain the following characters: <code>a</code>-<code>z</code>, <code>A</code>-<code>Z</code>, <code>0</code>-<code>9</code>, <code>-</code>, <code>.</code>, and <code>_</code>.</p>
379 /// </note>
380 pub fn set_file_share_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
381 self.inner = self.inner.set_file_share_name(input);
382 self
383 }
384 /// <p>The name of the file share. Optional.</p><note>
385 /// <p><code>FileShareName</code> must be set if an S3 prefix name is set in <code>LocationARN</code>, or if an access point or access point alias is used.</p>
386 /// <p>A valid NFS file share name can only contain the following characters: <code>a</code>-<code>z</code>, <code>A</code>-<code>Z</code>, <code>0</code>-<code>9</code>, <code>-</code>, <code>.</code>, and <code>_</code>.</p>
387 /// </note>
388 pub fn get_file_share_name(&self) -> &::std::option::Option<::std::string::String> {
389 self.inner.get_file_share_name()
390 }
391 /// <p>Specifies refresh cache information for the file share.</p>
392 pub fn cache_attributes(mut self, input: crate::types::CacheAttributes) -> Self {
393 self.inner = self.inner.cache_attributes(input);
394 self
395 }
396 /// <p>Specifies refresh cache information for the file share.</p>
397 pub fn set_cache_attributes(mut self, input: ::std::option::Option<crate::types::CacheAttributes>) -> Self {
398 self.inner = self.inner.set_cache_attributes(input);
399 self
400 }
401 /// <p>Specifies refresh cache information for the file share.</p>
402 pub fn get_cache_attributes(&self) -> &::std::option::Option<crate::types::CacheAttributes> {
403 self.inner.get_cache_attributes()
404 }
405 /// <p>The notification policy of the file share. <code>SettlingTimeInSeconds</code> controls the number of seconds to wait after the last point in time a client wrote to a file before generating an <code>ObjectUploaded</code> notification. Because clients can make many small writes to files, it's best to set this parameter for as long as possible to avoid generating multiple notifications for the same file in a small time period.</p><note>
406 /// <p><code>SettlingTimeInSeconds</code> has no effect on the timing of the object uploading to Amazon S3, only the timing of the notification.</p>
407 /// <p>This setting is not meant to specify an exact time at which the notification will be sent. In some cases, the gateway might require more than the specified delay time to generate and send notifications.</p>
408 /// </note>
409 /// <p>The following example sets <code>NotificationPolicy</code> on with <code>SettlingTimeInSeconds</code> set to 60.</p>
410 /// <p><code>{\"Upload\": {\"SettlingTimeInSeconds\": 60}}</code></p>
411 /// <p>The following example sets <code>NotificationPolicy</code> off.</p>
412 /// <p><code>{}</code></p>
413 pub fn notification_policy(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
414 self.inner = self.inner.notification_policy(input.into());
415 self
416 }
417 /// <p>The notification policy of the file share. <code>SettlingTimeInSeconds</code> controls the number of seconds to wait after the last point in time a client wrote to a file before generating an <code>ObjectUploaded</code> notification. Because clients can make many small writes to files, it's best to set this parameter for as long as possible to avoid generating multiple notifications for the same file in a small time period.</p><note>
418 /// <p><code>SettlingTimeInSeconds</code> has no effect on the timing of the object uploading to Amazon S3, only the timing of the notification.</p>
419 /// <p>This setting is not meant to specify an exact time at which the notification will be sent. In some cases, the gateway might require more than the specified delay time to generate and send notifications.</p>
420 /// </note>
421 /// <p>The following example sets <code>NotificationPolicy</code> on with <code>SettlingTimeInSeconds</code> set to 60.</p>
422 /// <p><code>{\"Upload\": {\"SettlingTimeInSeconds\": 60}}</code></p>
423 /// <p>The following example sets <code>NotificationPolicy</code> off.</p>
424 /// <p><code>{}</code></p>
425 pub fn set_notification_policy(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
426 self.inner = self.inner.set_notification_policy(input);
427 self
428 }
429 /// <p>The notification policy of the file share. <code>SettlingTimeInSeconds</code> controls the number of seconds to wait after the last point in time a client wrote to a file before generating an <code>ObjectUploaded</code> notification. Because clients can make many small writes to files, it's best to set this parameter for as long as possible to avoid generating multiple notifications for the same file in a small time period.</p><note>
430 /// <p><code>SettlingTimeInSeconds</code> has no effect on the timing of the object uploading to Amazon S3, only the timing of the notification.</p>
431 /// <p>This setting is not meant to specify an exact time at which the notification will be sent. In some cases, the gateway might require more than the specified delay time to generate and send notifications.</p>
432 /// </note>
433 /// <p>The following example sets <code>NotificationPolicy</code> on with <code>SettlingTimeInSeconds</code> set to 60.</p>
434 /// <p><code>{\"Upload\": {\"SettlingTimeInSeconds\": 60}}</code></p>
435 /// <p>The following example sets <code>NotificationPolicy</code> off.</p>
436 /// <p><code>{}</code></p>
437 pub fn get_notification_policy(&self) -> &::std::option::Option<::std::string::String> {
438 self.inner.get_notification_policy()
439 }
440 /// <p>The Amazon Resource Name (ARN) of the storage used for audit logs.</p>
441 pub fn audit_destination_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
442 self.inner = self.inner.audit_destination_arn(input.into());
443 self
444 }
445 /// <p>The Amazon Resource Name (ARN) of the storage used for audit logs.</p>
446 pub fn set_audit_destination_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
447 self.inner = self.inner.set_audit_destination_arn(input);
448 self
449 }
450 /// <p>The Amazon Resource Name (ARN) of the storage used for audit logs.</p>
451 pub fn get_audit_destination_arn(&self) -> &::std::option::Option<::std::string::String> {
452 self.inner.get_audit_destination_arn()
453 }
454}