com.aliyun.ros.cdk.ens.RosInstanceProps Maven / Gradle / Ivy
package com.aliyun.ros.cdk.ens;
/**
* Properties for defining a `ALIYUN::ENS::Instance`.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.30.0 (build adae23f)", date = "2021-06-21T09:47:43.365Z")
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.ens.$Module.class, fqn = "@alicloud/ros-cdk-ens.RosInstanceProps")
@software.amazon.jsii.Jsii.Proxy(RosInstanceProps.Jsii$Proxy.class)
public interface RosInstanceProps extends software.amazon.jsii.JsiiSerializable {
/**
*/
@org.jetbrains.annotations.NotNull java.lang.Object getDataDiskSize();
/**
*/
@org.jetbrains.annotations.NotNull java.lang.Object getEnsRegionId();
/**
*/
@org.jetbrains.annotations.NotNull java.lang.Object getImageId();
/**
*/
@org.jetbrains.annotations.NotNull java.lang.Object getInstanceType();
/**
*/
@org.jetbrains.annotations.NotNull java.lang.Object getPeriod();
/**
*/
@org.jetbrains.annotations.NotNull java.lang.Object getQuantity();
/**
*/
@org.jetbrains.annotations.NotNull java.lang.Object getSystemDiskSize();
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getAutoRenew() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getAutoRenewPeriod() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getHostName() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getInstanceName() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getInternetChargeType() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getIpType() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getKeyPairName() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getPassword() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getPaymentType() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getPrivateIpAddress() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getUniqueSuffix() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getUserData() {
return null;
}
/**
*/
default @org.jetbrains.annotations.Nullable java.lang.Object getVSwitchId() {
return null;
}
/**
* @return a {@link Builder} of {@link RosInstanceProps}
*/
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link RosInstanceProps}
*/
public static final class Builder implements software.amazon.jsii.Builder {
private java.lang.Object dataDiskSize;
private java.lang.Object ensRegionId;
private java.lang.Object imageId;
private java.lang.Object instanceType;
private java.lang.Object period;
private java.lang.Object quantity;
private java.lang.Object systemDiskSize;
private java.lang.Object autoRenew;
private java.lang.Object autoRenewPeriod;
private java.lang.Object hostName;
private java.lang.Object instanceName;
private java.lang.Object internetChargeType;
private java.lang.Object ipType;
private java.lang.Object keyPairName;
private java.lang.Object password;
private java.lang.Object paymentType;
private java.lang.Object privateIpAddress;
private java.lang.Object uniqueSuffix;
private java.lang.Object userData;
private java.lang.Object vSwitchId;
/**
* Sets the value of {@link RosInstanceProps#getDataDiskSize}
* @param dataDiskSize the value to be set. This parameter is required.
* @return {@code this}
*/
public Builder dataDiskSize(java.lang.Number dataDiskSize) {
this.dataDiskSize = dataDiskSize;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getDataDiskSize}
* @param dataDiskSize the value to be set. This parameter is required.
* @return {@code this}
*/
public Builder dataDiskSize(com.aliyun.ros.cdk.core.IResolvable dataDiskSize) {
this.dataDiskSize = dataDiskSize;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getEnsRegionId}
* @param ensRegionId the value to be set. This parameter is required.
* @return {@code this}
*/
public Builder ensRegionId(java.lang.String ensRegionId) {
this.ensRegionId = ensRegionId;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getEnsRegionId}
* @param ensRegionId the value to be set. This parameter is required.
* @return {@code this}
*/
public Builder ensRegionId(com.aliyun.ros.cdk.core.IResolvable ensRegionId) {
this.ensRegionId = ensRegionId;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#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 RosInstanceProps#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 RosInstanceProps#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 RosInstanceProps#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 RosInstanceProps#getPeriod}
* @param period the value to be set. This parameter is required.
* @return {@code this}
*/
public Builder period(java.lang.Number period) {
this.period = period;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getPeriod}
* @param period the value to be set. This parameter is required.
* @return {@code this}
*/
public Builder period(com.aliyun.ros.cdk.core.IResolvable period) {
this.period = period;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getQuantity}
* @param quantity the value to be set. This parameter is required.
* @return {@code this}
*/
public Builder quantity(java.lang.Number quantity) {
this.quantity = quantity;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getQuantity}
* @param quantity the value to be set. This parameter is required.
* @return {@code this}
*/
public Builder quantity(com.aliyun.ros.cdk.core.IResolvable quantity) {
this.quantity = quantity;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getSystemDiskSize}
* @param systemDiskSize the value to be set. This parameter is required.
* @return {@code this}
*/
public Builder systemDiskSize(java.lang.Number systemDiskSize) {
this.systemDiskSize = systemDiskSize;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getSystemDiskSize}
* @param systemDiskSize the value to be set. This parameter is required.
* @return {@code this}
*/
public Builder systemDiskSize(com.aliyun.ros.cdk.core.IResolvable systemDiskSize) {
this.systemDiskSize = systemDiskSize;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getAutoRenew}
* @param autoRenew the value to be set.
* @return {@code this}
*/
public Builder autoRenew(java.lang.String autoRenew) {
this.autoRenew = autoRenew;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#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 RosInstanceProps#getAutoRenewPeriod}
* @param autoRenewPeriod the value to be set.
* @return {@code this}
*/
public Builder autoRenewPeriod(java.lang.Number autoRenewPeriod) {
this.autoRenewPeriod = autoRenewPeriod;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getAutoRenewPeriod}
* @param autoRenewPeriod the value to be set.
* @return {@code this}
*/
public Builder autoRenewPeriod(com.aliyun.ros.cdk.core.IResolvable autoRenewPeriod) {
this.autoRenewPeriod = autoRenewPeriod;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getHostName}
* @param hostName the value to be set.
* @return {@code this}
*/
public Builder hostName(java.lang.String hostName) {
this.hostName = hostName;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getHostName}
* @param hostName the value to be set.
* @return {@code this}
*/
public Builder hostName(com.aliyun.ros.cdk.core.IResolvable hostName) {
this.hostName = hostName;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#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 RosInstanceProps#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 RosInstanceProps#getInternetChargeType}
* @param internetChargeType the value to be set.
* @return {@code this}
*/
public Builder internetChargeType(java.lang.String internetChargeType) {
this.internetChargeType = internetChargeType;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getInternetChargeType}
* @param internetChargeType the value to be set.
* @return {@code this}
*/
public Builder internetChargeType(com.aliyun.ros.cdk.core.IResolvable internetChargeType) {
this.internetChargeType = internetChargeType;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getIpType}
* @param ipType the value to be set.
* @return {@code this}
*/
public Builder ipType(java.lang.String ipType) {
this.ipType = ipType;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getIpType}
* @param ipType the value to be set.
* @return {@code this}
*/
public Builder ipType(com.aliyun.ros.cdk.core.IResolvable ipType) {
this.ipType = ipType;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#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 RosInstanceProps#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 RosInstanceProps#getPassword}
* @param password the value to be set.
* @return {@code this}
*/
public Builder password(java.lang.String password) {
this.password = password;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getPassword}
* @param password the value to be set.
* @return {@code this}
*/
public Builder password(com.aliyun.ros.cdk.core.IResolvable password) {
this.password = password;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getPaymentType}
* @param paymentType the value to be set.
* @return {@code this}
*/
public Builder paymentType(java.lang.String paymentType) {
this.paymentType = paymentType;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getPaymentType}
* @param paymentType the value to be set.
* @return {@code this}
*/
public Builder paymentType(com.aliyun.ros.cdk.core.IResolvable paymentType) {
this.paymentType = paymentType;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getPrivateIpAddress}
* @param privateIpAddress the value to be set.
* @return {@code this}
*/
public Builder privateIpAddress(java.lang.String privateIpAddress) {
this.privateIpAddress = privateIpAddress;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getPrivateIpAddress}
* @param privateIpAddress the value to be set.
* @return {@code this}
*/
public Builder privateIpAddress(com.aliyun.ros.cdk.core.IResolvable privateIpAddress) {
this.privateIpAddress = privateIpAddress;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getUniqueSuffix}
* @param uniqueSuffix the value to be set.
* @return {@code this}
*/
public Builder uniqueSuffix(java.lang.Boolean uniqueSuffix) {
this.uniqueSuffix = uniqueSuffix;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getUniqueSuffix}
* @param uniqueSuffix the value to be set.
* @return {@code this}
*/
public Builder uniqueSuffix(com.aliyun.ros.cdk.core.IResolvable uniqueSuffix) {
this.uniqueSuffix = uniqueSuffix;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getUserData}
* @param userData the value to be set.
* @return {@code this}
*/
public Builder userData(java.lang.String userData) {
this.userData = userData;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getUserData}
* @param userData the value to be set.
* @return {@code this}
*/
public Builder userData(com.aliyun.ros.cdk.core.IResolvable userData) {
this.userData = userData;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getVSwitchId}
* @param vSwitchId the value to be set.
* @return {@code this}
*/
public Builder vSwitchId(java.lang.String vSwitchId) {
this.vSwitchId = vSwitchId;
return this;
}
/**
* Sets the value of {@link RosInstanceProps#getVSwitchId}
* @param vSwitchId the value to be set.
* @return {@code this}
*/
public Builder vSwitchId(com.aliyun.ros.cdk.core.IResolvable vSwitchId) {
this.vSwitchId = vSwitchId;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link RosInstanceProps}
* @throws NullPointerException if any required attribute was not provided
*/
@Override
public RosInstanceProps build() {
return new Jsii$Proxy(dataDiskSize, ensRegionId, imageId, instanceType, period, quantity, systemDiskSize, autoRenew, autoRenewPeriod, hostName, instanceName, internetChargeType, ipType, keyPairName, password, paymentType, privateIpAddress, uniqueSuffix, userData, vSwitchId);
}
}
/**
* An implementation for {@link RosInstanceProps}
*/
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements RosInstanceProps {
private final java.lang.Object dataDiskSize;
private final java.lang.Object ensRegionId;
private final java.lang.Object imageId;
private final java.lang.Object instanceType;
private final java.lang.Object period;
private final java.lang.Object quantity;
private final java.lang.Object systemDiskSize;
private final java.lang.Object autoRenew;
private final java.lang.Object autoRenewPeriod;
private final java.lang.Object hostName;
private final java.lang.Object instanceName;
private final java.lang.Object internetChargeType;
private final java.lang.Object ipType;
private final java.lang.Object keyPairName;
private final java.lang.Object password;
private final java.lang.Object paymentType;
private final java.lang.Object privateIpAddress;
private final java.lang.Object uniqueSuffix;
private final java.lang.Object userData;
private final java.lang.Object vSwitchId;
/**
* 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.dataDiskSize = software.amazon.jsii.Kernel.get(this, "dataDiskSize", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.ensRegionId = software.amazon.jsii.Kernel.get(this, "ensRegionId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
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.period = software.amazon.jsii.Kernel.get(this, "period", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.quantity = software.amazon.jsii.Kernel.get(this, "quantity", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.systemDiskSize = software.amazon.jsii.Kernel.get(this, "systemDiskSize", 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.autoRenewPeriod = software.amazon.jsii.Kernel.get(this, "autoRenewPeriod", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.hostName = software.amazon.jsii.Kernel.get(this, "hostName", 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.internetChargeType = software.amazon.jsii.Kernel.get(this, "internetChargeType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.ipType = software.amazon.jsii.Kernel.get(this, "ipType", 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.password = software.amazon.jsii.Kernel.get(this, "password", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.paymentType = software.amazon.jsii.Kernel.get(this, "paymentType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.privateIpAddress = software.amazon.jsii.Kernel.get(this, "privateIpAddress", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.uniqueSuffix = software.amazon.jsii.Kernel.get(this, "uniqueSuffix", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.userData = software.amazon.jsii.Kernel.get(this, "userData", 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));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final java.lang.Object dataDiskSize, final java.lang.Object ensRegionId, final java.lang.Object imageId, final java.lang.Object instanceType, final java.lang.Object period, final java.lang.Object quantity, final java.lang.Object systemDiskSize, final java.lang.Object autoRenew, final java.lang.Object autoRenewPeriod, final java.lang.Object hostName, final java.lang.Object instanceName, final java.lang.Object internetChargeType, final java.lang.Object ipType, final java.lang.Object keyPairName, final java.lang.Object password, final java.lang.Object paymentType, final java.lang.Object privateIpAddress, final java.lang.Object uniqueSuffix, final java.lang.Object userData, final java.lang.Object vSwitchId) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.dataDiskSize = java.util.Objects.requireNonNull(dataDiskSize, "dataDiskSize is required");
this.ensRegionId = java.util.Objects.requireNonNull(ensRegionId, "ensRegionId is required");
this.imageId = java.util.Objects.requireNonNull(imageId, "imageId is required");
this.instanceType = java.util.Objects.requireNonNull(instanceType, "instanceType is required");
this.period = java.util.Objects.requireNonNull(period, "period is required");
this.quantity = java.util.Objects.requireNonNull(quantity, "quantity is required");
this.systemDiskSize = java.util.Objects.requireNonNull(systemDiskSize, "systemDiskSize is required");
this.autoRenew = autoRenew;
this.autoRenewPeriod = autoRenewPeriod;
this.hostName = hostName;
this.instanceName = instanceName;
this.internetChargeType = internetChargeType;
this.ipType = ipType;
this.keyPairName = keyPairName;
this.password = password;
this.paymentType = paymentType;
this.privateIpAddress = privateIpAddress;
this.uniqueSuffix = uniqueSuffix;
this.userData = userData;
this.vSwitchId = vSwitchId;
}
@Override
public final java.lang.Object getDataDiskSize() {
return this.dataDiskSize;
}
@Override
public final java.lang.Object getEnsRegionId() {
return this.ensRegionId;
}
@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 getPeriod() {
return this.period;
}
@Override
public final java.lang.Object getQuantity() {
return this.quantity;
}
@Override
public final java.lang.Object getSystemDiskSize() {
return this.systemDiskSize;
}
@Override
public final java.lang.Object getAutoRenew() {
return this.autoRenew;
}
@Override
public final java.lang.Object getAutoRenewPeriod() {
return this.autoRenewPeriod;
}
@Override
public final java.lang.Object getHostName() {
return this.hostName;
}
@Override
public final java.lang.Object getInstanceName() {
return this.instanceName;
}
@Override
public final java.lang.Object getInternetChargeType() {
return this.internetChargeType;
}
@Override
public final java.lang.Object getIpType() {
return this.ipType;
}
@Override
public final java.lang.Object getKeyPairName() {
return this.keyPairName;
}
@Override
public final java.lang.Object getPassword() {
return this.password;
}
@Override
public final java.lang.Object getPaymentType() {
return this.paymentType;
}
@Override
public final java.lang.Object getPrivateIpAddress() {
return this.privateIpAddress;
}
@Override
public final java.lang.Object getUniqueSuffix() {
return this.uniqueSuffix;
}
@Override
public final java.lang.Object getUserData() {
return this.userData;
}
@Override
public final java.lang.Object getVSwitchId() {
return this.vSwitchId;
}
@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("dataDiskSize", om.valueToTree(this.getDataDiskSize()));
data.set("ensRegionId", om.valueToTree(this.getEnsRegionId()));
data.set("imageId", om.valueToTree(this.getImageId()));
data.set("instanceType", om.valueToTree(this.getInstanceType()));
data.set("period", om.valueToTree(this.getPeriod()));
data.set("quantity", om.valueToTree(this.getQuantity()));
data.set("systemDiskSize", om.valueToTree(this.getSystemDiskSize()));
if (this.getAutoRenew() != null) {
data.set("autoRenew", om.valueToTree(this.getAutoRenew()));
}
if (this.getAutoRenewPeriod() != null) {
data.set("autoRenewPeriod", om.valueToTree(this.getAutoRenewPeriod()));
}
if (this.getHostName() != null) {
data.set("hostName", om.valueToTree(this.getHostName()));
}
if (this.getInstanceName() != null) {
data.set("instanceName", om.valueToTree(this.getInstanceName()));
}
if (this.getInternetChargeType() != null) {
data.set("internetChargeType", om.valueToTree(this.getInternetChargeType()));
}
if (this.getIpType() != null) {
data.set("ipType", om.valueToTree(this.getIpType()));
}
if (this.getKeyPairName() != null) {
data.set("keyPairName", om.valueToTree(this.getKeyPairName()));
}
if (this.getPassword() != null) {
data.set("password", om.valueToTree(this.getPassword()));
}
if (this.getPaymentType() != null) {
data.set("paymentType", om.valueToTree(this.getPaymentType()));
}
if (this.getPrivateIpAddress() != null) {
data.set("privateIpAddress", om.valueToTree(this.getPrivateIpAddress()));
}
if (this.getUniqueSuffix() != null) {
data.set("uniqueSuffix", om.valueToTree(this.getUniqueSuffix()));
}
if (this.getUserData() != null) {
data.set("userData", om.valueToTree(this.getUserData()));
}
if (this.getVSwitchId() != null) {
data.set("vSwitchId", om.valueToTree(this.getVSwitchId()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-ens.RosInstanceProps"));
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;
RosInstanceProps.Jsii$Proxy that = (RosInstanceProps.Jsii$Proxy) o;
if (!dataDiskSize.equals(that.dataDiskSize)) return false;
if (!ensRegionId.equals(that.ensRegionId)) return false;
if (!imageId.equals(that.imageId)) return false;
if (!instanceType.equals(that.instanceType)) return false;
if (!period.equals(that.period)) return false;
if (!quantity.equals(that.quantity)) return false;
if (!systemDiskSize.equals(that.systemDiskSize)) return false;
if (this.autoRenew != null ? !this.autoRenew.equals(that.autoRenew) : that.autoRenew != null) return false;
if (this.autoRenewPeriod != null ? !this.autoRenewPeriod.equals(that.autoRenewPeriod) : that.autoRenewPeriod != null) return false;
if (this.hostName != null ? !this.hostName.equals(that.hostName) : that.hostName != null) return false;
if (this.instanceName != null ? !this.instanceName.equals(that.instanceName) : that.instanceName != null) return false;
if (this.internetChargeType != null ? !this.internetChargeType.equals(that.internetChargeType) : that.internetChargeType != null) return false;
if (this.ipType != null ? !this.ipType.equals(that.ipType) : that.ipType != null) return false;
if (this.keyPairName != null ? !this.keyPairName.equals(that.keyPairName) : that.keyPairName != null) return false;
if (this.password != null ? !this.password.equals(that.password) : that.password != null) return false;
if (this.paymentType != null ? !this.paymentType.equals(that.paymentType) : that.paymentType != null) return false;
if (this.privateIpAddress != null ? !this.privateIpAddress.equals(that.privateIpAddress) : that.privateIpAddress != null) return false;
if (this.uniqueSuffix != null ? !this.uniqueSuffix.equals(that.uniqueSuffix) : that.uniqueSuffix != null) return false;
if (this.userData != null ? !this.userData.equals(that.userData) : that.userData != null) return false;
return this.vSwitchId != null ? this.vSwitchId.equals(that.vSwitchId) : that.vSwitchId == null;
}
@Override
public final int hashCode() {
int result = this.dataDiskSize.hashCode();
result = 31 * result + (this.ensRegionId.hashCode());
result = 31 * result + (this.imageId.hashCode());
result = 31 * result + (this.instanceType.hashCode());
result = 31 * result + (this.period.hashCode());
result = 31 * result + (this.quantity.hashCode());
result = 31 * result + (this.systemDiskSize.hashCode());
result = 31 * result + (this.autoRenew != null ? this.autoRenew.hashCode() : 0);
result = 31 * result + (this.autoRenewPeriod != null ? this.autoRenewPeriod.hashCode() : 0);
result = 31 * result + (this.hostName != null ? this.hostName.hashCode() : 0);
result = 31 * result + (this.instanceName != null ? this.instanceName.hashCode() : 0);
result = 31 * result + (this.internetChargeType != null ? this.internetChargeType.hashCode() : 0);
result = 31 * result + (this.ipType != null ? this.ipType.hashCode() : 0);
result = 31 * result + (this.keyPairName != null ? this.keyPairName.hashCode() : 0);
result = 31 * result + (this.password != null ? this.password.hashCode() : 0);
result = 31 * result + (this.paymentType != null ? this.paymentType.hashCode() : 0);
result = 31 * result + (this.privateIpAddress != null ? this.privateIpAddress.hashCode() : 0);
result = 31 * result + (this.uniqueSuffix != null ? this.uniqueSuffix.hashCode() : 0);
result = 31 * result + (this.userData != null ? this.userData.hashCode() : 0);
result = 31 * result + (this.vSwitchId != null ? this.vSwitchId.hashCode() : 0);
return result;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy