/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Macie2 { namespace Model { /** *

Provides aggregated statistical data for sensitive data discovery metrics * that apply to S3 buckets. Each field contains aggregated data for all the * buckets that have a sensitivity score (sensitivityScore) of a specified value or * within a specified range (BucketStatisticsBySensitivity). If automated sensitive * data discovery is currently disabled for your account, the value for each field * is 0.

See Also:

AWS * API Reference

*/ class SensitivityAggregations { public: AWS_MACIE2_API SensitivityAggregations(); AWS_MACIE2_API SensitivityAggregations(Aws::Utils::Json::JsonView jsonValue); AWS_MACIE2_API SensitivityAggregations& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_MACIE2_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The total storage size, in bytes, of all the objects that Amazon Macie can * analyze in the buckets. These objects use a supported storage class and have a * file name extension for a supported file or storage format.

If versioning * is enabled for any of the buckets, this value is based on the size of the latest * version of each applicable object in the buckets. This value doesn't reflect the * storage size of all versions of all applicable objects in the buckets.

*/ inline long long GetClassifiableSizeInBytes() const{ return m_classifiableSizeInBytes; } /** *

The total storage size, in bytes, of all the objects that Amazon Macie can * analyze in the buckets. These objects use a supported storage class and have a * file name extension for a supported file or storage format.

If versioning * is enabled for any of the buckets, this value is based on the size of the latest * version of each applicable object in the buckets. This value doesn't reflect the * storage size of all versions of all applicable objects in the buckets.

*/ inline bool ClassifiableSizeInBytesHasBeenSet() const { return m_classifiableSizeInBytesHasBeenSet; } /** *

The total storage size, in bytes, of all the objects that Amazon Macie can * analyze in the buckets. These objects use a supported storage class and have a * file name extension for a supported file or storage format.

If versioning * is enabled for any of the buckets, this value is based on the size of the latest * version of each applicable object in the buckets. This value doesn't reflect the * storage size of all versions of all applicable objects in the buckets.

*/ inline void SetClassifiableSizeInBytes(long long value) { m_classifiableSizeInBytesHasBeenSet = true; m_classifiableSizeInBytes = value; } /** *

The total storage size, in bytes, of all the objects that Amazon Macie can * analyze in the buckets. These objects use a supported storage class and have a * file name extension for a supported file or storage format.

If versioning * is enabled for any of the buckets, this value is based on the size of the latest * version of each applicable object in the buckets. This value doesn't reflect the * storage size of all versions of all applicable objects in the buckets.

*/ inline SensitivityAggregations& WithClassifiableSizeInBytes(long long value) { SetClassifiableSizeInBytes(value); return *this;} /** *

The total number of buckets that are publicly accessible due to a combination * of permissions settings for each bucket.

*/ inline long long GetPubliclyAccessibleCount() const{ return m_publiclyAccessibleCount; } /** *

The total number of buckets that are publicly accessible due to a combination * of permissions settings for each bucket.

*/ inline bool PubliclyAccessibleCountHasBeenSet() const { return m_publiclyAccessibleCountHasBeenSet; } /** *

The total number of buckets that are publicly accessible due to a combination * of permissions settings for each bucket.

*/ inline void SetPubliclyAccessibleCount(long long value) { m_publiclyAccessibleCountHasBeenSet = true; m_publiclyAccessibleCount = value; } /** *

The total number of buckets that are publicly accessible due to a combination * of permissions settings for each bucket.

*/ inline SensitivityAggregations& WithPubliclyAccessibleCount(long long value) { SetPubliclyAccessibleCount(value); return *this;} /** *

The total number of buckets.

*/ inline long long GetTotalCount() const{ return m_totalCount; } /** *

The total number of buckets.

*/ inline bool TotalCountHasBeenSet() const { return m_totalCountHasBeenSet; } /** *

The total number of buckets.

*/ inline void SetTotalCount(long long value) { m_totalCountHasBeenSet = true; m_totalCount = value; } /** *

The total number of buckets.

*/ inline SensitivityAggregations& WithTotalCount(long long value) { SetTotalCount(value); return *this;} /** *

The total storage size, in bytes, of the buckets.

If versioning is * enabled for any of the buckets, this value is based on the size of the latest * version of each object in the buckets. This value doesn't reflect the storage * size of all versions of the objects in the buckets.

*/ inline long long GetTotalSizeInBytes() const{ return m_totalSizeInBytes; } /** *

The total storage size, in bytes, of the buckets.

If versioning is * enabled for any of the buckets, this value is based on the size of the latest * version of each object in the buckets. This value doesn't reflect the storage * size of all versions of the objects in the buckets.

*/ inline bool TotalSizeInBytesHasBeenSet() const { return m_totalSizeInBytesHasBeenSet; } /** *

The total storage size, in bytes, of the buckets.

If versioning is * enabled for any of the buckets, this value is based on the size of the latest * version of each object in the buckets. This value doesn't reflect the storage * size of all versions of the objects in the buckets.

*/ inline void SetTotalSizeInBytes(long long value) { m_totalSizeInBytesHasBeenSet = true; m_totalSizeInBytes = value; } /** *

The total storage size, in bytes, of the buckets.

If versioning is * enabled for any of the buckets, this value is based on the size of the latest * version of each object in the buckets. This value doesn't reflect the storage * size of all versions of the objects in the buckets.

*/ inline SensitivityAggregations& WithTotalSizeInBytes(long long value) { SetTotalSizeInBytes(value); return *this;} private: long long m_classifiableSizeInBytes; bool m_classifiableSizeInBytesHasBeenSet = false; long long m_publiclyAccessibleCount; bool m_publiclyAccessibleCountHasBeenSet = false; long long m_totalCount; bool m_totalCountHasBeenSet = false; long long m_totalSizeInBytes; bool m_totalSizeInBytesHasBeenSet = false; }; } // namespace Model } // namespace Macie2 } // namespace Aws