Class StudioComponent

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

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

A studio component represents a network resource to be used by a studio's users and workflows. A typical studio contains studio components for each of the following: render farm, Active Directory, licensing, and file system.

Access to a studio component is managed by specifying security groups for the resource, as well as its endpoint.

A studio component also has a set of initialization scripts that are returned by GetLaunchProfileInitialization. These initialization scripts run on streaming sessions when they start. They provide users with flexibility in controlling how the studio resources are configured on a streaming session.

See Also:
  • Method Details

    • 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.
    • configuration

      public final StudioComponentConfiguration configuration()

      The configuration of the studio component, based on component type.

      Returns:
      The configuration of the studio component, based on component type.
    • 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.
    • createdBy

      public final String createdBy()

      The user ID of the user that created the studio component.

      Returns:
      The user ID of the user that created the studio component.
    • description

      public final String description()

      A human-readable description for the studio component resource.

      Returns:
      A human-readable description for the studio component resource.
    • hasEc2SecurityGroupIds

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

      public final List<String> ec2SecurityGroupIds()

      The EC2 security groups that control access to the studio component.

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

      Returns:
      The EC2 security groups that control access to the studio component.
    • hasInitializationScripts

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

      public final List<StudioComponentInitializationScript> initializationScripts()

      Initialization scripts for studio components.

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

      Returns:
      Initialization scripts for studio components.
    • name

      public final String name()

      A friendly name for the studio component resource.

      Returns:
      A friendly name for the studio component resource.
    • runtimeRoleArn

      public final String runtimeRoleArn()

      An IAM role attached to a Studio Component that gives the studio component access to Amazon Web Services resources at anytime while the instance is running.

      Returns:
      An IAM role attached to a Studio Component that gives the studio component access to Amazon Web Services resources at anytime while the instance is running.
    • hasScriptParameters

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

      public final List<ScriptParameterKeyValue> scriptParameters()

      Parameters for the studio component scripts.

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

      Returns:
      Parameters for the studio component scripts.
    • secureInitializationRoleArn

      public final String secureInitializationRoleArn()

      An IAM role attached to Studio Component when the system initialization script runs which give the studio component access to Amazon Web Services resources when the system initialization script runs.

      Returns:
      An IAM role attached to Studio Component when the system initialization script runs which give the studio component access to Amazon Web Services resources when the system initialization script runs.
    • state

      public final StudioComponentState state()

      The current state.

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

      Returns:
      The current state.
      See Also:
    • stateAsString

      public final String stateAsString()

      The current state.

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

      Returns:
      The current state.
      See Also:
    • statusCode

      public final StudioComponentStatusCode statusCode()

      The status code.

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

      Returns:
      The status code.
      See Also:
    • statusCodeAsString

      public final String statusCodeAsString()

      The status code.

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

      Returns:
      The status code.
      See Also:
    • statusMessage

      public final String statusMessage()

      The status message for the studio component.

      Returns:
      The status message for the studio component.
    • studioComponentId

      public final String studioComponentId()

      The unique identifier for a studio component resource.

      Returns:
      The unique identifier for a studio component resource.
    • subtype

      public final StudioComponentSubtype subtype()

      The specific subtype of a studio component.

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

      Returns:
      The specific subtype of a studio component.
      See Also:
    • subtypeAsString

      public final String subtypeAsString()

      The specific subtype of a studio component.

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

      Returns:
      The specific subtype of a studio component.
      See Also:
    • 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.
    • type

      public final StudioComponentType type()

      The type of the studio component.

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

      Returns:
      The type of the studio component.
      See Also:
    • typeAsString

      public final String typeAsString()

      The type of the studio component.

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

      Returns:
      The type of the studio component.
      See Also:
    • 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.
    • updatedBy

      public final String updatedBy()

      The user ID of the user that most recently updated the resource.

      Returns:
      The user ID of the user that most recently updated the resource.
    • toBuilder

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

      public static StudioComponent.Builder builder()
    • serializableBuilderClass

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