Class InstancePatchState

java.lang.Object
software.amazon.awssdk.services.ssm.model.InstancePatchState
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<InstancePatchState.Builder,InstancePatchState>

@Generated("software.amazon.awssdk:codegen") public final class InstancePatchState extends Object implements SdkPojo, Serializable, ToCopyableBuilder<InstancePatchState.Builder,InstancePatchState>

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:
  • Method Details

    • instanceId

      public final String instanceId()

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

      Returns:
      The ID of the managed node the high-level patch compliance information was collected for.
    • patchGroup

      public final String patchGroup()

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

      Returns:
      The name of the patch group the managed node belongs to.
    • baselineId

      public final String baselineId()

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

      Returns:
      The ID of the patch baseline used to patch the managed node.
    • snapshotId

      public final String snapshotId()

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

      Returns:
      The ID of the patch baseline snapshot used during the patching operation when this compliance data was collected.
    • installOverrideList

      public final String 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.

      Returns:
      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.

    • ownerInformation

      public final String ownerInformation()

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

      Returns:
      Placeholder information. This field will always be empty in the current release of the service.
    • installedCount

      public final Integer installedCount()

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

      Returns:
      The number of patches from the patch baseline that are installed on the managed node.
    • installedOtherCount

      public final Integer installedOtherCount()

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

      Returns:
      The number of patches not specified in the patch baseline that are installed on the managed node.
    • installedPendingRebootCount

      public final Integer installedPendingRebootCount()

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

      Returns:
      The number of patches installed by Patch Manager since the last time the managed node was rebooted.
    • installedRejectedCount

      public final Integer 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).

      Returns:
      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).

    • missingCount

      public final Integer missingCount()

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

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

      public final Integer failedCount()

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

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

      public final Integer 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.

      Returns:
      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.
    • notApplicableCount

      public final Integer 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.

      Returns:
      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.
    • operationStartTime

      public final Instant operationStartTime()

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

      Returns:
      The time the most recent patching operation was started on the managed node.
    • operationEndTime

      public final Instant operationEndTime()

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

      Returns:
      The time the most recent patching operation completed on the managed node.
    • operation

      public final PatchOperationType operation()

      The type of patching operation that was performed: or

      • SCAN assesses the patch compliance state.

      • INSTALL installs missing patches.

      If the service returns an enum value that is not available in the current SDK version, operation will return PatchOperationType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from operationAsString().

      Returns:
      The type of patching operation that was performed: or

      • SCAN assesses the patch compliance state.

      • INSTALL installs missing patches.

      See Also:
    • operationAsString

      public final String operationAsString()

      The type of patching operation that was performed: or

      • SCAN assesses the patch compliance state.

      • INSTALL installs missing patches.

      If the service returns an enum value that is not available in the current SDK version, operation will return PatchOperationType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from operationAsString().

      Returns:
      The type of patching operation that was performed: or

      • SCAN assesses the patch compliance state.

      • INSTALL installs missing patches.

      See Also:
    • lastNoRebootInstallOperationTime

      public final Instant lastNoRebootInstallOperationTime()

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

      Returns:
      The time of the last attempt to patch the managed node with NoReboot specified as the reboot option.
    • rebootOption

      public final RebootOption 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.

      If the service returns an enum value that is not available in the current SDK version, rebootOption will return RebootOption.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from rebootOptionAsString().

      Returns:
      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.

      See Also:
    • rebootOptionAsString

      public final String rebootOptionAsString()

      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.

      If the service returns an enum value that is not available in the current SDK version, rebootOption will return RebootOption.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from rebootOptionAsString().

      Returns:
      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.

      See Also:
    • criticalNonCompliantCount

      public final Integer 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.

      Returns:
      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.
    • securityNonCompliantCount

      public final Integer 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.

      Returns:
      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.
    • otherNonCompliantCount

      public final Integer 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.

      Returns:
      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.
    • toBuilder

      public InstancePatchState.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<InstancePatchState.Builder,InstancePatchState>
      Returns:
      a builder for type T
    • builder

      public static InstancePatchState.Builder builder()
    • serializableBuilderClass

      public static Class<? extends InstancePatchState.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.