Class DeploymentComponentUpdatePolicy

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

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

Contains information about a deployment's policy that defines when components are safe to update.

Each component on a device can report whether or not it's ready to update. After a component and its dependencies are ready, they can apply the update in the deployment. You can configure whether or not the deployment notifies components of an update and waits for a response. You specify the amount of time each component has to respond to the update notification.

See Also:
  • Method Details

    • timeoutInSeconds

      public final Integer timeoutInSeconds()

      The amount of time in seconds that each component on a device has to report that it's safe to update. If the component waits for longer than this timeout, then the deployment proceeds on the device.

      Default: 60

      Returns:
      The amount of time in seconds that each component on a device has to report that it's safe to update. If the component waits for longer than this timeout, then the deployment proceeds on the device.

      Default: 60

    • action

      Whether or not to notify components and wait for components to become safe to update. Choose from the following options:

      • NOTIFY_COMPONENTS – The deployment notifies each component before it stops and updates that component. Components can use the SubscribeToComponentUpdates IPC operation to receive these notifications. Then, components can respond with the DeferComponentUpdate IPC operation. For more information, see Create deployments in the IoT Greengrass V2 Developer Guide.

      • SKIP_NOTIFY_COMPONENTS – The deployment doesn't notify components or wait for them to be safe to update.

      Default: NOTIFY_COMPONENTS

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

      Returns:
      Whether or not to notify components and wait for components to become safe to update. Choose from the following options:

      • NOTIFY_COMPONENTS – The deployment notifies each component before it stops and updates that component. Components can use the SubscribeToComponentUpdates IPC operation to receive these notifications. Then, components can respond with the DeferComponentUpdate IPC operation. For more information, see Create deployments in the IoT Greengrass V2 Developer Guide.

      • SKIP_NOTIFY_COMPONENTS – The deployment doesn't notify components or wait for them to be safe to update.

      Default: NOTIFY_COMPONENTS

      See Also:
    • actionAsString

      public final String actionAsString()

      Whether or not to notify components and wait for components to become safe to update. Choose from the following options:

      • NOTIFY_COMPONENTS – The deployment notifies each component before it stops and updates that component. Components can use the SubscribeToComponentUpdates IPC operation to receive these notifications. Then, components can respond with the DeferComponentUpdate IPC operation. For more information, see Create deployments in the IoT Greengrass V2 Developer Guide.

      • SKIP_NOTIFY_COMPONENTS – The deployment doesn't notify components or wait for them to be safe to update.

      Default: NOTIFY_COMPONENTS

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

      Returns:
      Whether or not to notify components and wait for components to become safe to update. Choose from the following options:

      • NOTIFY_COMPONENTS – The deployment notifies each component before it stops and updates that component. Components can use the SubscribeToComponentUpdates IPC operation to receive these notifications. Then, components can respond with the DeferComponentUpdate IPC operation. For more information, see Create deployments in the IoT Greengrass V2 Developer Guide.

      • SKIP_NOTIFY_COMPONENTS – The deployment doesn't notify components or wait for them to be safe to update.

      Default: NOTIFY_COMPONENTS

      See Also:
    • 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<DeploymentComponentUpdatePolicy.Builder,DeploymentComponentUpdatePolicy>
      Returns:
      a builder for type T
    • builder

      public static DeploymentComponentUpdatePolicy.Builder builder()
    • serializableBuilderClass

      public static Class<? extends DeploymentComponentUpdatePolicy.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.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.