
com.pulumi.azurenative.awsconnector.outputs.PlacementResponse Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.azurenative.awsconnector.outputs;
import com.pulumi.azurenative.awsconnector.outputs.TenancyEnumValueResponse;
import com.pulumi.core.annotations.CustomType;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class PlacementResponse {
/**
* @return <p>The affinity setting for the instance on the Dedicated Host.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a> or <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html'>ImportInstance</a>.</p>
*
*/
private @Nullable String affinity;
/**
* @return <p>The Availability Zone of the instance.</p> <p>If not specified, an Availability Zone will be automatically chosen for you based on the load balancing criteria for the Region.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a>.</p>
*
*/
private @Nullable String availabilityZone;
/**
* @return <p>The ID of the placement group that the instance is in. If you specify <code>GroupId</code>, you can't specify <code>GroupName</code>.</p>
*
*/
private @Nullable String groupId;
/**
* @return <p>The name of the placement group that the instance is in. If you specify <code>GroupName</code>, you can't specify <code>GroupId</code>.</p>
*
*/
private @Nullable String groupName;
/**
* @return <p>The ID of the Dedicated Host on which the instance resides.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a> or <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html'>ImportInstance</a>.</p>
*
*/
private @Nullable String hostId;
/**
* @return <p>The ARN of the host resource group in which to launch the instances.</p> <p>If you specify this parameter, either omit the <b>Tenancy</b> parameter or set it to <code>host</code>.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a>.</p>
*
*/
private @Nullable String hostResourceGroupArn;
/**
* @return <p>The number of the partition that the instance is in. Valid only if the placement group strategy is set to <code>partition</code>.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a>.</p>
*
*/
private @Nullable Integer partitionNumber;
/**
* @return <p>Reserved for future use.</p>
*
*/
private @Nullable String spreadDomain;
/**
* @return <p>The tenancy of the instance. An instance with a tenancy of <code>dedicated</code> runs on single-tenant hardware.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a>. The <code>host</code> tenancy is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html'>ImportInstance</a> or for T3 instances that are configured for the <code>unlimited</code> CPU credit option.</p>
*
*/
private @Nullable TenancyEnumValueResponse tenancy;
private PlacementResponse() {}
/**
* @return <p>The affinity setting for the instance on the Dedicated Host.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a> or <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html'>ImportInstance</a>.</p>
*
*/
public Optional affinity() {
return Optional.ofNullable(this.affinity);
}
/**
* @return <p>The Availability Zone of the instance.</p> <p>If not specified, an Availability Zone will be automatically chosen for you based on the load balancing criteria for the Region.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a>.</p>
*
*/
public Optional availabilityZone() {
return Optional.ofNullable(this.availabilityZone);
}
/**
* @return <p>The ID of the placement group that the instance is in. If you specify <code>GroupId</code>, you can't specify <code>GroupName</code>.</p>
*
*/
public Optional groupId() {
return Optional.ofNullable(this.groupId);
}
/**
* @return <p>The name of the placement group that the instance is in. If you specify <code>GroupName</code>, you can't specify <code>GroupId</code>.</p>
*
*/
public Optional groupName() {
return Optional.ofNullable(this.groupName);
}
/**
* @return <p>The ID of the Dedicated Host on which the instance resides.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a> or <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html'>ImportInstance</a>.</p>
*
*/
public Optional hostId() {
return Optional.ofNullable(this.hostId);
}
/**
* @return <p>The ARN of the host resource group in which to launch the instances.</p> <p>If you specify this parameter, either omit the <b>Tenancy</b> parameter or set it to <code>host</code>.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a>.</p>
*
*/
public Optional hostResourceGroupArn() {
return Optional.ofNullable(this.hostResourceGroupArn);
}
/**
* @return <p>The number of the partition that the instance is in. Valid only if the placement group strategy is set to <code>partition</code>.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a>.</p>
*
*/
public Optional partitionNumber() {
return Optional.ofNullable(this.partitionNumber);
}
/**
* @return <p>Reserved for future use.</p>
*
*/
public Optional spreadDomain() {
return Optional.ofNullable(this.spreadDomain);
}
/**
* @return <p>The tenancy of the instance. An instance with a tenancy of <code>dedicated</code> runs on single-tenant hardware.</p> <p>This parameter is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet'>CreateFleet</a>. The <code>host</code> tenancy is not supported for <a href='https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html'>ImportInstance</a> or for T3 instances that are configured for the <code>unlimited</code> CPU credit option.</p>
*
*/
public Optional tenancy() {
return Optional.ofNullable(this.tenancy);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(PlacementResponse defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable String affinity;
private @Nullable String availabilityZone;
private @Nullable String groupId;
private @Nullable String groupName;
private @Nullable String hostId;
private @Nullable String hostResourceGroupArn;
private @Nullable Integer partitionNumber;
private @Nullable String spreadDomain;
private @Nullable TenancyEnumValueResponse tenancy;
public Builder() {}
public Builder(PlacementResponse defaults) {
Objects.requireNonNull(defaults);
this.affinity = defaults.affinity;
this.availabilityZone = defaults.availabilityZone;
this.groupId = defaults.groupId;
this.groupName = defaults.groupName;
this.hostId = defaults.hostId;
this.hostResourceGroupArn = defaults.hostResourceGroupArn;
this.partitionNumber = defaults.partitionNumber;
this.spreadDomain = defaults.spreadDomain;
this.tenancy = defaults.tenancy;
}
@CustomType.Setter
public Builder affinity(@Nullable String affinity) {
this.affinity = affinity;
return this;
}
@CustomType.Setter
public Builder availabilityZone(@Nullable String availabilityZone) {
this.availabilityZone = availabilityZone;
return this;
}
@CustomType.Setter
public Builder groupId(@Nullable String groupId) {
this.groupId = groupId;
return this;
}
@CustomType.Setter
public Builder groupName(@Nullable String groupName) {
this.groupName = groupName;
return this;
}
@CustomType.Setter
public Builder hostId(@Nullable String hostId) {
this.hostId = hostId;
return this;
}
@CustomType.Setter
public Builder hostResourceGroupArn(@Nullable String hostResourceGroupArn) {
this.hostResourceGroupArn = hostResourceGroupArn;
return this;
}
@CustomType.Setter
public Builder partitionNumber(@Nullable Integer partitionNumber) {
this.partitionNumber = partitionNumber;
return this;
}
@CustomType.Setter
public Builder spreadDomain(@Nullable String spreadDomain) {
this.spreadDomain = spreadDomain;
return this;
}
@CustomType.Setter
public Builder tenancy(@Nullable TenancyEnumValueResponse tenancy) {
this.tenancy = tenancy;
return this;
}
public PlacementResponse build() {
final var _resultValue = new PlacementResponse();
_resultValue.affinity = affinity;
_resultValue.availabilityZone = availabilityZone;
_resultValue.groupId = groupId;
_resultValue.groupName = groupName;
_resultValue.hostId = hostId;
_resultValue.hostResourceGroupArn = hostResourceGroupArn;
_resultValue.partitionNumber = partitionNumber;
_resultValue.spreadDomain = spreadDomain;
_resultValue.tenancy = tenancy;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy