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

Contains details from the malware scan that created a finding.

See * Also:

AWS * API Reference

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

Unique Id of the malware scan that generated the finding.

*/ inline const Aws::String& GetScanId() const{ return m_scanId; } /** *

Unique Id of the malware scan that generated the finding.

*/ inline bool ScanIdHasBeenSet() const { return m_scanIdHasBeenSet; } /** *

Unique Id of the malware scan that generated the finding.

*/ inline void SetScanId(const Aws::String& value) { m_scanIdHasBeenSet = true; m_scanId = value; } /** *

Unique Id of the malware scan that generated the finding.

*/ inline void SetScanId(Aws::String&& value) { m_scanIdHasBeenSet = true; m_scanId = std::move(value); } /** *

Unique Id of the malware scan that generated the finding.

*/ inline void SetScanId(const char* value) { m_scanIdHasBeenSet = true; m_scanId.assign(value); } /** *

Unique Id of the malware scan that generated the finding.

*/ inline EbsVolumeScanDetails& WithScanId(const Aws::String& value) { SetScanId(value); return *this;} /** *

Unique Id of the malware scan that generated the finding.

*/ inline EbsVolumeScanDetails& WithScanId(Aws::String&& value) { SetScanId(std::move(value)); return *this;} /** *

Unique Id of the malware scan that generated the finding.

*/ inline EbsVolumeScanDetails& WithScanId(const char* value) { SetScanId(value); return *this;} /** *

Returns the start date and time of the malware scan.

*/ inline const Aws::Utils::DateTime& GetScanStartedAt() const{ return m_scanStartedAt; } /** *

Returns the start date and time of the malware scan.

*/ inline bool ScanStartedAtHasBeenSet() const { return m_scanStartedAtHasBeenSet; } /** *

Returns the start date and time of the malware scan.

*/ inline void SetScanStartedAt(const Aws::Utils::DateTime& value) { m_scanStartedAtHasBeenSet = true; m_scanStartedAt = value; } /** *

Returns the start date and time of the malware scan.

*/ inline void SetScanStartedAt(Aws::Utils::DateTime&& value) { m_scanStartedAtHasBeenSet = true; m_scanStartedAt = std::move(value); } /** *

Returns the start date and time of the malware scan.

*/ inline EbsVolumeScanDetails& WithScanStartedAt(const Aws::Utils::DateTime& value) { SetScanStartedAt(value); return *this;} /** *

Returns the start date and time of the malware scan.

*/ inline EbsVolumeScanDetails& WithScanStartedAt(Aws::Utils::DateTime&& value) { SetScanStartedAt(std::move(value)); return *this;} /** *

Returns the completion date and time of the malware scan.

*/ inline const Aws::Utils::DateTime& GetScanCompletedAt() const{ return m_scanCompletedAt; } /** *

Returns the completion date and time of the malware scan.

*/ inline bool ScanCompletedAtHasBeenSet() const { return m_scanCompletedAtHasBeenSet; } /** *

Returns the completion date and time of the malware scan.

*/ inline void SetScanCompletedAt(const Aws::Utils::DateTime& value) { m_scanCompletedAtHasBeenSet = true; m_scanCompletedAt = value; } /** *

Returns the completion date and time of the malware scan.

*/ inline void SetScanCompletedAt(Aws::Utils::DateTime&& value) { m_scanCompletedAtHasBeenSet = true; m_scanCompletedAt = std::move(value); } /** *

Returns the completion date and time of the malware scan.

*/ inline EbsVolumeScanDetails& WithScanCompletedAt(const Aws::Utils::DateTime& value) { SetScanCompletedAt(value); return *this;} /** *

Returns the completion date and time of the malware scan.

*/ inline EbsVolumeScanDetails& WithScanCompletedAt(Aws::Utils::DateTime&& value) { SetScanCompletedAt(std::move(value)); return *this;} /** *

GuardDuty finding ID that triggered a malware scan.

*/ inline const Aws::String& GetTriggerFindingId() const{ return m_triggerFindingId; } /** *

GuardDuty finding ID that triggered a malware scan.

*/ inline bool TriggerFindingIdHasBeenSet() const { return m_triggerFindingIdHasBeenSet; } /** *

GuardDuty finding ID that triggered a malware scan.

*/ inline void SetTriggerFindingId(const Aws::String& value) { m_triggerFindingIdHasBeenSet = true; m_triggerFindingId = value; } /** *

GuardDuty finding ID that triggered a malware scan.

*/ inline void SetTriggerFindingId(Aws::String&& value) { m_triggerFindingIdHasBeenSet = true; m_triggerFindingId = std::move(value); } /** *

GuardDuty finding ID that triggered a malware scan.

*/ inline void SetTriggerFindingId(const char* value) { m_triggerFindingIdHasBeenSet = true; m_triggerFindingId.assign(value); } /** *

GuardDuty finding ID that triggered a malware scan.

*/ inline EbsVolumeScanDetails& WithTriggerFindingId(const Aws::String& value) { SetTriggerFindingId(value); return *this;} /** *

GuardDuty finding ID that triggered a malware scan.

*/ inline EbsVolumeScanDetails& WithTriggerFindingId(Aws::String&& value) { SetTriggerFindingId(std::move(value)); return *this;} /** *

GuardDuty finding ID that triggered a malware scan.

*/ inline EbsVolumeScanDetails& WithTriggerFindingId(const char* value) { SetTriggerFindingId(value); return *this;} /** *

Contains list of threat intelligence sources used to detect threats.

*/ inline const Aws::Vector& GetSources() const{ return m_sources; } /** *

Contains list of threat intelligence sources used to detect threats.

*/ inline bool SourcesHasBeenSet() const { return m_sourcesHasBeenSet; } /** *

Contains list of threat intelligence sources used to detect threats.

*/ inline void SetSources(const Aws::Vector& value) { m_sourcesHasBeenSet = true; m_sources = value; } /** *

Contains list of threat intelligence sources used to detect threats.

*/ inline void SetSources(Aws::Vector&& value) { m_sourcesHasBeenSet = true; m_sources = std::move(value); } /** *

Contains list of threat intelligence sources used to detect threats.

*/ inline EbsVolumeScanDetails& WithSources(const Aws::Vector& value) { SetSources(value); return *this;} /** *

Contains list of threat intelligence sources used to detect threats.

*/ inline EbsVolumeScanDetails& WithSources(Aws::Vector&& value) { SetSources(std::move(value)); return *this;} /** *

Contains list of threat intelligence sources used to detect threats.

*/ inline EbsVolumeScanDetails& AddSources(const Aws::String& value) { m_sourcesHasBeenSet = true; m_sources.push_back(value); return *this; } /** *

Contains list of threat intelligence sources used to detect threats.

*/ inline EbsVolumeScanDetails& AddSources(Aws::String&& value) { m_sourcesHasBeenSet = true; m_sources.push_back(std::move(value)); return *this; } /** *

Contains list of threat intelligence sources used to detect threats.

*/ inline EbsVolumeScanDetails& AddSources(const char* value) { m_sourcesHasBeenSet = true; m_sources.push_back(value); return *this; } /** *

Contains a complete view providing malware scan result details.

*/ inline const ScanDetections& GetScanDetections() const{ return m_scanDetections; } /** *

Contains a complete view providing malware scan result details.

*/ inline bool ScanDetectionsHasBeenSet() const { return m_scanDetectionsHasBeenSet; } /** *

Contains a complete view providing malware scan result details.

*/ inline void SetScanDetections(const ScanDetections& value) { m_scanDetectionsHasBeenSet = true; m_scanDetections = value; } /** *

Contains a complete view providing malware scan result details.

*/ inline void SetScanDetections(ScanDetections&& value) { m_scanDetectionsHasBeenSet = true; m_scanDetections = std::move(value); } /** *

Contains a complete view providing malware scan result details.

*/ inline EbsVolumeScanDetails& WithScanDetections(const ScanDetections& value) { SetScanDetections(value); return *this;} /** *

Contains a complete view providing malware scan result details.

*/ inline EbsVolumeScanDetails& WithScanDetections(ScanDetections&& value) { SetScanDetections(std::move(value)); return *this;} /** *

Specifies the scan type that invoked the malware scan.

*/ inline const ScanType& GetScanType() const{ return m_scanType; } /** *

Specifies the scan type that invoked the malware scan.

*/ inline bool ScanTypeHasBeenSet() const { return m_scanTypeHasBeenSet; } /** *

Specifies the scan type that invoked the malware scan.

*/ inline void SetScanType(const ScanType& value) { m_scanTypeHasBeenSet = true; m_scanType = value; } /** *

Specifies the scan type that invoked the malware scan.

*/ inline void SetScanType(ScanType&& value) { m_scanTypeHasBeenSet = true; m_scanType = std::move(value); } /** *

Specifies the scan type that invoked the malware scan.

*/ inline EbsVolumeScanDetails& WithScanType(const ScanType& value) { SetScanType(value); return *this;} /** *

Specifies the scan type that invoked the malware scan.

*/ inline EbsVolumeScanDetails& WithScanType(ScanType&& value) { SetScanType(std::move(value)); return *this;} private: Aws::String m_scanId; bool m_scanIdHasBeenSet = false; Aws::Utils::DateTime m_scanStartedAt; bool m_scanStartedAtHasBeenSet = false; Aws::Utils::DateTime m_scanCompletedAt; bool m_scanCompletedAtHasBeenSet = false; Aws::String m_triggerFindingId; bool m_triggerFindingIdHasBeenSet = false; Aws::Vector m_sources; bool m_sourcesHasBeenSet = false; ScanDetections m_scanDetections; bool m_scanDetectionsHasBeenSet = false; ScanType m_scanType; bool m_scanTypeHasBeenSet = false; }; } // namespace Model } // namespace GuardDuty } // namespace Aws