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

Provides an overview of the patch compliance status for an instance against a * selected compliance standard.

See Also:

AWS * API Reference

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

The identifier of the compliance standard that was used to determine the * patch compliance status.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

The identifier of the compliance standard that was used to determine the * patch compliance status.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

The identifier of the compliance standard that was used to determine the * patch compliance status.

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

The identifier of the compliance standard that was used to determine the * patch compliance status.

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

The identifier of the compliance standard that was used to determine the * patch compliance status.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

The identifier of the compliance standard that was used to determine the * patch compliance status.

*/ inline PatchSummary& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

The identifier of the compliance standard that was used to determine the * patch compliance status.

*/ inline PatchSummary& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

The identifier of the compliance standard that was used to determine the * patch compliance status.

*/ inline PatchSummary& WithId(const char* value) { SetId(value); return *this;} /** *

The number of patches from the compliance standard that were installed * successfully.

*/ inline int GetInstalledCount() const{ return m_installedCount; } /** *

The number of patches from the compliance standard that were installed * successfully.

*/ inline bool InstalledCountHasBeenSet() const { return m_installedCountHasBeenSet; } /** *

The number of patches from the compliance standard that were installed * successfully.

*/ inline void SetInstalledCount(int value) { m_installedCountHasBeenSet = true; m_installedCount = value; } /** *

The number of patches from the compliance standard that were installed * successfully.

*/ inline PatchSummary& WithInstalledCount(int value) { SetInstalledCount(value); return *this;} /** *

The number of patches that are part of the compliance standard but are not * installed. The count includes patches that failed to install.

*/ inline int GetMissingCount() const{ return m_missingCount; } /** *

The number of patches that are part of the compliance standard but are not * installed. The count includes patches that failed to install.

*/ inline bool MissingCountHasBeenSet() const { return m_missingCountHasBeenSet; } /** *

The number of patches that are part of the compliance standard but are not * installed. The count includes patches that failed to install.

*/ inline void SetMissingCount(int value) { m_missingCountHasBeenSet = true; m_missingCount = value; } /** *

The number of patches that are part of the compliance standard but are not * installed. The count includes patches that failed to install.

*/ inline PatchSummary& WithMissingCount(int value) { SetMissingCount(value); return *this;} /** *

The number of patches from the compliance standard that failed to * install.

*/ inline int GetFailedCount() const{ return m_failedCount; } /** *

The number of patches from the compliance standard that failed to * install.

*/ inline bool FailedCountHasBeenSet() const { return m_failedCountHasBeenSet; } /** *

The number of patches from the compliance standard that failed to * install.

*/ inline void SetFailedCount(int value) { m_failedCountHasBeenSet = true; m_failedCount = value; } /** *

The number of patches from the compliance standard that failed to * install.

*/ inline PatchSummary& WithFailedCount(int value) { SetFailedCount(value); return *this;} /** *

The number of installed patches that are not part of the compliance * standard.

*/ inline int GetInstalledOtherCount() const{ return m_installedOtherCount; } /** *

The number of installed patches that are not part of the compliance * standard.

*/ inline bool InstalledOtherCountHasBeenSet() const { return m_installedOtherCountHasBeenSet; } /** *

The number of installed patches that are not part of the compliance * standard.

*/ inline void SetInstalledOtherCount(int value) { m_installedOtherCountHasBeenSet = true; m_installedOtherCount = value; } /** *

The number of installed patches that are not part of the compliance * standard.

*/ inline PatchSummary& WithInstalledOtherCount(int value) { SetInstalledOtherCount(value); return *this;} /** *

The number of patches that are installed but are also on a list of patches * that the customer rejected.

*/ inline int GetInstalledRejectedCount() const{ return m_installedRejectedCount; } /** *

The number of patches that are installed but are also on a list of patches * that the customer rejected.

*/ inline bool InstalledRejectedCountHasBeenSet() const { return m_installedRejectedCountHasBeenSet; } /** *

The number of patches that are installed but are also on a list of patches * that the customer rejected.

*/ inline void SetInstalledRejectedCount(int value) { m_installedRejectedCountHasBeenSet = true; m_installedRejectedCount = value; } /** *

The number of patches that are installed but are also on a list of patches * that the customer rejected.

*/ inline PatchSummary& WithInstalledRejectedCount(int value) { SetInstalledRejectedCount(value); return *this;} /** *

The number of patches that were applied, but that require the instance to be * rebooted in order to be marked as installed.

*/ inline int GetInstalledPendingReboot() const{ return m_installedPendingReboot; } /** *

The number of patches that were applied, but that require the instance to be * rebooted in order to be marked as installed.

*/ inline bool InstalledPendingRebootHasBeenSet() const { return m_installedPendingRebootHasBeenSet; } /** *

The number of patches that were applied, but that require the instance to be * rebooted in order to be marked as installed.

*/ inline void SetInstalledPendingReboot(int value) { m_installedPendingRebootHasBeenSet = true; m_installedPendingReboot = value; } /** *

The number of patches that were applied, but that require the instance to be * rebooted in order to be marked as installed.

*/ inline PatchSummary& WithInstalledPendingReboot(int value) { SetInstalledPendingReboot(value); return *this;} /** *

Indicates when the operation started.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline const Aws::String& GetOperationStartTime() const{ return m_operationStartTime; } /** *

Indicates when the operation started.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline bool OperationStartTimeHasBeenSet() const { return m_operationStartTimeHasBeenSet; } /** *

Indicates when the operation started.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetOperationStartTime(const Aws::String& value) { m_operationStartTimeHasBeenSet = true; m_operationStartTime = value; } /** *

Indicates when the operation started.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetOperationStartTime(Aws::String&& value) { m_operationStartTimeHasBeenSet = true; m_operationStartTime = std::move(value); } /** *

Indicates when the operation started.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetOperationStartTime(const char* value) { m_operationStartTimeHasBeenSet = true; m_operationStartTime.assign(value); } /** *

Indicates when the operation started.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline PatchSummary& WithOperationStartTime(const Aws::String& value) { SetOperationStartTime(value); return *this;} /** *

Indicates when the operation started.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline PatchSummary& WithOperationStartTime(Aws::String&& value) { SetOperationStartTime(std::move(value)); return *this;} /** *

Indicates when the operation started.

Uses the date-time * format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline PatchSummary& WithOperationStartTime(const char* value) { SetOperationStartTime(value); return *this;} /** *

Indicates when the operation completed.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline const Aws::String& GetOperationEndTime() const{ return m_operationEndTime; } /** *

Indicates when the operation completed.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline bool OperationEndTimeHasBeenSet() const { return m_operationEndTimeHasBeenSet; } /** *

Indicates when the operation completed.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetOperationEndTime(const Aws::String& value) { m_operationEndTimeHasBeenSet = true; m_operationEndTime = value; } /** *

Indicates when the operation completed.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetOperationEndTime(Aws::String&& value) { m_operationEndTimeHasBeenSet = true; m_operationEndTime = std::move(value); } /** *

Indicates when the operation completed.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline void SetOperationEndTime(const char* value) { m_operationEndTimeHasBeenSet = true; m_operationEndTime.assign(value); } /** *

Indicates when the operation completed.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline PatchSummary& WithOperationEndTime(const Aws::String& value) { SetOperationEndTime(value); return *this;} /** *

Indicates when the operation completed.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline PatchSummary& WithOperationEndTime(Aws::String&& value) { SetOperationEndTime(std::move(value)); return *this;} /** *

Indicates when the operation completed.

Uses the * date-time format specified in RFC 3339 section 5.6, * Internet Date/Time Format. The value cannot contain spaces, and date and * time should be separated by T. For example, * 2020-03-22T13:22:13.933Z.

*/ inline PatchSummary& WithOperationEndTime(const char* value) { SetOperationEndTime(value); return *this;} /** *

The reboot option specified for the instance.

*/ inline const Aws::String& GetRebootOption() const{ return m_rebootOption; } /** *

The reboot option specified for the instance.

*/ inline bool RebootOptionHasBeenSet() const { return m_rebootOptionHasBeenSet; } /** *

The reboot option specified for the instance.

*/ inline void SetRebootOption(const Aws::String& value) { m_rebootOptionHasBeenSet = true; m_rebootOption = value; } /** *

The reboot option specified for the instance.

*/ inline void SetRebootOption(Aws::String&& value) { m_rebootOptionHasBeenSet = true; m_rebootOption = std::move(value); } /** *

The reboot option specified for the instance.

*/ inline void SetRebootOption(const char* value) { m_rebootOptionHasBeenSet = true; m_rebootOption.assign(value); } /** *

The reboot option specified for the instance.

*/ inline PatchSummary& WithRebootOption(const Aws::String& value) { SetRebootOption(value); return *this;} /** *

The reboot option specified for the instance.

*/ inline PatchSummary& WithRebootOption(Aws::String&& value) { SetRebootOption(std::move(value)); return *this;} /** *

The reboot option specified for the instance.

*/ inline PatchSummary& WithRebootOption(const char* value) { SetRebootOption(value); return *this;} /** *

The type of patch operation performed. For Patch Manager, the values are * SCAN and INSTALL.

*/ inline const Aws::String& GetOperation() const{ return m_operation; } /** *

The type of patch operation performed. For Patch Manager, the values are * SCAN and INSTALL.

*/ inline bool OperationHasBeenSet() const { return m_operationHasBeenSet; } /** *

The type of patch operation performed. For Patch Manager, the values are * SCAN and INSTALL.

*/ inline void SetOperation(const Aws::String& value) { m_operationHasBeenSet = true; m_operation = value; } /** *

The type of patch operation performed. For Patch Manager, the values are * SCAN and INSTALL.

*/ inline void SetOperation(Aws::String&& value) { m_operationHasBeenSet = true; m_operation = std::move(value); } /** *

The type of patch operation performed. For Patch Manager, the values are * SCAN and INSTALL.

*/ inline void SetOperation(const char* value) { m_operationHasBeenSet = true; m_operation.assign(value); } /** *

The type of patch operation performed. For Patch Manager, the values are * SCAN and INSTALL.

*/ inline PatchSummary& WithOperation(const Aws::String& value) { SetOperation(value); return *this;} /** *

The type of patch operation performed. For Patch Manager, the values are * SCAN and INSTALL.

*/ inline PatchSummary& WithOperation(Aws::String&& value) { SetOperation(std::move(value)); return *this;} /** *

The type of patch operation performed. For Patch Manager, the values are * SCAN and INSTALL.

*/ inline PatchSummary& WithOperation(const char* value) { SetOperation(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; int m_installedCount; bool m_installedCountHasBeenSet = false; int m_missingCount; bool m_missingCountHasBeenSet = false; int m_failedCount; bool m_failedCountHasBeenSet = false; int m_installedOtherCount; bool m_installedOtherCountHasBeenSet = false; int m_installedRejectedCount; bool m_installedRejectedCountHasBeenSet = false; int m_installedPendingReboot; bool m_installedPendingRebootHasBeenSet = false; Aws::String m_operationStartTime; bool m_operationStartTimeHasBeenSet = false; Aws::String m_operationEndTime; bool m_operationEndTimeHasBeenSet = false; Aws::String m_rebootOption; bool m_rebootOptionHasBeenSet = false; Aws::String m_operation; bool m_operationHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws