All Downloads are FREE. Search and download functionalities are using the official Maven repository.

software.amazon.awscdk.services.appstream.CfnImageBuilder Maven / Gradle / Ivy

There is a newer version: 1.204.0
Show newest version
package software.amazon.awscdk.services.appstream;

/**
 * A CloudFormation `AWS::AppStream::ImageBuilder`.
 * 

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html */ @javax.annotation.Generated(value = "jsii-pacmak/0.21.1 (build 9ff44cb)", date = "2020-01-16T18:33:58.219Z") @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.appstream.$Module.class, fqn = "@aws-cdk/aws-appstream.CfnImageBuilder") public class CfnImageBuilder extends software.amazon.awscdk.core.CfnResource implements software.amazon.awscdk.core.IInspectable { protected CfnImageBuilder(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); } protected CfnImageBuilder(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) { super(initializationMode); } static { CFN_RESOURCE_TYPE_NAME = software.amazon.jsii.JsiiObject.jsiiStaticGet(software.amazon.awscdk.services.appstream.CfnImageBuilder.class, "CFN_RESOURCE_TYPE_NAME", java.lang.String.class); } /** * Create a new `AWS::AppStream::ImageBuilder`. *

* @param scope - scope in which this resource is defined. This parameter is required. * @param id - scoped id of the resource. This parameter is required. * @param props - resource properties. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public CfnImageBuilder(final software.amazon.awscdk.core.Construct scope, final java.lang.String id, final software.amazon.awscdk.services.appstream.CfnImageBuilderProps props) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), java.util.Objects.requireNonNull(props, "props is required") }); } /** * Examines the CloudFormation resource and discloses attributes. *

* EXPERIMENTAL *

* @param inspector - tree inspector to collect and process attributes. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) @Override public void inspect(final software.amazon.awscdk.core.TreeInspector inspector) { this.jsiiCall("inspect", Void.class, new Object[] { java.util.Objects.requireNonNull(inspector, "inspector is required") }); } /** * @param props This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) @Override protected java.util.Map renderProperties(final java.util.Map props) { return java.util.Collections.unmodifiableMap(this.jsiiCall("renderProperties", java.util.Map.class, new Object[] { java.util.Objects.requireNonNull(props, "props is required") })); } /** * The CloudFormation resource type name for this resource class. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public final static java.lang.String CFN_RESOURCE_TYPE_NAME; /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.String getAttrStreamingUrl() { return this.jsiiGet("attrStreamingUrl", java.lang.String.class); } /** */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) protected java.util.Map getCfnProperties() { return java.util.Collections.unmodifiableMap(this.jsiiGet("cfnProperties", java.util.Map.class)); } /** * `AWS::AppStream::ImageBuilder.Tags`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-tags */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public software.amazon.awscdk.core.TagManager getTags() { return this.jsiiGet("tags", software.amazon.awscdk.core.TagManager.class); } /** * `AWS::AppStream::ImageBuilder.InstanceType`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-instancetype */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.String getInstanceType() { return this.jsiiGet("instanceType", java.lang.String.class); } /** * `AWS::AppStream::ImageBuilder.InstanceType`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-instancetype */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setInstanceType(final java.lang.String value) { this.jsiiSet("instanceType", java.util.Objects.requireNonNull(value, "instanceType is required")); } /** * `AWS::AppStream::ImageBuilder.AccessEndpoints`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-accessendpoints */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.Object getAccessEndpoints() { return this.jsiiGet("accessEndpoints", java.lang.Object.class); } /** * `AWS::AppStream::ImageBuilder.AccessEndpoints`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-accessendpoints */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setAccessEndpoints(final software.amazon.awscdk.core.IResolvable value) { this.jsiiSet("accessEndpoints", value); } /** * `AWS::AppStream::ImageBuilder.AccessEndpoints`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-accessendpoints */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setAccessEndpoints(final java.util.List value) { this.jsiiSet("accessEndpoints", value); } /** * `AWS::AppStream::ImageBuilder.AppstreamAgentVersion`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-appstreamagentversion */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.String getAppstreamAgentVersion() { return this.jsiiGet("appstreamAgentVersion", java.lang.String.class); } /** * `AWS::AppStream::ImageBuilder.AppstreamAgentVersion`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-appstreamagentversion */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setAppstreamAgentVersion(final java.lang.String value) { this.jsiiSet("appstreamAgentVersion", value); } /** * `AWS::AppStream::ImageBuilder.Description`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-description */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.String getDescription() { return this.jsiiGet("description", java.lang.String.class); } /** * `AWS::AppStream::ImageBuilder.Description`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-description */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setDescription(final java.lang.String value) { this.jsiiSet("description", value); } /** * `AWS::AppStream::ImageBuilder.DisplayName`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-displayname */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.String getDisplayName() { return this.jsiiGet("displayName", java.lang.String.class); } /** * `AWS::AppStream::ImageBuilder.DisplayName`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-displayname */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setDisplayName(final java.lang.String value) { this.jsiiSet("displayName", value); } /** * `AWS::AppStream::ImageBuilder.DomainJoinInfo`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-domainjoininfo */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.Object getDomainJoinInfo() { return this.jsiiGet("domainJoinInfo", java.lang.Object.class); } /** * `AWS::AppStream::ImageBuilder.DomainJoinInfo`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-domainjoininfo */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setDomainJoinInfo(final software.amazon.awscdk.core.IResolvable value) { this.jsiiSet("domainJoinInfo", value); } /** * `AWS::AppStream::ImageBuilder.DomainJoinInfo`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-domainjoininfo */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setDomainJoinInfo(final software.amazon.awscdk.services.appstream.CfnImageBuilder.DomainJoinInfoProperty value) { this.jsiiSet("domainJoinInfo", value); } /** * `AWS::AppStream::ImageBuilder.EnableDefaultInternetAccess`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-enabledefaultinternetaccess */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.Object getEnableDefaultInternetAccess() { return this.jsiiGet("enableDefaultInternetAccess", java.lang.Object.class); } /** * `AWS::AppStream::ImageBuilder.EnableDefaultInternetAccess`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-enabledefaultinternetaccess */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setEnableDefaultInternetAccess(final java.lang.Boolean value) { this.jsiiSet("enableDefaultInternetAccess", value); } /** * `AWS::AppStream::ImageBuilder.EnableDefaultInternetAccess`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-enabledefaultinternetaccess */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setEnableDefaultInternetAccess(final software.amazon.awscdk.core.IResolvable value) { this.jsiiSet("enableDefaultInternetAccess", value); } /** * `AWS::AppStream::ImageBuilder.ImageArn`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-imagearn */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.String getImageArn() { return this.jsiiGet("imageArn", java.lang.String.class); } /** * `AWS::AppStream::ImageBuilder.ImageArn`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-imagearn */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setImageArn(final java.lang.String value) { this.jsiiSet("imageArn", value); } /** * `AWS::AppStream::ImageBuilder.ImageName`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-imagename */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.String getImageName() { return this.jsiiGet("imageName", java.lang.String.class); } /** * `AWS::AppStream::ImageBuilder.ImageName`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-imagename */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setImageName(final java.lang.String value) { this.jsiiSet("imageName", value); } /** * `AWS::AppStream::ImageBuilder.Name`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-name */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.String getName() { return this.jsiiGet("name", java.lang.String.class); } /** * `AWS::AppStream::ImageBuilder.Name`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-name */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setName(final java.lang.String value) { this.jsiiSet("name", value); } /** * `AWS::AppStream::ImageBuilder.VpcConfig`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-vpcconfig */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public java.lang.Object getVpcConfig() { return this.jsiiGet("vpcConfig", java.lang.Object.class); } /** * `AWS::AppStream::ImageBuilder.VpcConfig`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-vpcconfig */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setVpcConfig(final software.amazon.awscdk.core.IResolvable value) { this.jsiiSet("vpcConfig", value); } /** * `AWS::AppStream::ImageBuilder.VpcConfig`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-vpcconfig */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public void setVpcConfig(final software.amazon.awscdk.services.appstream.CfnImageBuilder.VpcConfigProperty value) { this.jsiiSet("vpcConfig", value); } /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-accessendpoint.html */ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.appstream.$Module.class, fqn = "@aws-cdk/aws-appstream.CfnImageBuilder.AccessEndpointProperty") @software.amazon.jsii.Jsii.Proxy(AccessEndpointProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public static interface AccessEndpointProperty extends software.amazon.jsii.JsiiSerializable { /** * `CfnImageBuilder.AccessEndpointProperty.EndpointType`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-accessendpoint.html#cfn-appstream-imagebuilder-accessendpoint-endpointtype */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) java.lang.String getEndpointType(); /** * `CfnImageBuilder.AccessEndpointProperty.VpceId`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-accessendpoint.html#cfn-appstream-imagebuilder-accessendpoint-vpceid */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) java.lang.String getVpceId(); /** * @return a {@link Builder} of {@link AccessEndpointProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) static Builder builder() { return new Builder(); } /** * A builder for {@link AccessEndpointProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public static final class Builder { private java.lang.String endpointType; private java.lang.String vpceId; /** * Sets the value of {@link AccessEndpointProperty#getEndpointType} * @param endpointType `CfnImageBuilder.AccessEndpointProperty.EndpointType`. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder endpointType(java.lang.String endpointType) { this.endpointType = endpointType; return this; } /** * Sets the value of {@link AccessEndpointProperty#getVpceId} * @param vpceId `CfnImageBuilder.AccessEndpointProperty.VpceId`. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder vpceId(java.lang.String vpceId) { this.vpceId = vpceId; return this; } /** * Builds the configured instance. * @return a new instance of {@link AccessEndpointProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public AccessEndpointProperty build() { return new Jsii$Proxy(endpointType, vpceId); } } /** * An implementation for {@link AccessEndpointProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements AccessEndpointProperty { private final java.lang.String endpointType; private final java.lang.String vpceId; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.endpointType = this.jsiiGet("endpointType", java.lang.String.class); this.vpceId = this.jsiiGet("vpceId", java.lang.String.class); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ private Jsii$Proxy(final java.lang.String endpointType, final java.lang.String vpceId) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.endpointType = java.util.Objects.requireNonNull(endpointType, "endpointType is required"); this.vpceId = java.util.Objects.requireNonNull(vpceId, "vpceId is required"); } @Override public java.lang.String getEndpointType() { return this.endpointType; } @Override public java.lang.String getVpceId() { return this.vpceId; } @Override public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); data.set("endpointType", om.valueToTree(this.getEndpointType())); data.set("vpceId", om.valueToTree(this.getVpceId())); final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-appstream.CfnImageBuilder.AccessEndpointProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; AccessEndpointProperty.Jsii$Proxy that = (AccessEndpointProperty.Jsii$Proxy) o; if (!endpointType.equals(that.endpointType)) return false; return this.vpceId.equals(that.vpceId); } @Override public int hashCode() { int result = this.endpointType.hashCode(); result = 31 * result + (this.vpceId.hashCode()); return result; } } } /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html */ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.appstream.$Module.class, fqn = "@aws-cdk/aws-appstream.CfnImageBuilder.DomainJoinInfoProperty") @software.amazon.jsii.Jsii.Proxy(DomainJoinInfoProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public static interface DomainJoinInfoProperty extends software.amazon.jsii.JsiiSerializable { /** * `CfnImageBuilder.DomainJoinInfoProperty.DirectoryName`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html#cfn-appstream-imagebuilder-domainjoininfo-directoryname */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) default java.lang.String getDirectoryName() { return null; } /** * `CfnImageBuilder.DomainJoinInfoProperty.OrganizationalUnitDistinguishedName`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-domainjoininfo.html#cfn-appstream-imagebuilder-domainjoininfo-organizationalunitdistinguishedname */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) default java.lang.String getOrganizationalUnitDistinguishedName() { return null; } /** * @return a {@link Builder} of {@link DomainJoinInfoProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) static Builder builder() { return new Builder(); } /** * A builder for {@link DomainJoinInfoProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public static final class Builder { private java.lang.String directoryName; private java.lang.String organizationalUnitDistinguishedName; /** * Sets the value of {@link DomainJoinInfoProperty#getDirectoryName} * @param directoryName `CfnImageBuilder.DomainJoinInfoProperty.DirectoryName`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder directoryName(java.lang.String directoryName) { this.directoryName = directoryName; return this; } /** * Sets the value of {@link DomainJoinInfoProperty#getOrganizationalUnitDistinguishedName} * @param organizationalUnitDistinguishedName `CfnImageBuilder.DomainJoinInfoProperty.OrganizationalUnitDistinguishedName`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder organizationalUnitDistinguishedName(java.lang.String organizationalUnitDistinguishedName) { this.organizationalUnitDistinguishedName = organizationalUnitDistinguishedName; return this; } /** * Builds the configured instance. * @return a new instance of {@link DomainJoinInfoProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public DomainJoinInfoProperty build() { return new Jsii$Proxy(directoryName, organizationalUnitDistinguishedName); } } /** * An implementation for {@link DomainJoinInfoProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements DomainJoinInfoProperty { private final java.lang.String directoryName; private final java.lang.String organizationalUnitDistinguishedName; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.directoryName = this.jsiiGet("directoryName", java.lang.String.class); this.organizationalUnitDistinguishedName = this.jsiiGet("organizationalUnitDistinguishedName", java.lang.String.class); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ private Jsii$Proxy(final java.lang.String directoryName, final java.lang.String organizationalUnitDistinguishedName) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.directoryName = directoryName; this.organizationalUnitDistinguishedName = organizationalUnitDistinguishedName; } @Override public java.lang.String getDirectoryName() { return this.directoryName; } @Override public java.lang.String getOrganizationalUnitDistinguishedName() { return this.organizationalUnitDistinguishedName; } @Override public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getDirectoryName() != null) { data.set("directoryName", om.valueToTree(this.getDirectoryName())); } if (this.getOrganizationalUnitDistinguishedName() != null) { data.set("organizationalUnitDistinguishedName", om.valueToTree(this.getOrganizationalUnitDistinguishedName())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-appstream.CfnImageBuilder.DomainJoinInfoProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; DomainJoinInfoProperty.Jsii$Proxy that = (DomainJoinInfoProperty.Jsii$Proxy) o; if (this.directoryName != null ? !this.directoryName.equals(that.directoryName) : that.directoryName != null) return false; return this.organizationalUnitDistinguishedName != null ? this.organizationalUnitDistinguishedName.equals(that.organizationalUnitDistinguishedName) : that.organizationalUnitDistinguishedName == null; } @Override public int hashCode() { int result = this.directoryName != null ? this.directoryName.hashCode() : 0; result = 31 * result + (this.organizationalUnitDistinguishedName != null ? this.organizationalUnitDistinguishedName.hashCode() : 0); return result; } } } /** * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html */ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.appstream.$Module.class, fqn = "@aws-cdk/aws-appstream.CfnImageBuilder.VpcConfigProperty") @software.amazon.jsii.Jsii.Proxy(VpcConfigProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public static interface VpcConfigProperty extends software.amazon.jsii.JsiiSerializable { /** * `CfnImageBuilder.VpcConfigProperty.SecurityGroupIds`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html#cfn-appstream-imagebuilder-vpcconfig-securitygroupids */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) default java.util.List getSecurityGroupIds() { return null; } /** * `CfnImageBuilder.VpcConfigProperty.SubnetIds`. *

* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appstream-imagebuilder-vpcconfig.html#cfn-appstream-imagebuilder-vpcconfig-subnetids */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) default java.util.List getSubnetIds() { return null; } /** * @return a {@link Builder} of {@link VpcConfigProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) static Builder builder() { return new Builder(); } /** * A builder for {@link VpcConfigProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public static final class Builder { private java.util.List securityGroupIds; private java.util.List subnetIds; /** * Sets the value of {@link VpcConfigProperty#getSecurityGroupIds} * @param securityGroupIds `CfnImageBuilder.VpcConfigProperty.SecurityGroupIds`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder securityGroupIds(java.util.List securityGroupIds) { this.securityGroupIds = securityGroupIds; return this; } /** * Sets the value of {@link VpcConfigProperty#getSubnetIds} * @param subnetIds `CfnImageBuilder.VpcConfigProperty.SubnetIds`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder subnetIds(java.util.List subnetIds) { this.subnetIds = subnetIds; return this; } /** * Builds the configured instance. * @return a new instance of {@link VpcConfigProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public VpcConfigProperty build() { return new Jsii$Proxy(securityGroupIds, subnetIds); } } /** * An implementation for {@link VpcConfigProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements VpcConfigProperty { private final java.util.List securityGroupIds; private final java.util.List subnetIds; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.securityGroupIds = this.jsiiGet("securityGroupIds", java.util.List.class); this.subnetIds = this.jsiiGet("subnetIds", java.util.List.class); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ private Jsii$Proxy(final java.util.List securityGroupIds, final java.util.List subnetIds) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.securityGroupIds = securityGroupIds; this.subnetIds = subnetIds; } @Override public java.util.List getSecurityGroupIds() { return this.securityGroupIds; } @Override public java.util.List getSubnetIds() { return this.subnetIds; } @Override public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getSecurityGroupIds() != null) { data.set("securityGroupIds", om.valueToTree(this.getSecurityGroupIds())); } if (this.getSubnetIds() != null) { data.set("subnetIds", om.valueToTree(this.getSubnetIds())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-appstream.CfnImageBuilder.VpcConfigProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; VpcConfigProperty.Jsii$Proxy that = (VpcConfigProperty.Jsii$Proxy) o; if (this.securityGroupIds != null ? !this.securityGroupIds.equals(that.securityGroupIds) : that.securityGroupIds != null) return false; return this.subnetIds != null ? this.subnetIds.equals(that.subnetIds) : that.subnetIds == null; } @Override public int hashCode() { int result = this.securityGroupIds != null ? this.securityGroupIds.hashCode() : 0; result = 31 * result + (this.subnetIds != null ? this.subnetIds.hashCode() : 0); return result; } } } /** * A fluent builder for {@link software.amazon.awscdk.services.appstream.CfnImageBuilder}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public static final class Builder { /** * @return a new instance of {@link Builder}. * @param scope - scope in which this resource is defined. This parameter is required. * @param id - scoped id of the resource. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public static Builder create(final software.amazon.awscdk.core.Construct scope, final java.lang.String id) { return new Builder(scope, id); } private final software.amazon.awscdk.core.Construct scope; private final java.lang.String id; private final software.amazon.awscdk.services.appstream.CfnImageBuilderProps.Builder props; private Builder(final software.amazon.awscdk.core.Construct scope, final java.lang.String id) { this.scope = scope; this.id = id; this.props = new software.amazon.awscdk.services.appstream.CfnImageBuilderProps.Builder(); } /** * `AWS::AppStream::ImageBuilder.InstanceType`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-instancetype * @param instanceType `AWS::AppStream::ImageBuilder.InstanceType`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder instanceType(final java.lang.String instanceType) { this.props.instanceType(instanceType); return this; } /** * `AWS::AppStream::ImageBuilder.AccessEndpoints`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-accessendpoints * @param accessEndpoints `AWS::AppStream::ImageBuilder.AccessEndpoints`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder accessEndpoints(final software.amazon.awscdk.core.IResolvable accessEndpoints) { this.props.accessEndpoints(accessEndpoints); return this; } /** * `AWS::AppStream::ImageBuilder.AccessEndpoints`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-accessendpoints * @param accessEndpoints `AWS::AppStream::ImageBuilder.AccessEndpoints`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder accessEndpoints(final java.util.List accessEndpoints) { this.props.accessEndpoints(accessEndpoints); return this; } /** * `AWS::AppStream::ImageBuilder.AppstreamAgentVersion`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-appstreamagentversion * @param appstreamAgentVersion `AWS::AppStream::ImageBuilder.AppstreamAgentVersion`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder appstreamAgentVersion(final java.lang.String appstreamAgentVersion) { this.props.appstreamAgentVersion(appstreamAgentVersion); return this; } /** * `AWS::AppStream::ImageBuilder.Description`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-description * @param description `AWS::AppStream::ImageBuilder.Description`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder description(final java.lang.String description) { this.props.description(description); return this; } /** * `AWS::AppStream::ImageBuilder.DisplayName`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-displayname * @param displayName `AWS::AppStream::ImageBuilder.DisplayName`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder displayName(final java.lang.String displayName) { this.props.displayName(displayName); return this; } /** * `AWS::AppStream::ImageBuilder.DomainJoinInfo`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-domainjoininfo * @param domainJoinInfo `AWS::AppStream::ImageBuilder.DomainJoinInfo`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder domainJoinInfo(final software.amazon.awscdk.core.IResolvable domainJoinInfo) { this.props.domainJoinInfo(domainJoinInfo); return this; } /** * `AWS::AppStream::ImageBuilder.DomainJoinInfo`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-domainjoininfo * @param domainJoinInfo `AWS::AppStream::ImageBuilder.DomainJoinInfo`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder domainJoinInfo(final software.amazon.awscdk.services.appstream.CfnImageBuilder.DomainJoinInfoProperty domainJoinInfo) { this.props.domainJoinInfo(domainJoinInfo); return this; } /** * `AWS::AppStream::ImageBuilder.EnableDefaultInternetAccess`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-enabledefaultinternetaccess * @param enableDefaultInternetAccess `AWS::AppStream::ImageBuilder.EnableDefaultInternetAccess`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder enableDefaultInternetAccess(final java.lang.Boolean enableDefaultInternetAccess) { this.props.enableDefaultInternetAccess(enableDefaultInternetAccess); return this; } /** * `AWS::AppStream::ImageBuilder.EnableDefaultInternetAccess`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-enabledefaultinternetaccess * @param enableDefaultInternetAccess `AWS::AppStream::ImageBuilder.EnableDefaultInternetAccess`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder enableDefaultInternetAccess(final software.amazon.awscdk.core.IResolvable enableDefaultInternetAccess) { this.props.enableDefaultInternetAccess(enableDefaultInternetAccess); return this; } /** * `AWS::AppStream::ImageBuilder.ImageArn`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-imagearn * @param imageArn `AWS::AppStream::ImageBuilder.ImageArn`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder imageArn(final java.lang.String imageArn) { this.props.imageArn(imageArn); return this; } /** * `AWS::AppStream::ImageBuilder.ImageName`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-imagename * @param imageName `AWS::AppStream::ImageBuilder.ImageName`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder imageName(final java.lang.String imageName) { this.props.imageName(imageName); return this; } /** * `AWS::AppStream::ImageBuilder.Name`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-name * @param name `AWS::AppStream::ImageBuilder.Name`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder name(final java.lang.String name) { this.props.name(name); return this; } /** * `AWS::AppStream::ImageBuilder.Tags`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-tags * @param tags `AWS::AppStream::ImageBuilder.Tags`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder tags(final java.util.List tags) { this.props.tags(tags); return this; } /** * `AWS::AppStream::ImageBuilder.VpcConfig`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-vpcconfig * @param vpcConfig `AWS::AppStream::ImageBuilder.VpcConfig`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder vpcConfig(final software.amazon.awscdk.core.IResolvable vpcConfig) { this.props.vpcConfig(vpcConfig); return this; } /** * `AWS::AppStream::ImageBuilder.VpcConfig`. *

* @return {@code this} * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html#cfn-appstream-imagebuilder-vpcconfig * @param vpcConfig `AWS::AppStream::ImageBuilder.VpcConfig`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public Builder vpcConfig(final software.amazon.awscdk.services.appstream.CfnImageBuilder.VpcConfigProperty vpcConfig) { this.props.vpcConfig(vpcConfig); return this; } /** * @returns a newly built instance of {@link software.amazon.awscdk.services.appstream.CfnImageBuilder}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.External) public software.amazon.awscdk.services.appstream.CfnImageBuilder build() { return new software.amazon.awscdk.services.appstream.CfnImageBuilder( this.scope, this.id, this.props.build() ); } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy