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

com.aliyun.ros.cdk.cloudphone.RosInstanceGroupProps Maven / Gradle / Ivy

package com.aliyun.ros.cdk.cloudphone;

/**
 * Properties for defining a RosInstanceGroup.
 * 

* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-cloudphone-instancegroup */ @javax.annotation.Generated(value = "jsii-pacmak/1.85.0 (build 08ee592)", date = "2024-12-13T06:45:05.529Z") @software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.cloudphone.$Module.class, fqn = "@alicloud/ros-cdk-cloudphone.RosInstanceGroupProps") @software.amazon.jsii.Jsii.Proxy(RosInstanceGroupProps.Jsii$Proxy.class) public interface RosInstanceGroupProps extends software.amazon.jsii.JsiiSerializable { /** */ @org.jetbrains.annotations.NotNull java.lang.Object getImageId(); /** */ @org.jetbrains.annotations.NotNull java.lang.Object getInstanceType(); /** */ @org.jetbrains.annotations.NotNull java.lang.Object getSecurityGroupId(); /** */ @org.jetbrains.annotations.NotNull java.lang.Object getVSwitchId(); /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getAmount() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getAutoPay() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getAutoRenew() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getChargeType() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getDescription() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getEipBandwidth() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getInstanceName() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getKeyPairName() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getPeriod() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getPeriodUnit() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getResolution() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getTag() { return null; } /** */ default @org.jetbrains.annotations.Nullable java.lang.Object getVncPassword() { return null; } /** * @return a {@link Builder} of {@link RosInstanceGroupProps} */ static Builder builder() { return new Builder(); } /** * A builder for {@link RosInstanceGroupProps} */ public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object imageId; java.lang.Object instanceType; java.lang.Object securityGroupId; java.lang.Object vSwitchId; java.lang.Object amount; java.lang.Object autoPay; java.lang.Object autoRenew; java.lang.Object chargeType; java.lang.Object description; java.lang.Object eipBandwidth; java.lang.Object instanceName; java.lang.Object keyPairName; java.lang.Object period; java.lang.Object periodUnit; java.lang.Object resolution; java.lang.Object tag; java.lang.Object vncPassword; /** * Sets the value of {@link RosInstanceGroupProps#getImageId} * @param imageId the value to be set. This parameter is required. * @return {@code this} */ public Builder imageId(java.lang.String imageId) { this.imageId = imageId; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getImageId} * @param imageId the value to be set. This parameter is required. * @return {@code this} */ public Builder imageId(com.aliyun.ros.cdk.core.IResolvable imageId) { this.imageId = imageId; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getInstanceType} * @param instanceType the value to be set. This parameter is required. * @return {@code this} */ public Builder instanceType(java.lang.String instanceType) { this.instanceType = instanceType; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getInstanceType} * @param instanceType the value to be set. This parameter is required. * @return {@code this} */ public Builder instanceType(com.aliyun.ros.cdk.core.IResolvable instanceType) { this.instanceType = instanceType; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getSecurityGroupId} * @param securityGroupId the value to be set. This parameter is required. * @return {@code this} */ public Builder securityGroupId(java.lang.String securityGroupId) { this.securityGroupId = securityGroupId; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getSecurityGroupId} * @param securityGroupId the value to be set. This parameter is required. * @return {@code this} */ public Builder securityGroupId(com.aliyun.ros.cdk.core.IResolvable securityGroupId) { this.securityGroupId = securityGroupId; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getVSwitchId} * @param vSwitchId the value to be set. This parameter is required. * @return {@code this} */ public Builder vSwitchId(java.lang.String vSwitchId) { this.vSwitchId = vSwitchId; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getVSwitchId} * @param vSwitchId the value to be set. This parameter is required. * @return {@code this} */ public Builder vSwitchId(com.aliyun.ros.cdk.core.IResolvable vSwitchId) { this.vSwitchId = vSwitchId; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getAmount} * @param amount the value to be set. * @return {@code this} */ public Builder amount(java.lang.Number amount) { this.amount = amount; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getAmount} * @param amount the value to be set. * @return {@code this} */ public Builder amount(com.aliyun.ros.cdk.core.IResolvable amount) { this.amount = amount; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getAutoPay} * @param autoPay the value to be set. * @return {@code this} */ public Builder autoPay(java.lang.Boolean autoPay) { this.autoPay = autoPay; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getAutoPay} * @param autoPay the value to be set. * @return {@code this} */ public Builder autoPay(com.aliyun.ros.cdk.core.IResolvable autoPay) { this.autoPay = autoPay; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getAutoRenew} * @param autoRenew the value to be set. * @return {@code this} */ public Builder autoRenew(java.lang.Boolean autoRenew) { this.autoRenew = autoRenew; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getAutoRenew} * @param autoRenew the value to be set. * @return {@code this} */ public Builder autoRenew(com.aliyun.ros.cdk.core.IResolvable autoRenew) { this.autoRenew = autoRenew; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getChargeType} * @param chargeType the value to be set. * @return {@code this} */ public Builder chargeType(java.lang.String chargeType) { this.chargeType = chargeType; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getChargeType} * @param chargeType the value to be set. * @return {@code this} */ public Builder chargeType(com.aliyun.ros.cdk.core.IResolvable chargeType) { this.chargeType = chargeType; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getDescription} * @param description the value to be set. * @return {@code this} */ public Builder description(java.lang.String description) { this.description = description; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getDescription} * @param description the value to be set. * @return {@code this} */ public Builder description(com.aliyun.ros.cdk.core.IResolvable description) { this.description = description; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getEipBandwidth} * @param eipBandwidth the value to be set. * @return {@code this} */ public Builder eipBandwidth(java.lang.Number eipBandwidth) { this.eipBandwidth = eipBandwidth; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getEipBandwidth} * @param eipBandwidth the value to be set. * @return {@code this} */ public Builder eipBandwidth(com.aliyun.ros.cdk.core.IResolvable eipBandwidth) { this.eipBandwidth = eipBandwidth; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getInstanceName} * @param instanceName the value to be set. * @return {@code this} */ public Builder instanceName(java.lang.String instanceName) { this.instanceName = instanceName; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getInstanceName} * @param instanceName the value to be set. * @return {@code this} */ public Builder instanceName(com.aliyun.ros.cdk.core.IResolvable instanceName) { this.instanceName = instanceName; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getKeyPairName} * @param keyPairName the value to be set. * @return {@code this} */ public Builder keyPairName(java.lang.String keyPairName) { this.keyPairName = keyPairName; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getKeyPairName} * @param keyPairName the value to be set. * @return {@code this} */ public Builder keyPairName(com.aliyun.ros.cdk.core.IResolvable keyPairName) { this.keyPairName = keyPairName; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getPeriod} * @param period the value to be set. * @return {@code this} */ public Builder period(java.lang.Number period) { this.period = period; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getPeriod} * @param period the value to be set. * @return {@code this} */ public Builder period(com.aliyun.ros.cdk.core.IResolvable period) { this.period = period; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getPeriodUnit} * @param periodUnit the value to be set. * @return {@code this} */ public Builder periodUnit(java.lang.String periodUnit) { this.periodUnit = periodUnit; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getPeriodUnit} * @param periodUnit the value to be set. * @return {@code this} */ public Builder periodUnit(com.aliyun.ros.cdk.core.IResolvable periodUnit) { this.periodUnit = periodUnit; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getResolution} * @param resolution the value to be set. * @return {@code this} */ public Builder resolution(java.lang.String resolution) { this.resolution = resolution; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getResolution} * @param resolution the value to be set. * @return {@code this} */ public Builder resolution(com.aliyun.ros.cdk.core.IResolvable resolution) { this.resolution = resolution; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getTag} * @param tag the value to be set. * @return {@code this} */ public Builder tag(com.aliyun.ros.cdk.core.IResolvable tag) { this.tag = tag; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getTag} * @param tag the value to be set. * @return {@code this} */ public Builder tag(java.util.List tag) { this.tag = tag; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getVncPassword} * @param vncPassword the value to be set. * @return {@code this} */ public Builder vncPassword(java.lang.String vncPassword) { this.vncPassword = vncPassword; return this; } /** * Sets the value of {@link RosInstanceGroupProps#getVncPassword} * @param vncPassword the value to be set. * @return {@code this} */ public Builder vncPassword(com.aliyun.ros.cdk.core.IResolvable vncPassword) { this.vncPassword = vncPassword; return this; } /** * Builds the configured instance. * @return a new instance of {@link RosInstanceGroupProps} * @throws NullPointerException if any required attribute was not provided */ @Override public RosInstanceGroupProps build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link RosInstanceGroupProps} */ @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements RosInstanceGroupProps { private final java.lang.Object imageId; private final java.lang.Object instanceType; private final java.lang.Object securityGroupId; private final java.lang.Object vSwitchId; private final java.lang.Object amount; private final java.lang.Object autoPay; private final java.lang.Object autoRenew; private final java.lang.Object chargeType; private final java.lang.Object description; private final java.lang.Object eipBandwidth; private final java.lang.Object instanceName; private final java.lang.Object keyPairName; private final java.lang.Object period; private final java.lang.Object periodUnit; private final java.lang.Object resolution; private final java.lang.Object tag; private final java.lang.Object vncPassword; /** * 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.imageId = software.amazon.jsii.Kernel.get(this, "imageId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.instanceType = software.amazon.jsii.Kernel.get(this, "instanceType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.securityGroupId = software.amazon.jsii.Kernel.get(this, "securityGroupId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.vSwitchId = software.amazon.jsii.Kernel.get(this, "vSwitchId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.amount = software.amazon.jsii.Kernel.get(this, "amount", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.autoPay = software.amazon.jsii.Kernel.get(this, "autoPay", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.autoRenew = software.amazon.jsii.Kernel.get(this, "autoRenew", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.chargeType = software.amazon.jsii.Kernel.get(this, "chargeType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.description = software.amazon.jsii.Kernel.get(this, "description", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.eipBandwidth = software.amazon.jsii.Kernel.get(this, "eipBandwidth", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.instanceName = software.amazon.jsii.Kernel.get(this, "instanceName", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.keyPairName = software.amazon.jsii.Kernel.get(this, "keyPairName", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.period = software.amazon.jsii.Kernel.get(this, "period", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.periodUnit = software.amazon.jsii.Kernel.get(this, "periodUnit", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.resolution = software.amazon.jsii.Kernel.get(this, "resolution", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.tag = software.amazon.jsii.Kernel.get(this, "tag", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.vncPassword = software.amazon.jsii.Kernel.get(this, "vncPassword", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.imageId = java.util.Objects.requireNonNull(builder.imageId, "imageId is required"); this.instanceType = java.util.Objects.requireNonNull(builder.instanceType, "instanceType is required"); this.securityGroupId = java.util.Objects.requireNonNull(builder.securityGroupId, "securityGroupId is required"); this.vSwitchId = java.util.Objects.requireNonNull(builder.vSwitchId, "vSwitchId is required"); this.amount = builder.amount; this.autoPay = builder.autoPay; this.autoRenew = builder.autoRenew; this.chargeType = builder.chargeType; this.description = builder.description; this.eipBandwidth = builder.eipBandwidth; this.instanceName = builder.instanceName; this.keyPairName = builder.keyPairName; this.period = builder.period; this.periodUnit = builder.periodUnit; this.resolution = builder.resolution; this.tag = builder.tag; this.vncPassword = builder.vncPassword; } @Override public final java.lang.Object getImageId() { return this.imageId; } @Override public final java.lang.Object getInstanceType() { return this.instanceType; } @Override public final java.lang.Object getSecurityGroupId() { return this.securityGroupId; } @Override public final java.lang.Object getVSwitchId() { return this.vSwitchId; } @Override public final java.lang.Object getAmount() { return this.amount; } @Override public final java.lang.Object getAutoPay() { return this.autoPay; } @Override public final java.lang.Object getAutoRenew() { return this.autoRenew; } @Override public final java.lang.Object getChargeType() { return this.chargeType; } @Override public final java.lang.Object getDescription() { return this.description; } @Override public final java.lang.Object getEipBandwidth() { return this.eipBandwidth; } @Override public final java.lang.Object getInstanceName() { return this.instanceName; } @Override public final java.lang.Object getKeyPairName() { return this.keyPairName; } @Override public final java.lang.Object getPeriod() { return this.period; } @Override public final java.lang.Object getPeriodUnit() { return this.periodUnit; } @Override public final java.lang.Object getResolution() { return this.resolution; } @Override public final java.lang.Object getTag() { return this.tag; } @Override public final java.lang.Object getVncPassword() { return this.vncPassword; } @Override @software.amazon.jsii.Internal 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("imageId", om.valueToTree(this.getImageId())); data.set("instanceType", om.valueToTree(this.getInstanceType())); data.set("securityGroupId", om.valueToTree(this.getSecurityGroupId())); data.set("vSwitchId", om.valueToTree(this.getVSwitchId())); if (this.getAmount() != null) { data.set("amount", om.valueToTree(this.getAmount())); } if (this.getAutoPay() != null) { data.set("autoPay", om.valueToTree(this.getAutoPay())); } if (this.getAutoRenew() != null) { data.set("autoRenew", om.valueToTree(this.getAutoRenew())); } if (this.getChargeType() != null) { data.set("chargeType", om.valueToTree(this.getChargeType())); } if (this.getDescription() != null) { data.set("description", om.valueToTree(this.getDescription())); } if (this.getEipBandwidth() != null) { data.set("eipBandwidth", om.valueToTree(this.getEipBandwidth())); } if (this.getInstanceName() != null) { data.set("instanceName", om.valueToTree(this.getInstanceName())); } if (this.getKeyPairName() != null) { data.set("keyPairName", om.valueToTree(this.getKeyPairName())); } if (this.getPeriod() != null) { data.set("period", om.valueToTree(this.getPeriod())); } if (this.getPeriodUnit() != null) { data.set("periodUnit", om.valueToTree(this.getPeriodUnit())); } if (this.getResolution() != null) { data.set("resolution", om.valueToTree(this.getResolution())); } if (this.getTag() != null) { data.set("tag", om.valueToTree(this.getTag())); } if (this.getVncPassword() != null) { data.set("vncPassword", om.valueToTree(this.getVncPassword())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-cloudphone.RosInstanceGroupProps")); 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 final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; RosInstanceGroupProps.Jsii$Proxy that = (RosInstanceGroupProps.Jsii$Proxy) o; if (!imageId.equals(that.imageId)) return false; if (!instanceType.equals(that.instanceType)) return false; if (!securityGroupId.equals(that.securityGroupId)) return false; if (!vSwitchId.equals(that.vSwitchId)) return false; if (this.amount != null ? !this.amount.equals(that.amount) : that.amount != null) return false; if (this.autoPay != null ? !this.autoPay.equals(that.autoPay) : that.autoPay != null) return false; if (this.autoRenew != null ? !this.autoRenew.equals(that.autoRenew) : that.autoRenew != null) return false; if (this.chargeType != null ? !this.chargeType.equals(that.chargeType) : that.chargeType != null) return false; if (this.description != null ? !this.description.equals(that.description) : that.description != null) return false; if (this.eipBandwidth != null ? !this.eipBandwidth.equals(that.eipBandwidth) : that.eipBandwidth != null) return false; if (this.instanceName != null ? !this.instanceName.equals(that.instanceName) : that.instanceName != null) return false; if (this.keyPairName != null ? !this.keyPairName.equals(that.keyPairName) : that.keyPairName != null) return false; if (this.period != null ? !this.period.equals(that.period) : that.period != null) return false; if (this.periodUnit != null ? !this.periodUnit.equals(that.periodUnit) : that.periodUnit != null) return false; if (this.resolution != null ? !this.resolution.equals(that.resolution) : that.resolution != null) return false; if (this.tag != null ? !this.tag.equals(that.tag) : that.tag != null) return false; return this.vncPassword != null ? this.vncPassword.equals(that.vncPassword) : that.vncPassword == null; } @Override public final int hashCode() { int result = this.imageId.hashCode(); result = 31 * result + (this.instanceType.hashCode()); result = 31 * result + (this.securityGroupId.hashCode()); result = 31 * result + (this.vSwitchId.hashCode()); result = 31 * result + (this.amount != null ? this.amount.hashCode() : 0); result = 31 * result + (this.autoPay != null ? this.autoPay.hashCode() : 0); result = 31 * result + (this.autoRenew != null ? this.autoRenew.hashCode() : 0); result = 31 * result + (this.chargeType != null ? this.chargeType.hashCode() : 0); result = 31 * result + (this.description != null ? this.description.hashCode() : 0); result = 31 * result + (this.eipBandwidth != null ? this.eipBandwidth.hashCode() : 0); result = 31 * result + (this.instanceName != null ? this.instanceName.hashCode() : 0); result = 31 * result + (this.keyPairName != null ? this.keyPairName.hashCode() : 0); result = 31 * result + (this.period != null ? this.period.hashCode() : 0); result = 31 * result + (this.periodUnit != null ? this.periodUnit.hashCode() : 0); result = 31 * result + (this.resolution != null ? this.resolution.hashCode() : 0); result = 31 * result + (this.tag != null ? this.tag.hashCode() : 0); result = 31 * result + (this.vncPassword != null ? this.vncPassword.hashCode() : 0); return result; } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy