Class RotationsListEntry

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

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

Each entry contains information about one of the key materials associated with a KMS key.

See Also:
  • Method Details

    • keyId

      public final String keyId()

      Unique identifier of the key.

      Returns:
      Unique identifier of the key.
    • keyMaterialId

      public final String keyMaterialId()

      Unique identifier of the key material.

      Returns:
      Unique identifier of the key material.
    • keyMaterialDescription

      public final String keyMaterialDescription()

      User-specified description of the key material. This field is only present for symmetric encryption KMS keys with EXTERNAL origin.

      Returns:
      User-specified description of the key material. This field is only present for symmetric encryption KMS keys with EXTERNAL origin.
    • importState

      public final ImportState importState()

      Indicates if the key material is currently imported into KMS. It has two possible values: IMPORTED or PENDING_IMPORT. This field is only present for symmetric encryption KMS keys with EXTERNAL origin.

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

      Returns:
      Indicates if the key material is currently imported into KMS. It has two possible values: IMPORTED or PENDING_IMPORT. This field is only present for symmetric encryption KMS keys with EXTERNAL origin.
      See Also:
    • importStateAsString

      public final String importStateAsString()

      Indicates if the key material is currently imported into KMS. It has two possible values: IMPORTED or PENDING_IMPORT. This field is only present for symmetric encryption KMS keys with EXTERNAL origin.

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

      Returns:
      Indicates if the key material is currently imported into KMS. It has two possible values: IMPORTED or PENDING_IMPORT. This field is only present for symmetric encryption KMS keys with EXTERNAL origin.
      See Also:
    • keyMaterialState

      public final KeyMaterialState keyMaterialState()

      There are four possible values for this field: CURRENT, NON_CURRENT, PENDING_MULTI_REGION_IMPORT_AND_ROTATION and PENDING_ROTATION. KMS uses CURRENT key material for both encryption and decryption and NON_CURRENT key material only for decryption. PENDING_ROTATION identifies key material that has been imported for on-demand key rotation but the rotation hasn't completed. The key material state PENDING_MULTI_REGION_IMPORT_AND_ROTATION is unique to multi-region, symmetric encryption keys with imported key material. It indicates key material that has been imported into the primary Region key but not all of the replica Region keys. When this key material is imported in to all of the replica Region keys, the key material state will change to PENDING_ROTATION. Key material in PENDING_MULTI_REGION_IMPORT_AND_ROTATION or PENDING_ROTATION state is not permanently associated with the KMS key. You can delete this key material and import different key material in its place. The PENDING_MULTI_REGION_IMPORT_AND_ROTATION and PENDING_ROTATION values are only used in symmetric encryption keys with imported key material. The other values, CURRENT and NON_CURRENT, are used for all KMS keys that support automatic or on-demand key rotation.

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

      Returns:
      There are four possible values for this field: CURRENT, NON_CURRENT, PENDING_MULTI_REGION_IMPORT_AND_ROTATION and PENDING_ROTATION. KMS uses CURRENT key material for both encryption and decryption and NON_CURRENT key material only for decryption. PENDING_ROTATION identifies key material that has been imported for on-demand key rotation but the rotation hasn't completed. The key material state PENDING_MULTI_REGION_IMPORT_AND_ROTATION is unique to multi-region, symmetric encryption keys with imported key material. It indicates key material that has been imported into the primary Region key but not all of the replica Region keys. When this key material is imported in to all of the replica Region keys, the key material state will change to PENDING_ROTATION. Key material in PENDING_MULTI_REGION_IMPORT_AND_ROTATION or PENDING_ROTATION state is not permanently associated with the KMS key. You can delete this key material and import different key material in its place. The PENDING_MULTI_REGION_IMPORT_AND_ROTATION and PENDING_ROTATION values are only used in symmetric encryption keys with imported key material. The other values, CURRENT and NON_CURRENT, are used for all KMS keys that support automatic or on-demand key rotation.
      See Also:
    • keyMaterialStateAsString

      public final String keyMaterialStateAsString()

      There are four possible values for this field: CURRENT, NON_CURRENT, PENDING_MULTI_REGION_IMPORT_AND_ROTATION and PENDING_ROTATION. KMS uses CURRENT key material for both encryption and decryption and NON_CURRENT key material only for decryption. PENDING_ROTATION identifies key material that has been imported for on-demand key rotation but the rotation hasn't completed. The key material state PENDING_MULTI_REGION_IMPORT_AND_ROTATION is unique to multi-region, symmetric encryption keys with imported key material. It indicates key material that has been imported into the primary Region key but not all of the replica Region keys. When this key material is imported in to all of the replica Region keys, the key material state will change to PENDING_ROTATION. Key material in PENDING_MULTI_REGION_IMPORT_AND_ROTATION or PENDING_ROTATION state is not permanently associated with the KMS key. You can delete this key material and import different key material in its place. The PENDING_MULTI_REGION_IMPORT_AND_ROTATION and PENDING_ROTATION values are only used in symmetric encryption keys with imported key material. The other values, CURRENT and NON_CURRENT, are used for all KMS keys that support automatic or on-demand key rotation.

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

      Returns:
      There are four possible values for this field: CURRENT, NON_CURRENT, PENDING_MULTI_REGION_IMPORT_AND_ROTATION and PENDING_ROTATION. KMS uses CURRENT key material for both encryption and decryption and NON_CURRENT key material only for decryption. PENDING_ROTATION identifies key material that has been imported for on-demand key rotation but the rotation hasn't completed. The key material state PENDING_MULTI_REGION_IMPORT_AND_ROTATION is unique to multi-region, symmetric encryption keys with imported key material. It indicates key material that has been imported into the primary Region key but not all of the replica Region keys. When this key material is imported in to all of the replica Region keys, the key material state will change to PENDING_ROTATION. Key material in PENDING_MULTI_REGION_IMPORT_AND_ROTATION or PENDING_ROTATION state is not permanently associated with the KMS key. You can delete this key material and import different key material in its place. The PENDING_MULTI_REGION_IMPORT_AND_ROTATION and PENDING_ROTATION values are only used in symmetric encryption keys with imported key material. The other values, CURRENT and NON_CURRENT, are used for all KMS keys that support automatic or on-demand key rotation.
      See Also:
    • expirationModel

      public final ExpirationModelType expirationModel()

      Indicates if the key material is configured to automatically expire. There are two possible values for this field: KEY_MATERIAL_EXPIRES and KEY_MATERIAL_DOES_NOT_EXPIRE. For any key material that expires, the expiration date and time is indicated in ValidTo. This field is only present for symmetric encryption KMS keys with EXTERNAL origin.

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

      Returns:
      Indicates if the key material is configured to automatically expire. There are two possible values for this field: KEY_MATERIAL_EXPIRES and KEY_MATERIAL_DOES_NOT_EXPIRE. For any key material that expires, the expiration date and time is indicated in ValidTo. This field is only present for symmetric encryption KMS keys with EXTERNAL origin.
      See Also:
    • expirationModelAsString

      public final String expirationModelAsString()

      Indicates if the key material is configured to automatically expire. There are two possible values for this field: KEY_MATERIAL_EXPIRES and KEY_MATERIAL_DOES_NOT_EXPIRE. For any key material that expires, the expiration date and time is indicated in ValidTo. This field is only present for symmetric encryption KMS keys with EXTERNAL origin.

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

      Returns:
      Indicates if the key material is configured to automatically expire. There are two possible values for this field: KEY_MATERIAL_EXPIRES and KEY_MATERIAL_DOES_NOT_EXPIRE. For any key material that expires, the expiration date and time is indicated in ValidTo. This field is only present for symmetric encryption KMS keys with EXTERNAL origin.
      See Also:
    • validTo

      public final Instant validTo()

      Date and time at which the key material expires. This field is only present for symmetric encryption KMS keys with EXTERNAL origin in rotation list entries with an ExpirationModel value of KEY_MATERIAL_EXPIRES.

      Returns:
      Date and time at which the key material expires. This field is only present for symmetric encryption KMS keys with EXTERNAL origin in rotation list entries with an ExpirationModel value of KEY_MATERIAL_EXPIRES.
    • rotationDate

      public final Instant rotationDate()

      Date and time that the key material rotation completed. Formatted as Unix time. This field is not present for the first key material or an imported key material in PENDING_ROTATION state.

      Returns:
      Date and time that the key material rotation completed. Formatted as Unix time. This field is not present for the first key material or an imported key material in PENDING_ROTATION state.
    • rotationType

      public final RotationType rotationType()

      Identifies whether the key material rotation was a scheduled automatic rotation or an on-demand rotation. This field is not present for the first key material or an imported key material in PENDING_ROTATION state.

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

      Returns:
      Identifies whether the key material rotation was a scheduled automatic rotation or an on-demand rotation. This field is not present for the first key material or an imported key material in PENDING_ROTATION state.
      See Also:
    • rotationTypeAsString

      public final String rotationTypeAsString()

      Identifies whether the key material rotation was a scheduled automatic rotation or an on-demand rotation. This field is not present for the first key material or an imported key material in PENDING_ROTATION state.

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

      Returns:
      Identifies whether the key material rotation was a scheduled automatic rotation or an on-demand rotation. This field is not present for the first key material or an imported key material in PENDING_ROTATION state.
      See Also:
    • toBuilder

      public RotationsListEntry.Builder toBuilder()
      Specified by:
      toBuilder in interface ToCopyableBuilder<RotationsListEntry.Builder,RotationsListEntry>
    • builder

      public static RotationsListEntry.Builder builder()
    • serializableBuilderClass

      public static Class<? extends RotationsListEntry.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)
      Specified by:
      equalsBySdkFields in interface SdkPojo
    • 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
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo