/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the storagegateway-2013-06-30.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.StorageGateway.Model { /// /// Container for the parameters to the RefreshCache operation. /// Refreshes the cached inventory of objects for the specified file share. This operation /// finds objects in the Amazon S3 bucket that were added, removed, or replaced since /// the gateway last listed the bucket's contents and cached the results. This operation /// does not import files into the S3 File Gateway cache storage. It only updates the /// cached inventory to reflect changes in the inventory of the objects in the S3 bucket. /// This operation is only supported in the S3 File Gateway types. /// /// /// /// You can subscribe to be notified through an Amazon CloudWatch event when your RefreshCache /// operation completes. For more information, see Getting /// notified about file operations in the Storage Gateway User Guide. This /// operation is Only supported for S3 File Gateways. /// /// /// /// When this API is called, it only initiates the refresh operation. When the API call /// completes and returns a success code, it doesn't necessarily mean that the file refresh /// has completed. You should use the refresh-complete notification to determine that /// the operation has completed before you check for new files on the gateway file share. /// You can subscribe to be notified through a CloudWatch event when your RefreshCache /// operation completes. /// /// /// /// Throttle limit: This API is asynchronous, so the gateway will accept no more than /// two refreshes at any time. We recommend using the refresh-complete CloudWatch event /// notification before issuing additional requests. For more information, see Getting /// notified about file operations in the Storage Gateway User Guide. /// /// /// /// The S3 bucket name does not need to be included when entering the list of folders /// in the FolderList parameter. /// /// /// /// For more information, see Getting /// notified about file operations in the Storage Gateway User Guide. /// /// public partial class RefreshCacheRequest : AmazonStorageGatewayRequest { private string _fileShareARN; private List _folderList = new List(); private bool? _recursive; /// /// Gets and sets the property FileShareARN. /// /// The Amazon Resource Name (ARN) of the file share you want to refresh. /// /// [AWSProperty(Required=true, Min=50, Max=500)] public string FileShareARN { get { return this._fileShareARN; } set { this._fileShareARN = value; } } // Check to see if FileShareARN property is set internal bool IsSetFileShareARN() { return this._fileShareARN != null; } /// /// Gets and sets the property FolderList. /// /// A comma-separated list of the paths of folders to refresh in the cache. The default /// is ["/"]. The default refreshes objects and folders at the root of the /// Amazon S3 bucket. If Recursive is set to true, the entire /// S3 bucket that the file share has access to is refreshed. /// /// [AWSProperty(Min=1, Max=50)] public List FolderList { get { return this._folderList; } set { this._folderList = value; } } // Check to see if FolderList property is set internal bool IsSetFolderList() { return this._folderList != null && this._folderList.Count > 0; } /// /// Gets and sets the property Recursive. /// /// A value that specifies whether to recursively refresh folders in the cache. The refresh /// includes folders that were in the cache the last time the gateway listed the folder's /// contents. If this value set to true, each folder that is listed in FolderList /// is recursively updated. Otherwise, subfolders listed in FolderList are /// not refreshed. Only objects that are in folders listed directly under FolderList /// are found and used for the update. The default is true. /// /// /// /// Valid Values: true | false /// /// public bool Recursive { get { return this._recursive.GetValueOrDefault(); } set { this._recursive = value; } } // Check to see if Recursive property is set internal bool IsSetRecursive() { return this._recursive.HasValue; } } }