Class CfnImageBuilder

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

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:29:55.712Z") @Stability(Stable) public class CfnImageBuilder extends CfnResource implements IInspectable
A CloudFormation AWS::AppStream::ImageBuilder.

The AWS::AppStream::ImageBuilder resource creates an image builder for Amazon AppStream 2.0. An image builder is a virtual machine that is used to create an image.

The initial state of the image builder is PENDING . When it is ready, the state is RUNNING .

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.appstream.*;
 CfnImageBuilder cfnImageBuilder = CfnImageBuilder.Builder.create(this, "MyCfnImageBuilder")
         .instanceType("instanceType")
         .name("name")
         // the properties below are optional
         .accessEndpoints(List.of(AccessEndpointProperty.builder()
                 .endpointType("endpointType")
                 .vpceId("vpceId")
                 .build()))
         .appstreamAgentVersion("appstreamAgentVersion")
         .description("description")
         .displayName("displayName")
         .domainJoinInfo(DomainJoinInfoProperty.builder()
                 .directoryName("directoryName")
                 .organizationalUnitDistinguishedName("organizationalUnitDistinguishedName")
                 .build())
         .enableDefaultInternetAccess(false)
         .iamRoleArn("iamRoleArn")
         .imageArn("imageArn")
         .imageName("imageName")
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .vpcConfig(VpcConfigProperty.builder()
                 .securityGroupIds(List.of("securityGroupIds"))
                 .subnetIds(List.of("subnetIds"))
                 .build())
         .build();
 
  • 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

    • CfnImageBuilder

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

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

      @Stability(Stable) public CfnImageBuilder(@NotNull Construct scope, @NotNull String id, @NotNull CfnImageBuilderProps props)
      Create a new AWS::AppStream::ImageBuilder.

      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      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.
    • getAttrStreamingUrl

      @Stability(Stable) @NotNull public String getAttrStreamingUrl()
      The URL to start an image builder streaming session, returned as a string.
    • getCfnProperties

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

      @Stability(Stable) @NotNull public TagManager getTags()
      An array of key-value pairs.
    • getInstanceType

      @Stability(Stable) @NotNull public String getInstanceType()
      The instance type to use when launching the image builder. The following instance types are available:.

      • stream.standard.small
      • stream.standard.medium
      • stream.standard.large
      • stream.compute.large
      • stream.compute.xlarge
      • stream.compute.2xlarge
      • stream.compute.4xlarge
      • stream.compute.8xlarge
      • stream.memory.large
      • stream.memory.xlarge
      • stream.memory.2xlarge
      • stream.memory.4xlarge
      • stream.memory.8xlarge
      • stream.memory.z1d.large
      • stream.memory.z1d.xlarge
      • stream.memory.z1d.2xlarge
      • stream.memory.z1d.3xlarge
      • stream.memory.z1d.6xlarge
      • stream.memory.z1d.12xlarge
      • stream.graphics-design.large
      • stream.graphics-design.xlarge
      • stream.graphics-design.2xlarge
      • stream.graphics-design.4xlarge
      • stream.graphics-desktop.2xlarge
      • stream.graphics.g4dn.xlarge
      • stream.graphics.g4dn.2xlarge
      • stream.graphics.g4dn.4xlarge
      • stream.graphics.g4dn.8xlarge
      • stream.graphics.g4dn.12xlarge
      • stream.graphics.g4dn.16xlarge
      • stream.graphics-pro.4xlarge
      • stream.graphics-pro.8xlarge
      • stream.graphics-pro.16xlarge
    • setInstanceType

      @Stability(Stable) public void setInstanceType(@NotNull String value)
      The instance type to use when launching the image builder. The following instance types are available:.

      • stream.standard.small
      • stream.standard.medium
      • stream.standard.large
      • stream.compute.large
      • stream.compute.xlarge
      • stream.compute.2xlarge
      • stream.compute.4xlarge
      • stream.compute.8xlarge
      • stream.memory.large
      • stream.memory.xlarge
      • stream.memory.2xlarge
      • stream.memory.4xlarge
      • stream.memory.8xlarge
      • stream.memory.z1d.large
      • stream.memory.z1d.xlarge
      • stream.memory.z1d.2xlarge
      • stream.memory.z1d.3xlarge
      • stream.memory.z1d.6xlarge
      • stream.memory.z1d.12xlarge
      • stream.graphics-design.large
      • stream.graphics-design.xlarge
      • stream.graphics-design.2xlarge
      • stream.graphics-design.4xlarge
      • stream.graphics-desktop.2xlarge
      • stream.graphics.g4dn.xlarge
      • stream.graphics.g4dn.2xlarge
      • stream.graphics.g4dn.4xlarge
      • stream.graphics.g4dn.8xlarge
      • stream.graphics.g4dn.12xlarge
      • stream.graphics.g4dn.16xlarge
      • stream.graphics-pro.4xlarge
      • stream.graphics-pro.8xlarge
      • stream.graphics-pro.16xlarge
    • getName

      @Stability(Stable) @NotNull public String getName()
      A unique name for the image builder.
    • setName

      @Stability(Stable) public void setName(@NotNull String value)
      A unique name for the image builder.
    • getAccessEndpoints

      @Stability(Stable) @Nullable public Object getAccessEndpoints()
      The list of virtual private cloud (VPC) interface endpoint objects.

      Administrators can connect to the image builder only through the specified endpoints.

    • setAccessEndpoints

      @Stability(Stable) public void setAccessEndpoints(@Nullable IResolvable value)
      The list of virtual private cloud (VPC) interface endpoint objects.

      Administrators can connect to the image builder only through the specified endpoints.

    • setAccessEndpoints

      @Stability(Stable) public void setAccessEndpoints(@Nullable List<Object> value)
      The list of virtual private cloud (VPC) interface endpoint objects.

      Administrators can connect to the image builder only through the specified endpoints.

    • getAppstreamAgentVersion

      @Stability(Stable) @Nullable public String getAppstreamAgentVersion()
      The version of the AppStream 2.0 agent to use for this image builder. To use the latest version of the AppStream 2.0 agent, specify [LATEST].
    • setAppstreamAgentVersion

      @Stability(Stable) public void setAppstreamAgentVersion(@Nullable String value)
      The version of the AppStream 2.0 agent to use for this image builder. To use the latest version of the AppStream 2.0 agent, specify [LATEST].
    • getDescription

      @Stability(Stable) @Nullable public String getDescription()
      The description to display.
    • setDescription

      @Stability(Stable) public void setDescription(@Nullable String value)
      The description to display.
    • getDisplayName

      @Stability(Stable) @Nullable public String getDisplayName()
      The image builder name to display.
    • setDisplayName

      @Stability(Stable) public void setDisplayName(@Nullable String value)
      The image builder name to display.
    • getDomainJoinInfo

      @Stability(Stable) @Nullable public Object getDomainJoinInfo()
      The name of the directory and organizational unit (OU) to use to join the image builder to a Microsoft Active Directory domain.
    • setDomainJoinInfo

      @Stability(Stable) public void setDomainJoinInfo(@Nullable IResolvable value)
      The name of the directory and organizational unit (OU) to use to join the image builder to a Microsoft Active Directory domain.
    • setDomainJoinInfo

      @Stability(Stable) public void setDomainJoinInfo(@Nullable CfnImageBuilder.DomainJoinInfoProperty value)
      The name of the directory and organizational unit (OU) to use to join the image builder to a Microsoft Active Directory domain.
    • getEnableDefaultInternetAccess

      @Stability(Stable) @Nullable public Object getEnableDefaultInternetAccess()
      Enables or disables default internet access for the image builder.
    • setEnableDefaultInternetAccess

      @Stability(Stable) public void setEnableDefaultInternetAccess(@Nullable Boolean value)
      Enables or disables default internet access for the image builder.
    • setEnableDefaultInternetAccess

      @Stability(Stable) public void setEnableDefaultInternetAccess(@Nullable IResolvable value)
      Enables or disables default internet access for the image builder.
    • getIamRoleArn

      @Stability(Stable) @Nullable public String getIamRoleArn()
      The ARN of the IAM role that is applied to the image builder.

      To assume a role, the image builder calls the AWS Security Token Service AssumeRole API operation and passes the ARN of the role to use. The operation creates a new session with temporary credentials. AppStream 2.0 retrieves the temporary credentials and creates the appstream_machine_role credential profile on the instance.

      For more information, see Using an IAM Role to Grant Permissions to Applications and Scripts Running on AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 Administration Guide .

    • setIamRoleArn

      @Stability(Stable) public void setIamRoleArn(@Nullable String value)
      The ARN of the IAM role that is applied to the image builder.

      To assume a role, the image builder calls the AWS Security Token Service AssumeRole API operation and passes the ARN of the role to use. The operation creates a new session with temporary credentials. AppStream 2.0 retrieves the temporary credentials and creates the appstream_machine_role credential profile on the instance.

      For more information, see Using an IAM Role to Grant Permissions to Applications and Scripts Running on AppStream 2.0 Streaming Instances in the Amazon AppStream 2.0 Administration Guide .

    • getImageArn

      @Stability(Stable) @Nullable public String getImageArn()
      The ARN of the public, private, or shared image to use.
    • setImageArn

      @Stability(Stable) public void setImageArn(@Nullable String value)
      The ARN of the public, private, or shared image to use.
    • getImageName

      @Stability(Stable) @Nullable public String getImageName()
      The name of the image used to create the image builder.
    • setImageName

      @Stability(Stable) public void setImageName(@Nullable String value)
      The name of the image used to create the image builder.
    • getVpcConfig

      @Stability(Stable) @Nullable public Object getVpcConfig()
      The VPC configuration for the image builder.

      You can specify only one subnet.

    • setVpcConfig

      @Stability(Stable) public void setVpcConfig(@Nullable IResolvable value)
      The VPC configuration for the image builder.

      You can specify only one subnet.

    • setVpcConfig

      @Stability(Stable) public void setVpcConfig(@Nullable CfnImageBuilder.VpcConfigProperty value)
      The VPC configuration for the image builder.

      You can specify only one subnet.