Class RoleTemplateVersion

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

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

Contains information about a version of an IAM role template, including the configuration that is used to create roles with AcquireRole. This structure is returned as a response element by the GetRoleTemplateVersion operation.

See Also:
  • Method Details

    • templateArn

      public final String templateArn()

      The Amazon Resource Name (ARN) that identifies the role template.

      For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

      Returns:
      The Amazon Resource Name (ARN) that identifies the role template.

      For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

    • templateName

      public final String templateName()

      The friendly name that identifies the role template.

      Returns:
      The friendly name that identifies the role template.
    • templateVersionId

      public final String templateVersionId()

      The identifier of the role template version.

      Returns:
      The identifier of the role template version.
    • description

      public final String description()

      The description of the role template.

      Returns:
      The description of the role template.
    • majorVersion

      public final Integer majorVersion()

      The major version number of the role template.

      Returns:
      The major version number of the role template.
    • defaultMinorVersion

      public final Integer defaultMinorVersion()

      The minor version that the service uses by default when you create a role from this template without specifying a minor version.

      Returns:
      The minor version that the service uses by default when you create a role from this template without specifying a minor version.
    • managedByType

      public final ManagedByTypeType managedByType()

      Indicates that the role template is managed by an Amazon Web Services service.

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

      Returns:
      Indicates that the role template is managed by an Amazon Web Services service.
      See Also:
    • managedByTypeAsString

      public final String managedByTypeAsString()

      Indicates that the role template is managed by an Amazon Web Services service.

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

      Returns:
      Indicates that the role template is managed by an Amazon Web Services service.
      See Also:
    • managedByValue

      public final String managedByValue()

      The identifier of the Amazon Web Services service that manages the role template.

      Returns:
      The identifier of the Amazon Web Services service that manages the role template.
    • enabled

      public final Boolean enabled()

      Specifies whether the role template is enabled. When a template is disabled, you cannot create roles from it.

      Returns:
      Specifies whether the role template is enabled. When a template is disabled, you cannot create roles from it.
    • minorVersion

      public final Integer minorVersion()

      The minor version number of this role template version.

      Returns:
      The minor version number of this role template version.
    • roleNamePattern

      public final String roleNamePattern()

      The pattern that is used to generate the name of a role that is created from this template. The pattern can include @{parameter} placeholders that are replaced with the values you supply in the ReplacementValues parameter of AcquireRole.

      Returns:
      The pattern that is used to generate the name of a role that is created from this template. The pattern can include @{parameter} placeholders that are replaced with the values you supply in the ReplacementValues parameter of AcquireRole.
    • rolePathPattern

      public final String rolePathPattern()

      The pattern that is used to generate the path of a role that is created from this template.

      Returns:
      The pattern that is used to generate the path of a role that is created from this template.
    • roleDescriptionPattern

      public final String roleDescriptionPattern()

      The pattern that is used to generate the description of a role that is created from this template.

      Returns:
      The pattern that is used to generate the description of a role that is created from this template.
    • assumeRolePolicyDocumentTemplate

      public final String assumeRolePolicyDocumentTemplate()

      The trust policy template that grants an entity permission to assume roles that you create from this template.

      Returns:
      The trust policy template that grants an entity permission to assume roles that you create from this template.
    • hasInlinePolicyTemplates

      public final boolean hasInlinePolicyTemplates()
      For responses, this returns true if the service returned a value for the InlinePolicyTemplates property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • inlinePolicyTemplates

      public final List<InlinePolicy> inlinePolicyTemplates()

      A list of inline policy templates that the service embeds in roles that you create from this template.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasInlinePolicyTemplates() method.

      Returns:
      A list of inline policy templates that the service embeds in roles that you create from this template.
    • hasManagedPolicyArns

      public final boolean hasManagedPolicyArns()
      For responses, this returns true if the service returned a value for the ManagedPolicyArns property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • managedPolicyArns

      public final List<String> managedPolicyArns()

      A list of the ARNs of the managed policies that the service attaches to roles that you create from this template.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasManagedPolicyArns() method.

      Returns:
      A list of the ARNs of the managed policies that the service attaches to roles that you create from this template.
    • permissionBoundaryArn

      public final String permissionBoundaryArn()

      The ARN of the policy that sets the permissions boundary for roles that you create from this template.

      For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

      Returns:
      The ARN of the policy that sets the permissions boundary for roles that you create from this template.

      For more information about ARNs, see Amazon Resource Names (ARNs) in the Amazon Web Services General Reference.

    • hasParametersDefinition

      public final boolean hasParametersDefinition()
      For responses, this returns true if the service returned a value for the ParametersDefinition property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • parametersDefinition

      public final List<ParameterDefinition> parametersDefinition()

      A list of the parameters that are defined for this role template version. You supply values for these parameters when you create a role with AcquireRole.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasParametersDefinition() method.

      Returns:
      A list of the parameters that are defined for this role template version. You supply values for these parameters when you create a role with AcquireRole.
    • hasRoleTagsTemplate

      public final boolean hasRoleTagsTemplate()
      For responses, this returns true if the service returned a value for the RoleTagsTemplate property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • roleTagsTemplate

      public final List<TagTemplate> roleTagsTemplate()

      A list of tag templates that are applied to roles that are created from this template.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasRoleTagsTemplate() method.

      Returns:
      A list of tag templates that are applied to roles that are created from this template.
    • maxSessionDuration

      public final Integer maxSessionDuration()

      The maximum session duration (in seconds) for roles that are created from this template.

      Returns:
      The maximum session duration (in seconds) for roles that are created from this template.
    • versionEnabled

      public final Boolean versionEnabled()

      Specifies whether this specific minor version of the role template is enabled.

      Returns:
      Specifies whether this specific minor version of the role template is enabled.
    • createTimestamp

      public final Instant createTimestamp()

      The date and time, in ISO 8601 date-time format, when the role template version was created.

      Returns:
      The date and time, in ISO 8601 date-time format, when the role template version was created.
    • updateTimestamp

      public final Instant updateTimestamp()

      The date and time, in ISO 8601 date-time format, when the role template version was last updated.

      Returns:
      The date and time, in ISO 8601 date-time format, when the role template version was last updated.
    • toBuilder

      public RoleTemplateVersion.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<RoleTemplateVersion.Builder,RoleTemplateVersion>
      Returns:
      a builder for type T
    • builder

      public static RoleTemplateVersion.Builder builder()
    • serializableBuilderClass

      public static Class<? extends RoleTemplateVersion.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.