/* * 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 s3control-2018-08-20.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.S3Control.Model { /// /// A container for the Amazon S3 Storage Lens configuration. /// public partial class StorageLensConfiguration { private AccountLevel _accountLevel; private StorageLensAwsOrg _awsOrg; private StorageLensDataExport _dataExport; private Exclude _exclude; private string _id; private Include _include; private bool? _isEnabled; private string _storageLensArn; /// /// Gets and sets the property AccountLevel. /// /// A container for all the account-level configurations of your S3 Storage Lens configuration. /// /// [AWSProperty(Required=true)] public AccountLevel AccountLevel { get { return this._accountLevel; } set { this._accountLevel = value; } } // Check to see if AccountLevel property is set internal bool IsSetAccountLevel() { return this._accountLevel != null; } /// /// Gets and sets the property AwsOrg. /// /// A container for the Amazon Web Services organization for this S3 Storage Lens configuration. /// /// public StorageLensAwsOrg AwsOrg { get { return this._awsOrg; } set { this._awsOrg = value; } } // Check to see if AwsOrg property is set internal bool IsSetAwsOrg() { return this._awsOrg != null; } /// /// Gets and sets the property DataExport. /// /// A container to specify the properties of your S3 Storage Lens metrics export including, /// the destination, schema and format. /// /// public StorageLensDataExport DataExport { get { return this._dataExport; } set { this._dataExport = value; } } // Check to see if DataExport property is set internal bool IsSetDataExport() { return this._dataExport != null; } /// /// Gets and sets the property Exclude. /// /// A container for what is excluded in this configuration. This container can only be /// valid if there is no Include container submitted, and it's not empty. /// /// /// public Exclude Exclude { get { return this._exclude; } set { this._exclude = value; } } // Check to see if Exclude property is set internal bool IsSetExclude() { return this._exclude != null; } /// /// Gets and sets the property Id. /// /// A container for the Amazon S3 Storage Lens configuration ID. /// /// [AWSProperty(Required=true, Min=1, Max=64)] public string Id { get { return this._id; } set { this._id = value; } } // Check to see if Id property is set internal bool IsSetId() { return this._id != null; } /// /// Gets and sets the property Include. /// /// A container for what is included in this configuration. This container can only be /// valid if there is no Exclude container submitted, and it's not empty. /// /// /// public Include Include { get { return this._include; } set { this._include = value; } } // Check to see if Include property is set internal bool IsSetInclude() { return this._include != null; } /// /// Gets and sets the property IsEnabled. /// /// A container for whether the S3 Storage Lens configuration is enabled. /// /// [AWSProperty(Required=true)] public bool IsEnabled { get { return this._isEnabled.GetValueOrDefault(); } set { this._isEnabled = value; } } // Check to see if IsEnabled property is set internal bool IsSetIsEnabled() { return this._isEnabled.HasValue; } /// /// Gets and sets the property StorageLensArn. /// /// The Amazon Resource Name (ARN) of the S3 Storage Lens configuration. This property /// is read-only and follows the following format: arn:aws:s3:us-east-1:example-account-id:storage-lens/your-dashboard-name /// /// /// [AWSProperty(Min=1, Max=1024)] public string StorageLensArn { get { return this._storageLensArn; } set { this._storageLensArn = value; } } // Check to see if StorageLensArn property is set internal bool IsSetStorageLensArn() { return this._storageLensArn != null; } } }