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

This returns exactly one type of aggregation, based on the filter that Image * Builder applies in its API action.

See Also:

AWS * API Reference

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

Returns an object that contains severity counts based on an account ID.

*/ inline const AccountAggregation& GetAccountAggregation() const{ return m_accountAggregation; } /** *

Returns an object that contains severity counts based on an account ID.

*/ inline bool AccountAggregationHasBeenSet() const { return m_accountAggregationHasBeenSet; } /** *

Returns an object that contains severity counts based on an account ID.

*/ inline void SetAccountAggregation(const AccountAggregation& value) { m_accountAggregationHasBeenSet = true; m_accountAggregation = value; } /** *

Returns an object that contains severity counts based on an account ID.

*/ inline void SetAccountAggregation(AccountAggregation&& value) { m_accountAggregationHasBeenSet = true; m_accountAggregation = std::move(value); } /** *

Returns an object that contains severity counts based on an account ID.

*/ inline ImageScanFindingAggregation& WithAccountAggregation(const AccountAggregation& value) { SetAccountAggregation(value); return *this;} /** *

Returns an object that contains severity counts based on an account ID.

*/ inline ImageScanFindingAggregation& WithAccountAggregation(AccountAggregation&& value) { SetAccountAggregation(std::move(value)); return *this;} /** *

Returns an object that contains severity counts based on the Amazon Resource * Name (ARN) for a specific image.

*/ inline const ImageAggregation& GetImageAggregation() const{ return m_imageAggregation; } /** *

Returns an object that contains severity counts based on the Amazon Resource * Name (ARN) for a specific image.

*/ inline bool ImageAggregationHasBeenSet() const { return m_imageAggregationHasBeenSet; } /** *

Returns an object that contains severity counts based on the Amazon Resource * Name (ARN) for a specific image.

*/ inline void SetImageAggregation(const ImageAggregation& value) { m_imageAggregationHasBeenSet = true; m_imageAggregation = value; } /** *

Returns an object that contains severity counts based on the Amazon Resource * Name (ARN) for a specific image.

*/ inline void SetImageAggregation(ImageAggregation&& value) { m_imageAggregationHasBeenSet = true; m_imageAggregation = std::move(value); } /** *

Returns an object that contains severity counts based on the Amazon Resource * Name (ARN) for a specific image.

*/ inline ImageScanFindingAggregation& WithImageAggregation(const ImageAggregation& value) { SetImageAggregation(value); return *this;} /** *

Returns an object that contains severity counts based on the Amazon Resource * Name (ARN) for a specific image.

*/ inline ImageScanFindingAggregation& WithImageAggregation(ImageAggregation&& value) { SetImageAggregation(std::move(value)); return *this;} /** *

Returns an object that contains severity counts based on an image pipeline * ARN.

*/ inline const ImagePipelineAggregation& GetImagePipelineAggregation() const{ return m_imagePipelineAggregation; } /** *

Returns an object that contains severity counts based on an image pipeline * ARN.

*/ inline bool ImagePipelineAggregationHasBeenSet() const { return m_imagePipelineAggregationHasBeenSet; } /** *

Returns an object that contains severity counts based on an image pipeline * ARN.

*/ inline void SetImagePipelineAggregation(const ImagePipelineAggregation& value) { m_imagePipelineAggregationHasBeenSet = true; m_imagePipelineAggregation = value; } /** *

Returns an object that contains severity counts based on an image pipeline * ARN.

*/ inline void SetImagePipelineAggregation(ImagePipelineAggregation&& value) { m_imagePipelineAggregationHasBeenSet = true; m_imagePipelineAggregation = std::move(value); } /** *

Returns an object that contains severity counts based on an image pipeline * ARN.

*/ inline ImageScanFindingAggregation& WithImagePipelineAggregation(const ImagePipelineAggregation& value) { SetImagePipelineAggregation(value); return *this;} /** *

Returns an object that contains severity counts based on an image pipeline * ARN.

*/ inline ImageScanFindingAggregation& WithImagePipelineAggregation(ImagePipelineAggregation&& value) { SetImagePipelineAggregation(std::move(value)); return *this;} /** *

Returns an object that contains severity counts based on vulnerability * ID.

*/ inline const VulnerabilityIdAggregation& GetVulnerabilityIdAggregation() const{ return m_vulnerabilityIdAggregation; } /** *

Returns an object that contains severity counts based on vulnerability * ID.

*/ inline bool VulnerabilityIdAggregationHasBeenSet() const { return m_vulnerabilityIdAggregationHasBeenSet; } /** *

Returns an object that contains severity counts based on vulnerability * ID.

*/ inline void SetVulnerabilityIdAggregation(const VulnerabilityIdAggregation& value) { m_vulnerabilityIdAggregationHasBeenSet = true; m_vulnerabilityIdAggregation = value; } /** *

Returns an object that contains severity counts based on vulnerability * ID.

*/ inline void SetVulnerabilityIdAggregation(VulnerabilityIdAggregation&& value) { m_vulnerabilityIdAggregationHasBeenSet = true; m_vulnerabilityIdAggregation = std::move(value); } /** *

Returns an object that contains severity counts based on vulnerability * ID.

*/ inline ImageScanFindingAggregation& WithVulnerabilityIdAggregation(const VulnerabilityIdAggregation& value) { SetVulnerabilityIdAggregation(value); return *this;} /** *

Returns an object that contains severity counts based on vulnerability * ID.

*/ inline ImageScanFindingAggregation& WithVulnerabilityIdAggregation(VulnerabilityIdAggregation&& value) { SetVulnerabilityIdAggregation(std::move(value)); return *this;} private: AccountAggregation m_accountAggregation; bool m_accountAggregationHasBeenSet = false; ImageAggregation m_imageAggregation; bool m_imageAggregationHasBeenSet = false; ImagePipelineAggregation m_imagePipelineAggregation; bool m_imagePipelineAggregationHasBeenSet = false; VulnerabilityIdAggregation m_vulnerabilityIdAggregation; bool m_vulnerabilityIdAggregationHasBeenSet = false; }; } // namespace Model } // namespace imagebuilder } // namespace Aws