/* * 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 compute-optimizer-2019-11-01.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.ComputeOptimizer.Model { /// /// Container for the parameters to the ExportEBSVolumeRecommendations operation. /// Exports optimization recommendations for Amazon EBS volumes. /// /// /// /// Recommendations are exported in a comma-separated values (.csv) file, and its metadata /// in a JavaScript Object Notation (JSON) (.json) file, to an existing Amazon Simple /// Storage Service (Amazon S3) bucket that you specify. For more information, see Exporting /// Recommendations in the Compute Optimizer User Guide. /// /// /// /// You can have only one Amazon EBS volume export job in progress per Amazon Web Services /// Region. /// /// public partial class ExportEBSVolumeRecommendationsRequest : AmazonComputeOptimizerRequest { private List _accountIds = new List(); private List _fieldsToExport = new List(); private FileFormat _fileFormat; private List _filters = new List(); private bool? _includeMemberAccounts; private S3DestinationConfig _s3DestinationConfig; /// /// Gets and sets the property AccountIds. /// /// The IDs of the Amazon Web Services accounts for which to export Amazon EBS volume /// recommendations. /// /// /// /// If your account is the management account of an organization, use this parameter to /// specify the member account for which you want to export recommendations. /// /// /// /// This parameter cannot be specified together with the include member accounts parameter. /// The parameters are mutually exclusive. /// /// /// /// Recommendations for member accounts are not included in the export if this parameter, /// or the include member accounts parameter, is omitted. /// /// /// /// You can specify multiple account IDs per request. /// /// public List AccountIds { get { return this._accountIds; } set { this._accountIds = value; } } // Check to see if AccountIds property is set internal bool IsSetAccountIds() { return this._accountIds != null && this._accountIds.Count > 0; } /// /// Gets and sets the property FieldsToExport. /// /// The recommendations data to include in the export file. For more information about /// the fields that can be exported, see Exported /// files in the Compute Optimizer User Guide. /// /// public List FieldsToExport { get { return this._fieldsToExport; } set { this._fieldsToExport = value; } } // Check to see if FieldsToExport property is set internal bool IsSetFieldsToExport() { return this._fieldsToExport != null && this._fieldsToExport.Count > 0; } /// /// Gets and sets the property FileFormat. /// /// The format of the export file. /// /// /// /// The only export file format currently supported is Csv. /// /// public FileFormat FileFormat { get { return this._fileFormat; } set { this._fileFormat = value; } } // Check to see if FileFormat property is set internal bool IsSetFileFormat() { return this._fileFormat != null; } /// /// Gets and sets the property Filters. /// /// An array of objects to specify a filter that exports a more specific set of Amazon /// EBS volume recommendations. /// /// public List Filters { get { return this._filters; } set { this._filters = value; } } // Check to see if Filters property is set internal bool IsSetFilters() { return this._filters != null && this._filters.Count > 0; } /// /// Gets and sets the property IncludeMemberAccounts. /// /// Indicates whether to include recommendations for resources in all member accounts /// of the organization if your account is the management account of an organization. /// /// /// /// The member accounts must also be opted in to Compute Optimizer, and trusted access /// for Compute Optimizer must be enabled in the organization account. For more information, /// see Compute /// Optimizer and Amazon Web Services Organizations trusted access in the Compute /// Optimizer User Guide. /// /// /// /// Recommendations for member accounts of the organization are not included in the export /// file if this parameter is omitted. /// /// /// /// This parameter cannot be specified together with the account IDs parameter. The parameters /// are mutually exclusive. /// /// /// /// Recommendations for member accounts are not included in the export if this parameter, /// or the account IDs parameter, is omitted. /// /// public bool IncludeMemberAccounts { get { return this._includeMemberAccounts.GetValueOrDefault(); } set { this._includeMemberAccounts = value; } } // Check to see if IncludeMemberAccounts property is set internal bool IsSetIncludeMemberAccounts() { return this._includeMemberAccounts.HasValue; } /// /// Gets and sets the property S3DestinationConfig. /// [AWSProperty(Required=true)] public S3DestinationConfig S3DestinationConfig { get { return this._s3DestinationConfig; } set { this._s3DestinationConfig = value; } } // Check to see if S3DestinationConfig property is set internal bool IsSetS3DestinationConfig() { return this._s3DestinationConfig != null; } } }