/** * 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 SSM { namespace Model { /** *

Defines the high-level patch compliance state for a managed node, providing * information about the number of installed, missing, not applicable, and failed * patches along with metadata about the operation when this information was * gathered for the managed node.

See Also:

AWS * API Reference

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

The ID of the managed node the high-level patch compliance information was * collected for.

*/ inline const Aws::String& GetInstanceId() const{ return m_instanceId; } /** *

The ID of the managed node the high-level patch compliance information was * collected for.

*/ inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; } /** *

The ID of the managed node the high-level patch compliance information was * collected for.

*/ inline void SetInstanceId(const Aws::String& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; } /** *

The ID of the managed node the high-level patch compliance information was * collected for.

*/ inline void SetInstanceId(Aws::String&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::move(value); } /** *

The ID of the managed node the high-level patch compliance information was * collected for.

*/ inline void SetInstanceId(const char* value) { m_instanceIdHasBeenSet = true; m_instanceId.assign(value); } /** *

The ID of the managed node the high-level patch compliance information was * collected for.

*/ inline InstancePatchState& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;} /** *

The ID of the managed node the high-level patch compliance information was * collected for.

*/ inline InstancePatchState& WithInstanceId(Aws::String&& value) { SetInstanceId(std::move(value)); return *this;} /** *

The ID of the managed node the high-level patch compliance information was * collected for.

*/ inline InstancePatchState& WithInstanceId(const char* value) { SetInstanceId(value); return *this;} /** *

The name of the patch group the managed node belongs to.

*/ inline const Aws::String& GetPatchGroup() const{ return m_patchGroup; } /** *

The name of the patch group the managed node belongs to.

*/ inline bool PatchGroupHasBeenSet() const { return m_patchGroupHasBeenSet; } /** *

The name of the patch group the managed node belongs to.

*/ inline void SetPatchGroup(const Aws::String& value) { m_patchGroupHasBeenSet = true; m_patchGroup = value; } /** *

The name of the patch group the managed node belongs to.

*/ inline void SetPatchGroup(Aws::String&& value) { m_patchGroupHasBeenSet = true; m_patchGroup = std::move(value); } /** *

The name of the patch group the managed node belongs to.

*/ inline void SetPatchGroup(const char* value) { m_patchGroupHasBeenSet = true; m_patchGroup.assign(value); } /** *

The name of the patch group the managed node belongs to.

*/ inline InstancePatchState& WithPatchGroup(const Aws::String& value) { SetPatchGroup(value); return *this;} /** *

The name of the patch group the managed node belongs to.

*/ inline InstancePatchState& WithPatchGroup(Aws::String&& value) { SetPatchGroup(std::move(value)); return *this;} /** *

The name of the patch group the managed node belongs to.

*/ inline InstancePatchState& WithPatchGroup(const char* value) { SetPatchGroup(value); return *this;} /** *

The ID of the patch baseline used to patch the managed node.

*/ inline const Aws::String& GetBaselineId() const{ return m_baselineId; } /** *

The ID of the patch baseline used to patch the managed node.

*/ inline bool BaselineIdHasBeenSet() const { return m_baselineIdHasBeenSet; } /** *

The ID of the patch baseline used to patch the managed node.

*/ inline void SetBaselineId(const Aws::String& value) { m_baselineIdHasBeenSet = true; m_baselineId = value; } /** *

The ID of the patch baseline used to patch the managed node.

*/ inline void SetBaselineId(Aws::String&& value) { m_baselineIdHasBeenSet = true; m_baselineId = std::move(value); } /** *

The ID of the patch baseline used to patch the managed node.

*/ inline void SetBaselineId(const char* value) { m_baselineIdHasBeenSet = true; m_baselineId.assign(value); } /** *

The ID of the patch baseline used to patch the managed node.

*/ inline InstancePatchState& WithBaselineId(const Aws::String& value) { SetBaselineId(value); return *this;} /** *

The ID of the patch baseline used to patch the managed node.

*/ inline InstancePatchState& WithBaselineId(Aws::String&& value) { SetBaselineId(std::move(value)); return *this;} /** *

The ID of the patch baseline used to patch the managed node.

*/ inline InstancePatchState& WithBaselineId(const char* value) { SetBaselineId(value); return *this;} /** *

The ID of the patch baseline snapshot used during the patching operation when * this compliance data was collected.

*/ inline const Aws::String& GetSnapshotId() const{ return m_snapshotId; } /** *

The ID of the patch baseline snapshot used during the patching operation when * this compliance data was collected.

*/ inline bool SnapshotIdHasBeenSet() const { return m_snapshotIdHasBeenSet; } /** *

The ID of the patch baseline snapshot used during the patching operation when * this compliance data was collected.

*/ inline void SetSnapshotId(const Aws::String& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = value; } /** *

The ID of the patch baseline snapshot used during the patching operation when * this compliance data was collected.

*/ inline void SetSnapshotId(Aws::String&& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = std::move(value); } /** *

The ID of the patch baseline snapshot used during the patching operation when * this compliance data was collected.

*/ inline void SetSnapshotId(const char* value) { m_snapshotIdHasBeenSet = true; m_snapshotId.assign(value); } /** *

The ID of the patch baseline snapshot used during the patching operation when * this compliance data was collected.

*/ inline InstancePatchState& WithSnapshotId(const Aws::String& value) { SetSnapshotId(value); return *this;} /** *

The ID of the patch baseline snapshot used during the patching operation when * this compliance data was collected.

*/ inline InstancePatchState& WithSnapshotId(Aws::String&& value) { SetSnapshotId(std::move(value)); return *this;} /** *

The ID of the patch baseline snapshot used during the patching operation when * this compliance data was collected.

*/ inline InstancePatchState& WithSnapshotId(const char* value) { SetSnapshotId(value); return *this;} /** *

An https URL or an Amazon Simple Storage Service (Amazon S3) path-style URL * to a list of patches to be installed. This patch installation list, which you * maintain in an S3 bucket in YAML format and specify in the SSM document * AWS-RunPatchBaseline, overrides the patches specified by the * default patch baseline.

For more information about the * InstallOverrideList parameter, see About * the AWS-RunPatchBaseline SSM document in the Amazon Web * Services Systems Manager User Guide.

*/ inline const Aws::String& GetInstallOverrideList() const{ return m_installOverrideList; } /** *

An https URL or an Amazon Simple Storage Service (Amazon S3) path-style URL * to a list of patches to be installed. This patch installation list, which you * maintain in an S3 bucket in YAML format and specify in the SSM document * AWS-RunPatchBaseline, overrides the patches specified by the * default patch baseline.

For more information about the * InstallOverrideList parameter, see About * the AWS-RunPatchBaseline SSM document in the Amazon Web * Services Systems Manager User Guide.

*/ inline bool InstallOverrideListHasBeenSet() const { return m_installOverrideListHasBeenSet; } /** *

An https URL or an Amazon Simple Storage Service (Amazon S3) path-style URL * to a list of patches to be installed. This patch installation list, which you * maintain in an S3 bucket in YAML format and specify in the SSM document * AWS-RunPatchBaseline, overrides the patches specified by the * default patch baseline.

For more information about the * InstallOverrideList parameter, see About * the AWS-RunPatchBaseline SSM document in the Amazon Web * Services Systems Manager User Guide.

*/ inline void SetInstallOverrideList(const Aws::String& value) { m_installOverrideListHasBeenSet = true; m_installOverrideList = value; } /** *

An https URL or an Amazon Simple Storage Service (Amazon S3) path-style URL * to a list of patches to be installed. This patch installation list, which you * maintain in an S3 bucket in YAML format and specify in the SSM document * AWS-RunPatchBaseline, overrides the patches specified by the * default patch baseline.

For more information about the * InstallOverrideList parameter, see About * the AWS-RunPatchBaseline SSM document in the Amazon Web * Services Systems Manager User Guide.

*/ inline void SetInstallOverrideList(Aws::String&& value) { m_installOverrideListHasBeenSet = true; m_installOverrideList = std::move(value); } /** *

An https URL or an Amazon Simple Storage Service (Amazon S3) path-style URL * to a list of patches to be installed. This patch installation list, which you * maintain in an S3 bucket in YAML format and specify in the SSM document * AWS-RunPatchBaseline, overrides the patches specified by the * default patch baseline.

For more information about the * InstallOverrideList parameter, see About * the AWS-RunPatchBaseline SSM document in the Amazon Web * Services Systems Manager User Guide.

*/ inline void SetInstallOverrideList(const char* value) { m_installOverrideListHasBeenSet = true; m_installOverrideList.assign(value); } /** *

An https URL or an Amazon Simple Storage Service (Amazon S3) path-style URL * to a list of patches to be installed. This patch installation list, which you * maintain in an S3 bucket in YAML format and specify in the SSM document * AWS-RunPatchBaseline, overrides the patches specified by the * default patch baseline.

For more information about the * InstallOverrideList parameter, see About * the AWS-RunPatchBaseline SSM document in the Amazon Web * Services Systems Manager User Guide.

*/ inline InstancePatchState& WithInstallOverrideList(const Aws::String& value) { SetInstallOverrideList(value); return *this;} /** *

An https URL or an Amazon Simple Storage Service (Amazon S3) path-style URL * to a list of patches to be installed. This patch installation list, which you * maintain in an S3 bucket in YAML format and specify in the SSM document * AWS-RunPatchBaseline, overrides the patches specified by the * default patch baseline.

For more information about the * InstallOverrideList parameter, see About * the AWS-RunPatchBaseline SSM document in the Amazon Web * Services Systems Manager User Guide.

*/ inline InstancePatchState& WithInstallOverrideList(Aws::String&& value) { SetInstallOverrideList(std::move(value)); return *this;} /** *

An https URL or an Amazon Simple Storage Service (Amazon S3) path-style URL * to a list of patches to be installed. This patch installation list, which you * maintain in an S3 bucket in YAML format and specify in the SSM document * AWS-RunPatchBaseline, overrides the patches specified by the * default patch baseline.

For more information about the * InstallOverrideList parameter, see About * the AWS-RunPatchBaseline SSM document in the Amazon Web * Services Systems Manager User Guide.

*/ inline InstancePatchState& WithInstallOverrideList(const char* value) { SetInstallOverrideList(value); return *this;} /** *

Placeholder information. This field will always be empty in the current * release of the service.

*/ inline const Aws::String& GetOwnerInformation() const{ return m_ownerInformation; } /** *

Placeholder information. This field will always be empty in the current * release of the service.

*/ inline bool OwnerInformationHasBeenSet() const { return m_ownerInformationHasBeenSet; } /** *

Placeholder information. This field will always be empty in the current * release of the service.

*/ inline void SetOwnerInformation(const Aws::String& value) { m_ownerInformationHasBeenSet = true; m_ownerInformation = value; } /** *

Placeholder information. This field will always be empty in the current * release of the service.

*/ inline void SetOwnerInformation(Aws::String&& value) { m_ownerInformationHasBeenSet = true; m_ownerInformation = std::move(value); } /** *

Placeholder information. This field will always be empty in the current * release of the service.

*/ inline void SetOwnerInformation(const char* value) { m_ownerInformationHasBeenSet = true; m_ownerInformation.assign(value); } /** *

Placeholder information. This field will always be empty in the current * release of the service.

*/ inline InstancePatchState& WithOwnerInformation(const Aws::String& value) { SetOwnerInformation(value); return *this;} /** *

Placeholder information. This field will always be empty in the current * release of the service.

*/ inline InstancePatchState& WithOwnerInformation(Aws::String&& value) { SetOwnerInformation(std::move(value)); return *this;} /** *

Placeholder information. This field will always be empty in the current * release of the service.

*/ inline InstancePatchState& WithOwnerInformation(const char* value) { SetOwnerInformation(value); return *this;} /** *

The number of patches from the patch baseline that are installed on the * managed node.

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

The number of patches from the patch baseline that are installed on the * managed node.

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

The number of patches from the patch baseline that are installed on the * managed node.

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

The number of patches from the patch baseline that are installed on the * managed node.

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

The number of patches not specified in the patch baseline that are installed * on the managed node.

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

The number of patches not specified in the patch baseline that are installed * on the managed node.

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

The number of patches not specified in the patch baseline that are installed * on the managed node.

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

The number of patches not specified in the patch baseline that are installed * on the managed node.

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

The number of patches installed by Patch Manager since the last time the * managed node was rebooted.

*/ inline int GetInstalledPendingRebootCount() const{ return m_installedPendingRebootCount; } /** *

The number of patches installed by Patch Manager since the last time the * managed node was rebooted.

*/ inline bool InstalledPendingRebootCountHasBeenSet() const { return m_installedPendingRebootCountHasBeenSet; } /** *

The number of patches installed by Patch Manager since the last time the * managed node was rebooted.

*/ inline void SetInstalledPendingRebootCount(int value) { m_installedPendingRebootCountHasBeenSet = true; m_installedPendingRebootCount = value; } /** *

The number of patches installed by Patch Manager since the last time the * managed node was rebooted.

*/ inline InstancePatchState& WithInstalledPendingRebootCount(int value) { SetInstalledPendingRebootCount(value); return *this;} /** *

The number of patches installed on a managed node that are specified in a * RejectedPatches list. Patches with a status of * InstalledRejected were typically installed before they were added * to a RejectedPatches list.

If * ALLOW_AS_DEPENDENCY is the specified option for * RejectedPatchesAction, the value of * InstalledRejectedCount will always be 0 (zero).

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

The number of patches installed on a managed node that are specified in a * RejectedPatches list. Patches with a status of * InstalledRejected were typically installed before they were added * to a RejectedPatches list.

If * ALLOW_AS_DEPENDENCY is the specified option for * RejectedPatchesAction, the value of * InstalledRejectedCount will always be 0 (zero).

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

The number of patches installed on a managed node that are specified in a * RejectedPatches list. Patches with a status of * InstalledRejected were typically installed before they were added * to a RejectedPatches list.

If * ALLOW_AS_DEPENDENCY is the specified option for * RejectedPatchesAction, the value of * InstalledRejectedCount will always be 0 (zero).

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

The number of patches installed on a managed node that are specified in a * RejectedPatches list. Patches with a status of * InstalledRejected were typically installed before they were added * to a RejectedPatches list.

If * ALLOW_AS_DEPENDENCY is the specified option for * RejectedPatchesAction, the value of * InstalledRejectedCount will always be 0 (zero).

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

The number of patches from the patch baseline that are applicable for the * managed node but aren't currently installed.

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

The number of patches from the patch baseline that are applicable for the * managed node but aren't currently installed.

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

The number of patches from the patch baseline that are applicable for the * managed node but aren't currently installed.

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

The number of patches from the patch baseline that are applicable for the * managed node but aren't currently installed.

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

The number of patches from the patch baseline that were attempted to be * installed during the last patching operation, but failed to install.

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

The number of patches from the patch baseline that were attempted to be * installed during the last patching operation, but failed to install.

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

The number of patches from the patch baseline that were attempted to be * installed during the last patching operation, but failed to install.

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

The number of patches from the patch baseline that were attempted to be * installed during the last patching operation, but failed to install.

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

The number of patches beyond the supported limit of * NotApplicableCount that aren't reported by name to Inventory. * Inventory is a capability of Amazon Web Services Systems Manager.

*/ inline int GetUnreportedNotApplicableCount() const{ return m_unreportedNotApplicableCount; } /** *

The number of patches beyond the supported limit of * NotApplicableCount that aren't reported by name to Inventory. * Inventory is a capability of Amazon Web Services Systems Manager.

*/ inline bool UnreportedNotApplicableCountHasBeenSet() const { return m_unreportedNotApplicableCountHasBeenSet; } /** *

The number of patches beyond the supported limit of * NotApplicableCount that aren't reported by name to Inventory. * Inventory is a capability of Amazon Web Services Systems Manager.

*/ inline void SetUnreportedNotApplicableCount(int value) { m_unreportedNotApplicableCountHasBeenSet = true; m_unreportedNotApplicableCount = value; } /** *

The number of patches beyond the supported limit of * NotApplicableCount that aren't reported by name to Inventory. * Inventory is a capability of Amazon Web Services Systems Manager.

*/ inline InstancePatchState& WithUnreportedNotApplicableCount(int value) { SetUnreportedNotApplicableCount(value); return *this;} /** *

The number of patches from the patch baseline that aren't applicable for the * managed node and therefore aren't installed on the node. This number may be * truncated if the list of patch names is very large. The number of patches beyond * this limit are reported in UnreportedNotApplicableCount.

*/ inline int GetNotApplicableCount() const{ return m_notApplicableCount; } /** *

The number of patches from the patch baseline that aren't applicable for the * managed node and therefore aren't installed on the node. This number may be * truncated if the list of patch names is very large. The number of patches beyond * this limit are reported in UnreportedNotApplicableCount.

*/ inline bool NotApplicableCountHasBeenSet() const { return m_notApplicableCountHasBeenSet; } /** *

The number of patches from the patch baseline that aren't applicable for the * managed node and therefore aren't installed on the node. This number may be * truncated if the list of patch names is very large. The number of patches beyond * this limit are reported in UnreportedNotApplicableCount.

*/ inline void SetNotApplicableCount(int value) { m_notApplicableCountHasBeenSet = true; m_notApplicableCount = value; } /** *

The number of patches from the patch baseline that aren't applicable for the * managed node and therefore aren't installed on the node. This number may be * truncated if the list of patch names is very large. The number of patches beyond * this limit are reported in UnreportedNotApplicableCount.

*/ inline InstancePatchState& WithNotApplicableCount(int value) { SetNotApplicableCount(value); return *this;} /** *

The time the most recent patching operation was started on the managed * node.

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

The time the most recent patching operation was started on the managed * node.

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

The time the most recent patching operation was started on the managed * node.

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

The time the most recent patching operation was started on the managed * node.

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

The time the most recent patching operation was started on the managed * node.

*/ inline InstancePatchState& WithOperationStartTime(const Aws::Utils::DateTime& value) { SetOperationStartTime(value); return *this;} /** *

The time the most recent patching operation was started on the managed * node.

*/ inline InstancePatchState& WithOperationStartTime(Aws::Utils::DateTime&& value) { SetOperationStartTime(std::move(value)); return *this;} /** *

The time the most recent patching operation completed on the managed * node.

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

The time the most recent patching operation completed on the managed * node.

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

The time the most recent patching operation completed on the managed * node.

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

The time the most recent patching operation completed on the managed * node.

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

The time the most recent patching operation completed on the managed * node.

*/ inline InstancePatchState& WithOperationEndTime(const Aws::Utils::DateTime& value) { SetOperationEndTime(value); return *this;} /** *

The time the most recent patching operation completed on the managed * node.

*/ inline InstancePatchState& WithOperationEndTime(Aws::Utils::DateTime&& value) { SetOperationEndTime(std::move(value)); return *this;} /** *

The type of patching operation that was performed: or

  • * SCAN assesses the patch compliance state.

  • * INSTALL installs missing patches.

*/ inline const PatchOperationType& GetOperation() const{ return m_operation; } /** *

The type of patching operation that was performed: or

  • * SCAN assesses the patch compliance state.

  • * INSTALL installs missing patches.

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

The type of patching operation that was performed: or

  • * SCAN assesses the patch compliance state.

  • * INSTALL installs missing patches.

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

The type of patching operation that was performed: or

  • * SCAN assesses the patch compliance state.

  • * INSTALL installs missing patches.

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

The type of patching operation that was performed: or

  • * SCAN assesses the patch compliance state.

  • * INSTALL installs missing patches.

*/ inline InstancePatchState& WithOperation(const PatchOperationType& value) { SetOperation(value); return *this;} /** *

The type of patching operation that was performed: or

  • * SCAN assesses the patch compliance state.

  • * INSTALL installs missing patches.

*/ inline InstancePatchState& WithOperation(PatchOperationType&& value) { SetOperation(std::move(value)); return *this;} /** *

The time of the last attempt to patch the managed node with * NoReboot specified as the reboot option.

*/ inline const Aws::Utils::DateTime& GetLastNoRebootInstallOperationTime() const{ return m_lastNoRebootInstallOperationTime; } /** *

The time of the last attempt to patch the managed node with * NoReboot specified as the reboot option.

*/ inline bool LastNoRebootInstallOperationTimeHasBeenSet() const { return m_lastNoRebootInstallOperationTimeHasBeenSet; } /** *

The time of the last attempt to patch the managed node with * NoReboot specified as the reboot option.

*/ inline void SetLastNoRebootInstallOperationTime(const Aws::Utils::DateTime& value) { m_lastNoRebootInstallOperationTimeHasBeenSet = true; m_lastNoRebootInstallOperationTime = value; } /** *

The time of the last attempt to patch the managed node with * NoReboot specified as the reboot option.

*/ inline void SetLastNoRebootInstallOperationTime(Aws::Utils::DateTime&& value) { m_lastNoRebootInstallOperationTimeHasBeenSet = true; m_lastNoRebootInstallOperationTime = std::move(value); } /** *

The time of the last attempt to patch the managed node with * NoReboot specified as the reboot option.

*/ inline InstancePatchState& WithLastNoRebootInstallOperationTime(const Aws::Utils::DateTime& value) { SetLastNoRebootInstallOperationTime(value); return *this;} /** *

The time of the last attempt to patch the managed node with * NoReboot specified as the reboot option.

*/ inline InstancePatchState& WithLastNoRebootInstallOperationTime(Aws::Utils::DateTime&& value) { SetLastNoRebootInstallOperationTime(std::move(value)); return *this;} /** *

Indicates the reboot option specified in the patch baseline.

*

Reboot options apply to Install operations only. Reboots aren't * attempted for Patch Manager Scan operations.

  • *

    RebootIfNeeded: Patch Manager tries to reboot the managed node * if it installed any patches, or if any patches are detected with a status of * InstalledPendingReboot.

  • NoReboot: * Patch Manager attempts to install missing packages without trying to reboot the * system. Patches installed with this option are assigned a status of * InstalledPendingReboot. These patches might not be in effect until * a reboot is performed.

*/ inline const RebootOption& GetRebootOption() const{ return m_rebootOption; } /** *

Indicates the reboot option specified in the patch baseline.

*

Reboot options apply to Install operations only. Reboots aren't * attempted for Patch Manager Scan operations.

  • *

    RebootIfNeeded: Patch Manager tries to reboot the managed node * if it installed any patches, or if any patches are detected with a status of * InstalledPendingReboot.

  • NoReboot: * Patch Manager attempts to install missing packages without trying to reboot the * system. Patches installed with this option are assigned a status of * InstalledPendingReboot. These patches might not be in effect until * a reboot is performed.

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

Indicates the reboot option specified in the patch baseline.

*

Reboot options apply to Install operations only. Reboots aren't * attempted for Patch Manager Scan operations.

  • *

    RebootIfNeeded: Patch Manager tries to reboot the managed node * if it installed any patches, or if any patches are detected with a status of * InstalledPendingReboot.

  • NoReboot: * Patch Manager attempts to install missing packages without trying to reboot the * system. Patches installed with this option are assigned a status of * InstalledPendingReboot. These patches might not be in effect until * a reboot is performed.

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

Indicates the reboot option specified in the patch baseline.

*

Reboot options apply to Install operations only. Reboots aren't * attempted for Patch Manager Scan operations.

  • *

    RebootIfNeeded: Patch Manager tries to reboot the managed node * if it installed any patches, or if any patches are detected with a status of * InstalledPendingReboot.

  • NoReboot: * Patch Manager attempts to install missing packages without trying to reboot the * system. Patches installed with this option are assigned a status of * InstalledPendingReboot. These patches might not be in effect until * a reboot is performed.

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

Indicates the reboot option specified in the patch baseline.

*

Reboot options apply to Install operations only. Reboots aren't * attempted for Patch Manager Scan operations.

  • *

    RebootIfNeeded: Patch Manager tries to reboot the managed node * if it installed any patches, or if any patches are detected with a status of * InstalledPendingReboot.

  • NoReboot: * Patch Manager attempts to install missing packages without trying to reboot the * system. Patches installed with this option are assigned a status of * InstalledPendingReboot. These patches might not be in effect until * a reboot is performed.

*/ inline InstancePatchState& WithRebootOption(const RebootOption& value) { SetRebootOption(value); return *this;} /** *

Indicates the reboot option specified in the patch baseline.

*

Reboot options apply to Install operations only. Reboots aren't * attempted for Patch Manager Scan operations.

  • *

    RebootIfNeeded: Patch Manager tries to reboot the managed node * if it installed any patches, or if any patches are detected with a status of * InstalledPendingReboot.

  • NoReboot: * Patch Manager attempts to install missing packages without trying to reboot the * system. Patches installed with this option are assigned a status of * InstalledPendingReboot. These patches might not be in effect until * a reboot is performed.

*/ inline InstancePatchState& WithRebootOption(RebootOption&& value) { SetRebootOption(std::move(value)); return *this;} /** *

The number of patches per node that are specified as Critical * for compliance reporting in the patch baseline aren't installed. These patches * might be missing, have failed installation, were rejected, or were installed but * awaiting a required managed node reboot. The status of these managed nodes is * NON_COMPLIANT.

*/ inline int GetCriticalNonCompliantCount() const{ return m_criticalNonCompliantCount; } /** *

The number of patches per node that are specified as Critical * for compliance reporting in the patch baseline aren't installed. These patches * might be missing, have failed installation, were rejected, or were installed but * awaiting a required managed node reboot. The status of these managed nodes is * NON_COMPLIANT.

*/ inline bool CriticalNonCompliantCountHasBeenSet() const { return m_criticalNonCompliantCountHasBeenSet; } /** *

The number of patches per node that are specified as Critical * for compliance reporting in the patch baseline aren't installed. These patches * might be missing, have failed installation, were rejected, or were installed but * awaiting a required managed node reboot. The status of these managed nodes is * NON_COMPLIANT.

*/ inline void SetCriticalNonCompliantCount(int value) { m_criticalNonCompliantCountHasBeenSet = true; m_criticalNonCompliantCount = value; } /** *

The number of patches per node that are specified as Critical * for compliance reporting in the patch baseline aren't installed. These patches * might be missing, have failed installation, were rejected, or were installed but * awaiting a required managed node reboot. The status of these managed nodes is * NON_COMPLIANT.

*/ inline InstancePatchState& WithCriticalNonCompliantCount(int value) { SetCriticalNonCompliantCount(value); return *this;} /** *

The number of patches per node that are specified as Security in * a patch advisory aren't installed. These patches might be missing, have failed * installation, were rejected, or were installed but awaiting a required managed * node reboot. The status of these managed nodes is * NON_COMPLIANT.

*/ inline int GetSecurityNonCompliantCount() const{ return m_securityNonCompliantCount; } /** *

The number of patches per node that are specified as Security in * a patch advisory aren't installed. These patches might be missing, have failed * installation, were rejected, or were installed but awaiting a required managed * node reboot. The status of these managed nodes is * NON_COMPLIANT.

*/ inline bool SecurityNonCompliantCountHasBeenSet() const { return m_securityNonCompliantCountHasBeenSet; } /** *

The number of patches per node that are specified as Security in * a patch advisory aren't installed. These patches might be missing, have failed * installation, were rejected, or were installed but awaiting a required managed * node reboot. The status of these managed nodes is * NON_COMPLIANT.

*/ inline void SetSecurityNonCompliantCount(int value) { m_securityNonCompliantCountHasBeenSet = true; m_securityNonCompliantCount = value; } /** *

The number of patches per node that are specified as Security in * a patch advisory aren't installed. These patches might be missing, have failed * installation, were rejected, or were installed but awaiting a required managed * node reboot. The status of these managed nodes is * NON_COMPLIANT.

*/ inline InstancePatchState& WithSecurityNonCompliantCount(int value) { SetSecurityNonCompliantCount(value); return *this;} /** *

The number of patches per node that are specified as other than * Critical or Security but aren't compliant with the * patch baseline. The status of these managed nodes is * NON_COMPLIANT.

*/ inline int GetOtherNonCompliantCount() const{ return m_otherNonCompliantCount; } /** *

The number of patches per node that are specified as other than * Critical or Security but aren't compliant with the * patch baseline. The status of these managed nodes is * NON_COMPLIANT.

*/ inline bool OtherNonCompliantCountHasBeenSet() const { return m_otherNonCompliantCountHasBeenSet; } /** *

The number of patches per node that are specified as other than * Critical or Security but aren't compliant with the * patch baseline. The status of these managed nodes is * NON_COMPLIANT.

*/ inline void SetOtherNonCompliantCount(int value) { m_otherNonCompliantCountHasBeenSet = true; m_otherNonCompliantCount = value; } /** *

The number of patches per node that are specified as other than * Critical or Security but aren't compliant with the * patch baseline. The status of these managed nodes is * NON_COMPLIANT.

*/ inline InstancePatchState& WithOtherNonCompliantCount(int value) { SetOtherNonCompliantCount(value); return *this;} private: Aws::String m_instanceId; bool m_instanceIdHasBeenSet = false; Aws::String m_patchGroup; bool m_patchGroupHasBeenSet = false; Aws::String m_baselineId; bool m_baselineIdHasBeenSet = false; Aws::String m_snapshotId; bool m_snapshotIdHasBeenSet = false; Aws::String m_installOverrideList; bool m_installOverrideListHasBeenSet = false; Aws::String m_ownerInformation; bool m_ownerInformationHasBeenSet = false; int m_installedCount; bool m_installedCountHasBeenSet = false; int m_installedOtherCount; bool m_installedOtherCountHasBeenSet = false; int m_installedPendingRebootCount; bool m_installedPendingRebootCountHasBeenSet = false; int m_installedRejectedCount; bool m_installedRejectedCountHasBeenSet = false; int m_missingCount; bool m_missingCountHasBeenSet = false; int m_failedCount; bool m_failedCountHasBeenSet = false; int m_unreportedNotApplicableCount; bool m_unreportedNotApplicableCountHasBeenSet = false; int m_notApplicableCount; bool m_notApplicableCountHasBeenSet = false; Aws::Utils::DateTime m_operationStartTime; bool m_operationStartTimeHasBeenSet = false; Aws::Utils::DateTime m_operationEndTime; bool m_operationEndTimeHasBeenSet = false; PatchOperationType m_operation; bool m_operationHasBeenSet = false; Aws::Utils::DateTime m_lastNoRebootInstallOperationTime; bool m_lastNoRebootInstallOperationTimeHasBeenSet = false; RebootOption m_rebootOption; bool m_rebootOptionHasBeenSet = false; int m_criticalNonCompliantCount; bool m_criticalNonCompliantCountHasBeenSet = false; int m_securityNonCompliantCount; bool m_securityNonCompliantCountHasBeenSet = false; int m_otherNonCompliantCount; bool m_otherNonCompliantCountHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws