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

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

Represents a studio resource.

A studio is the core resource used with Nimble Studio. You must create a studio first, before any other resource type can be created. All other resources you create and manage in Nimble Studio are contained within a studio.

When creating a studio, you must provides two IAM roles for use with the Nimble Studio portal. These roles are assumed by your users when they log in to the Nimble Studio portal via IAM Identity Center and your identity source.

The user role must have the AmazonNimbleStudio-StudioUser managed policy attached for the portal to function properly.

The admin role must have the AmazonNimbleStudio-StudioAdmin managed policy attached for the portal to function properly.

Your studio roles must trust the identity.nimble.amazonaws.com service principal to function properly.

See Also:
  • Method Details

    • adminRoleArn

      public final String adminRoleArn()

      The IAM role that studio admins assume when logging in to the Nimble Studio portal.

      Returns:
      The IAM role that studio admins assume when logging in to the Nimble Studio portal.
    • arn

      public final String arn()

      The Amazon Resource Name (ARN) that is assigned to a studio resource and uniquely identifies it. ARNs are unique across all Regions.

      Returns:
      The Amazon Resource Name (ARN) that is assigned to a studio resource and uniquely identifies it. ARNs are unique across all Regions.
    • createdAt

      public final Instant createdAt()

      The ISO timestamp in seconds for when the resource was created.

      Returns:
      The ISO timestamp in seconds for when the resource was created.
    • displayName

      public final String displayName()

      A friendly name for the studio.

      Returns:
      A friendly name for the studio.
    • homeRegion

      public final String homeRegion()

      The Amazon Web Services Region where the studio resource is located.

      Returns:
      The Amazon Web Services Region where the studio resource is located.
    • ssoClientId

      public final String ssoClientId()

      The IAM Identity Center application client ID used to integrate with IAM Identity Center. This ID allows IAM Identity Center users to log in to Nimble Studio portal.

      Returns:
      The IAM Identity Center application client ID used to integrate with IAM Identity Center. This ID allows IAM Identity Center users to log in to Nimble Studio portal.
    • state

      public final StudioState state()

      The current state of the studio resource.

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

      Returns:
      The current state of the studio resource.
      See Also:
    • stateAsString

      public final String stateAsString()

      The current state of the studio resource.

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

      Returns:
      The current state of the studio resource.
      See Also:
    • statusCode

      public final StudioStatusCode statusCode()

      Status codes that provide additional detail on the studio state.

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

      Returns:
      Status codes that provide additional detail on the studio state.
      See Also:
    • statusCodeAsString

      public final String statusCodeAsString()

      Status codes that provide additional detail on the studio state.

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

      Returns:
      Status codes that provide additional detail on the studio state.
      See Also:
    • statusMessage

      public final String statusMessage()

      Additional detail on the studio state.

      Returns:
      Additional detail on the studio state.
    • studioEncryptionConfiguration

      public final StudioEncryptionConfiguration studioEncryptionConfiguration()

      Configuration of the encryption method that is used for the studio.

      Returns:
      Configuration of the encryption method that is used for the studio.
    • studioId

      public final String studioId()

      The unique identifier for a studio resource. In Nimble Studio, all other resources are contained in a studio resource.

      Returns:
      The unique identifier for a studio resource. In Nimble Studio, all other resources are contained in a studio resource.
    • studioName

      public final String studioName()

      The name of the studio, as included in the URL when accessing it in the Nimble Studio portal.

      Returns:
      The name of the studio, as included in the URL when accessing it in the Nimble Studio portal.
    • studioUrl

      public final String studioUrl()

      The address of the web page for the studio.

      Returns:
      The address of the web page for the studio.
    • hasTags

      public final boolean hasTags()
      For responses, this returns true if the service returned a value for the Tags 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.
    • tags

      public final Map<String,String> tags()

      A collection of labels, in the form of key-value pairs, that apply to this resource.

      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 hasTags() method.

      Returns:
      A collection of labels, in the form of key-value pairs, that apply to this resource.
    • updatedAt

      public final Instant updatedAt()

      The ISO timestamp in seconds for when the resource was updated.

      Returns:
      The ISO timestamp in seconds for when the resource was updated.
    • userRoleArn

      public final String userRoleArn()

      The IAM role that studio users assume when logging in to the Nimble Studio portal.

      Returns:
      The IAM role that studio users assume when logging in to the Nimble Studio portal.
    • toBuilder

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

      public static Studio.Builder builder()
    • serializableBuilderClass

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