Class CfnStudioComponent

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IInspectable, ITaggable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.101.0 (build b95fe5d)", date="2024-07-22T22:42:54.725Z") @Stability(Stable) public class CfnStudioComponent extends CfnResource implements IInspectable, ITaggable
The AWS::NimbleStudio::StudioComponent resource represents a network resource that is used by a studio's users and workflows.

A typical studio contains studio components for the following: a render farm, an Active Directory, a licensing service, and a shared 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, which are returned by GetLaunchProfileInitialization . These initialization scripts run on streaming sessions when they start. They provide users with flexibility in controlling how studio resources are configured on a streaming session.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.nimblestudio.*;
 CfnStudioComponent cfnStudioComponent = CfnStudioComponent.Builder.create(this, "MyCfnStudioComponent")
         .name("name")
         .studioId("studioId")
         .type("type")
         // the properties below are optional
         .configuration(StudioComponentConfigurationProperty.builder()
                 .activeDirectoryConfiguration(ActiveDirectoryConfigurationProperty.builder()
                         .computerAttributes(List.of(ActiveDirectoryComputerAttributeProperty.builder()
                                 .name("name")
                                 .value("value")
                                 .build()))
                         .directoryId("directoryId")
                         .organizationalUnitDistinguishedName("organizationalUnitDistinguishedName")
                         .build())
                 .computeFarmConfiguration(ComputeFarmConfigurationProperty.builder()
                         .activeDirectoryUser("activeDirectoryUser")
                         .endpoint("endpoint")
                         .build())
                 .licenseServiceConfiguration(LicenseServiceConfigurationProperty.builder()
                         .endpoint("endpoint")
                         .build())
                 .sharedFileSystemConfiguration(SharedFileSystemConfigurationProperty.builder()
                         .endpoint("endpoint")
                         .fileSystemId("fileSystemId")
                         .linuxMountPoint("linuxMountPoint")
                         .shareName("shareName")
                         .windowsMountDrive("windowsMountDrive")
                         .build())
                 .build())
         .description("description")
         .ec2SecurityGroupIds(List.of("ec2SecurityGroupIds"))
         .initializationScripts(List.of(StudioComponentInitializationScriptProperty.builder()
                 .launchProfileProtocolVersion("launchProfileProtocolVersion")
                 .platform("platform")
                 .runContext("runContext")
                 .script("script")
                 .build()))
         .runtimeRoleArn("runtimeRoleArn")
         .scriptParameters(List.of(ScriptParameterKeyValueProperty.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .secureInitializationRoleArn("secureInitializationRoleArn")
         .subtype("subtype")
         .tags(Map.of(
                 "tagsKey", "tags"))
         .build();
 

See Also:
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnStudioComponent

      protected CfnStudioComponent(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnStudioComponent

      protected CfnStudioComponent(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnStudioComponent

      @Stability(Stable) public CfnStudioComponent(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnStudioComponentProps props)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties. This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector - tree inspector to collect and process attributes. This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrStudioComponentId

      @Stability(Stable) @NotNull public String getAttrStudioComponentId()
      The unique identifier for the studio component resource.
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      Tag Manager which manages the tags for this resource.
      Specified by:
      getTags in interface ITaggable
    • getName

      @Stability(Stable) @NotNull public String getName()
      A friendly name for the studio component resource.
    • setName

      @Stability(Stable) public void setName(@NotNull String value)
      A friendly name for the studio component resource.
    • getStudioId

      @Stability(Stable) @NotNull public String getStudioId()
      The unique identifier for a studio resource.
    • setStudioId

      @Stability(Stable) public void setStudioId(@NotNull String value)
      The unique identifier for a studio resource.
    • getType

      @Stability(Stable) @NotNull public String getType()
      The type of the studio component.
    • setType

      @Stability(Stable) public void setType(@NotNull String value)
      The type of the studio component.
    • getConfiguration

      @Stability(Stable) @Nullable public Object getConfiguration()
      The configuration of the studio component, based on component type.
    • setConfiguration

      @Stability(Stable) public void setConfiguration(@Nullable IResolvable value)
      The configuration of the studio component, based on component type.
    • setConfiguration

      @Stability(Stable) public void setConfiguration(@Nullable CfnStudioComponent.StudioComponentConfigurationProperty value)
      The configuration of the studio component, based on component type.
    • getDescription

      @Stability(Stable) @Nullable public String getDescription()
      A human-readable description for the studio component resource.
    • setDescription

      @Stability(Stable) public void setDescription(@Nullable String value)
      A human-readable description for the studio component resource.
    • getEc2SecurityGroupIds

      @Stability(Stable) @Nullable public List<String> getEc2SecurityGroupIds()
      The EC2 security groups that control access to the studio component.
    • setEc2SecurityGroupIds

      @Stability(Stable) public void setEc2SecurityGroupIds(@Nullable List<String> value)
      The EC2 security groups that control access to the studio component.
    • getInitializationScripts

      @Stability(Stable) @Nullable public Object getInitializationScripts()
      Initialization scripts for studio components.
    • setInitializationScripts

      @Stability(Stable) public void setInitializationScripts(@Nullable IResolvable value)
      Initialization scripts for studio components.
    • setInitializationScripts

      @Stability(Stable) public void setInitializationScripts(@Nullable List<Object> value)
      Initialization scripts for studio components.
    • getRuntimeRoleArn

      @Stability(Stable) @Nullable public String getRuntimeRoleArn()
      An IAM role attached to a Studio Component that gives the studio component access to AWS resources at anytime while the instance is running.
    • setRuntimeRoleArn

      @Stability(Stable) public void setRuntimeRoleArn(@Nullable String value)
      An IAM role attached to a Studio Component that gives the studio component access to AWS resources at anytime while the instance is running.
    • getScriptParameters

      @Stability(Stable) @Nullable public Object getScriptParameters()
      Parameters for the studio component scripts.
    • setScriptParameters

      @Stability(Stable) public void setScriptParameters(@Nullable IResolvable value)
      Parameters for the studio component scripts.
    • setScriptParameters

      @Stability(Stable) public void setScriptParameters(@Nullable List<Object> value)
      Parameters for the studio component scripts.
    • getSecureInitializationRoleArn

      @Stability(Stable) @Nullable public String getSecureInitializationRoleArn()
      An IAM role attached to Studio Component when the system initialization script runs which give the studio component access to AWS resources when the system initialization script runs.
    • setSecureInitializationRoleArn

      @Stability(Stable) public void setSecureInitializationRoleArn(@Nullable String value)
      An IAM role attached to Studio Component when the system initialization script runs which give the studio component access to AWS resources when the system initialization script runs.
    • getSubtype

      @Stability(Stable) @Nullable public String getSubtype()
      The specific subtype of a studio component.
    • setSubtype

      @Stability(Stable) public void setSubtype(@Nullable String value)
      The specific subtype of a studio component.
    • getTagsRaw

      @Stability(Stable) @Nullable public Map<String,String> getTagsRaw()
      An array of key-value pairs to apply to this resource.
    • setTagsRaw

      @Stability(Stable) public void setTagsRaw(@Nullable Map<String,String> value)
      An array of key-value pairs to apply to this resource.