/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.appstream.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Describes an app block builder. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AppBlockBuilder implements Serializable, Cloneable, StructuredPojo { /** ** The ARN of the app block builder. *
*/ private String arn; /** ** The name of the app block builder. *
*/ private String name; /** ** The display name of the app block builder. *
*/ private String displayName; /** ** The description of the app block builder. *
*/ private String description; /** ** The platform of the app block builder. *
*
* WINDOWS_SERVER_2019
is the only valid value.
*
* The instance type of the app block builder. *
*/ private String instanceType; /** ** Indicates whether default internet access is enabled for the app block builder. *
*/ private Boolean enableDefaultInternetAccess; /** ** The ARN of the IAM role that is applied to the app block builder. *
*/ private String iamRoleArn; /** ** The VPC configuration for the app block builder. *
*/ private VpcConfig vpcConfig; /** ** The state of the app block builder. *
*/ private String state; /** ** The creation time of the app block builder. *
*/ private java.util.Date createdTime; /** ** The app block builder errors. *
*/ private java.util.List* The state change reason. *
*/ private AppBlockBuilderStateChangeReason stateChangeReason; /** ** The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app block * builder only through the specified endpoints. *
*/ private java.util.List* The ARN of the app block builder. *
* * @param arn * The ARN of the app block builder. */ public void setArn(String arn) { this.arn = arn; } /** ** The ARN of the app block builder. *
* * @return The ARN of the app block builder. */ public String getArn() { return this.arn; } /** ** The ARN of the app block builder. *
* * @param arn * The ARN of the app block builder. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withArn(String arn) { setArn(arn); return this; } /** ** The name of the app block builder. *
* * @param name * The name of the app block builder. */ public void setName(String name) { this.name = name; } /** ** The name of the app block builder. *
* * @return The name of the app block builder. */ public String getName() { return this.name; } /** ** The name of the app block builder. *
* * @param name * The name of the app block builder. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withName(String name) { setName(name); return this; } /** ** The display name of the app block builder. *
* * @param displayName * The display name of the app block builder. */ public void setDisplayName(String displayName) { this.displayName = displayName; } /** ** The display name of the app block builder. *
* * @return The display name of the app block builder. */ public String getDisplayName() { return this.displayName; } /** ** The display name of the app block builder. *
* * @param displayName * The display name of the app block builder. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withDisplayName(String displayName) { setDisplayName(displayName); return this; } /** ** The description of the app block builder. *
* * @param description * The description of the app block builder. */ public void setDescription(String description) { this.description = description; } /** ** The description of the app block builder. *
* * @return The description of the app block builder. */ public String getDescription() { return this.description; } /** ** The description of the app block builder. *
* * @param description * The description of the app block builder. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withDescription(String description) { setDescription(description); return this; } /** ** The platform of the app block builder. *
*
* WINDOWS_SERVER_2019
is the only valid value.
*
* WINDOWS_SERVER_2019
is the only valid value.
* @see AppBlockBuilderPlatformType
*/
public void setPlatform(String platform) {
this.platform = platform;
}
/**
*
* The platform of the app block builder. *
*
* WINDOWS_SERVER_2019
is the only valid value.
*
* WINDOWS_SERVER_2019
is the only valid value.
* @see AppBlockBuilderPlatformType
*/
public String getPlatform() {
return this.platform;
}
/**
*
* The platform of the app block builder. *
*
* WINDOWS_SERVER_2019
is the only valid value.
*
* WINDOWS_SERVER_2019
is the only valid value.
* @return Returns a reference to this object so that method calls can be chained together.
* @see AppBlockBuilderPlatformType
*/
public AppBlockBuilder withPlatform(String platform) {
setPlatform(platform);
return this;
}
/**
*
* The platform of the app block builder. *
*
* WINDOWS_SERVER_2019
is the only valid value.
*
* WINDOWS_SERVER_2019
is the only valid value.
* @return Returns a reference to this object so that method calls can be chained together.
* @see AppBlockBuilderPlatformType
*/
public AppBlockBuilder withPlatform(AppBlockBuilderPlatformType platform) {
this.platform = platform.toString();
return this;
}
/**
*
* The instance type of the app block builder. *
* * @param instanceType * The instance type of the app block builder. */ public void setInstanceType(String instanceType) { this.instanceType = instanceType; } /** ** The instance type of the app block builder. *
* * @return The instance type of the app block builder. */ public String getInstanceType() { return this.instanceType; } /** ** The instance type of the app block builder. *
* * @param instanceType * The instance type of the app block builder. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withInstanceType(String instanceType) { setInstanceType(instanceType); return this; } /** ** Indicates whether default internet access is enabled for the app block builder. *
* * @param enableDefaultInternetAccess * Indicates whether default internet access is enabled for the app block builder. */ public void setEnableDefaultInternetAccess(Boolean enableDefaultInternetAccess) { this.enableDefaultInternetAccess = enableDefaultInternetAccess; } /** ** Indicates whether default internet access is enabled for the app block builder. *
* * @return Indicates whether default internet access is enabled for the app block builder. */ public Boolean getEnableDefaultInternetAccess() { return this.enableDefaultInternetAccess; } /** ** Indicates whether default internet access is enabled for the app block builder. *
* * @param enableDefaultInternetAccess * Indicates whether default internet access is enabled for the app block builder. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withEnableDefaultInternetAccess(Boolean enableDefaultInternetAccess) { setEnableDefaultInternetAccess(enableDefaultInternetAccess); return this; } /** ** Indicates whether default internet access is enabled for the app block builder. *
* * @return Indicates whether default internet access is enabled for the app block builder. */ public Boolean isEnableDefaultInternetAccess() { return this.enableDefaultInternetAccess; } /** ** The ARN of the IAM role that is applied to the app block builder. *
* * @param iamRoleArn * The ARN of the IAM role that is applied to the app block builder. */ public void setIamRoleArn(String iamRoleArn) { this.iamRoleArn = iamRoleArn; } /** ** The ARN of the IAM role that is applied to the app block builder. *
* * @return The ARN of the IAM role that is applied to the app block builder. */ public String getIamRoleArn() { return this.iamRoleArn; } /** ** The ARN of the IAM role that is applied to the app block builder. *
* * @param iamRoleArn * The ARN of the IAM role that is applied to the app block builder. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withIamRoleArn(String iamRoleArn) { setIamRoleArn(iamRoleArn); return this; } /** ** The VPC configuration for the app block builder. *
* * @param vpcConfig * The VPC configuration for the app block builder. */ public void setVpcConfig(VpcConfig vpcConfig) { this.vpcConfig = vpcConfig; } /** ** The VPC configuration for the app block builder. *
* * @return The VPC configuration for the app block builder. */ public VpcConfig getVpcConfig() { return this.vpcConfig; } /** ** The VPC configuration for the app block builder. *
* * @param vpcConfig * The VPC configuration for the app block builder. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withVpcConfig(VpcConfig vpcConfig) { setVpcConfig(vpcConfig); return this; } /** ** The state of the app block builder. *
* * @param state * The state of the app block builder. * @see AppBlockBuilderState */ public void setState(String state) { this.state = state; } /** ** The state of the app block builder. *
* * @return The state of the app block builder. * @see AppBlockBuilderState */ public String getState() { return this.state; } /** ** The state of the app block builder. *
* * @param state * The state of the app block builder. * @return Returns a reference to this object so that method calls can be chained together. * @see AppBlockBuilderState */ public AppBlockBuilder withState(String state) { setState(state); return this; } /** ** The state of the app block builder. *
* * @param state * The state of the app block builder. * @return Returns a reference to this object so that method calls can be chained together. * @see AppBlockBuilderState */ public AppBlockBuilder withState(AppBlockBuilderState state) { this.state = state.toString(); return this; } /** ** The creation time of the app block builder. *
* * @param createdTime * The creation time of the app block builder. */ public void setCreatedTime(java.util.Date createdTime) { this.createdTime = createdTime; } /** ** The creation time of the app block builder. *
* * @return The creation time of the app block builder. */ public java.util.Date getCreatedTime() { return this.createdTime; } /** ** The creation time of the app block builder. *
* * @param createdTime * The creation time of the app block builder. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withCreatedTime(java.util.Date createdTime) { setCreatedTime(createdTime); return this; } /** ** The app block builder errors. *
* * @return The app block builder errors. */ public java.util.List* The app block builder errors. *
* * @param appBlockBuilderErrors * The app block builder errors. */ public void setAppBlockBuilderErrors(java.util.Collection* The app block builder errors. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setAppBlockBuilderErrors(java.util.Collection)} or * {@link #withAppBlockBuilderErrors(java.util.Collection)} if you want to override the existing values. *
* * @param appBlockBuilderErrors * The app block builder errors. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withAppBlockBuilderErrors(ResourceError... appBlockBuilderErrors) { if (this.appBlockBuilderErrors == null) { setAppBlockBuilderErrors(new java.util.ArrayList* The app block builder errors. *
* * @param appBlockBuilderErrors * The app block builder errors. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withAppBlockBuilderErrors(java.util.Collection* The state change reason. *
* * @param stateChangeReason * The state change reason. */ public void setStateChangeReason(AppBlockBuilderStateChangeReason stateChangeReason) { this.stateChangeReason = stateChangeReason; } /** ** The state change reason. *
* * @return The state change reason. */ public AppBlockBuilderStateChangeReason getStateChangeReason() { return this.stateChangeReason; } /** ** The state change reason. *
* * @param stateChangeReason * The state change reason. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withStateChangeReason(AppBlockBuilderStateChangeReason stateChangeReason) { setStateChangeReason(stateChangeReason); return this; } /** ** The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app block * builder only through the specified endpoints. *
* * @return The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app * block builder only through the specified endpoints. */ public java.util.List* The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app block * builder only through the specified endpoints. *
* * @param accessEndpoints * The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app * block builder only through the specified endpoints. */ public void setAccessEndpoints(java.util.Collection* The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app block * builder only through the specified endpoints. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setAccessEndpoints(java.util.Collection)} or {@link #withAccessEndpoints(java.util.Collection)} if you * want to override the existing values. *
* * @param accessEndpoints * The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app * block builder only through the specified endpoints. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withAccessEndpoints(AccessEndpoint... accessEndpoints) { if (this.accessEndpoints == null) { setAccessEndpoints(new java.util.ArrayList* The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app block * builder only through the specified endpoints. *
* * @param accessEndpoints * The list of interface VPC endpoint (interface endpoint) objects. Administrators can connect to the app * block builder only through the specified endpoints. * @return Returns a reference to this object so that method calls can be chained together. */ public AppBlockBuilder withAccessEndpoints(java.util.Collection