com.aliyun.ros.cdk.ecs.datasource.RosDisks Maven / Gradle / Ivy
package com.aliyun.ros.cdk.ecs.datasource;
/**
* This class is a base encapsulation around the ROS resource type DATASOURCE::ECS::Disks
, which is used to query the Elastic Block Storage (EBS) devices that you created.
*
* The following EBS devices are supported: cloud disks and local disks.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.85.0 (build 08ee592)", date = "2024-08-22T08:56:20.569Z")
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.ecs.$Module.class, fqn = "@alicloud/ros-cdk-ecs.datasource.RosDisks")
public class RosDisks extends com.aliyun.ros.cdk.core.RosResource {
protected RosDisks(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected RosDisks(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
static {
ROS_RESOURCE_TYPE_NAME = software.amazon.jsii.JsiiObject.jsiiStaticGet(com.aliyun.ros.cdk.ecs.datasource.RosDisks.class, "ROS_RESOURCE_TYPE_NAME", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* @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.
* @param enableResourcePropertyConstraint This parameter is required.
*/
public RosDisks(final @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.core.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.ecs.datasource.RosDisksProps props, final @org.jetbrains.annotations.NotNull java.lang.Boolean enableResourcePropertyConstraint) {
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"), java.util.Objects.requireNonNull(enableResourcePropertyConstraint, "enableResourcePropertyConstraint is required") });
}
@Override
protected @org.jetbrains.annotations.NotNull java.util.Map renderProperties(final @org.jetbrains.annotations.NotNull java.util.Map props) {
return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.call(this, "renderProperties", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)), new Object[] { java.util.Objects.requireNonNull(props, "props is required") }));
}
/**
* The resource type name for this resource class.
*/
public final static java.lang.String ROS_RESOURCE_TYPE_NAME;
/**
*/
public @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.core.IResolvable getAttrDiskIds() {
return software.amazon.jsii.Kernel.get(this, "attrDiskIds", software.amazon.jsii.NativeType.forClass(com.aliyun.ros.cdk.core.IResolvable.class));
}
/**
*/
public @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.core.IResolvable getAttrDisks() {
return software.amazon.jsii.Kernel.get(this, "attrDisks", software.amazon.jsii.NativeType.forClass(com.aliyun.ros.cdk.core.IResolvable.class));
}
@Override
protected @org.jetbrains.annotations.NotNull java.util.Map getRosProperties() {
return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.get(this, "rosProperties", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class))));
}
public @org.jetbrains.annotations.NotNull java.lang.Boolean getEnableResourcePropertyConstraint() {
return software.amazon.jsii.Kernel.get(this, "enableResourcePropertyConstraint", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
}
public void setEnableResourcePropertyConstraint(final @org.jetbrains.annotations.NotNull java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "enableResourcePropertyConstraint", java.util.Objects.requireNonNull(value, "enableResourcePropertyConstraint is required"));
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getAdditionalAttributes() {
return software.amazon.jsii.Kernel.get(this, "additionalAttributes", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setAdditionalAttributes(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "additionalAttributes", value);
}
/**
*/
public void setAdditionalAttributes(final @org.jetbrains.annotations.Nullable java.util.List value) {
if (software.amazon.jsii.Configuration.getRuntimeTypeChecking()) {
for (int __idx_ac66f0 = 0; __idx_ac66f0 < value.size(); __idx_ac66f0++) {
final java.lang.Object __val_ac66f0 = value.get(__idx_ac66f0);
if (
!(__val_ac66f0 instanceof java.lang.String)
&& !(__val_ac66f0 instanceof com.aliyun.ros.cdk.core.IResolvable)
&& !(__val_ac66f0.getClass().equals(software.amazon.jsii.JsiiObject.class))
) {
throw new IllegalArgumentException(
new java.lang.StringBuilder("Expected ")
.append("value").append(".get(").append(__idx_ac66f0).append(")")
.append(" to be one of: java.lang.String, com.aliyun.ros.cdk.core.IResolvable; received ")
.append(__val_ac66f0.getClass()).toString());
}
}
}
software.amazon.jsii.Kernel.set(this, "additionalAttributes", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getAutoSnapshotPolicyId() {
return software.amazon.jsii.Kernel.get(this, "autoSnapshotPolicyId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setAutoSnapshotPolicyId(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "autoSnapshotPolicyId", value);
}
/**
*/
public void setAutoSnapshotPolicyId(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "autoSnapshotPolicyId", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getCategory() {
return software.amazon.jsii.Kernel.get(this, "category", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setCategory(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "category", value);
}
/**
*/
public void setCategory(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "category", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getDeleteAutoSnapshot() {
return software.amazon.jsii.Kernel.get(this, "deleteAutoSnapshot", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setDeleteAutoSnapshot(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "deleteAutoSnapshot", value);
}
/**
*/
public void setDeleteAutoSnapshot(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "deleteAutoSnapshot", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getDeleteWithInstance() {
return software.amazon.jsii.Kernel.get(this, "deleteWithInstance", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setDeleteWithInstance(final @org.jetbrains.annotations.Nullable java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "deleteWithInstance", value);
}
/**
*/
public void setDeleteWithInstance(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "deleteWithInstance", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getDiskChargeType() {
return software.amazon.jsii.Kernel.get(this, "diskChargeType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setDiskChargeType(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "diskChargeType", value);
}
/**
*/
public void setDiskChargeType(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "diskChargeType", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getDiskIds() {
return software.amazon.jsii.Kernel.get(this, "diskIds", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setDiskIds(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "diskIds", value);
}
/**
*/
public void setDiskIds(final @org.jetbrains.annotations.Nullable java.util.List value) {
if (software.amazon.jsii.Configuration.getRuntimeTypeChecking()) {
for (int __idx_ac66f0 = 0; __idx_ac66f0 < value.size(); __idx_ac66f0++) {
final java.lang.Object __val_ac66f0 = value.get(__idx_ac66f0);
if (
!(__val_ac66f0 instanceof java.lang.String)
&& !(__val_ac66f0 instanceof com.aliyun.ros.cdk.core.IResolvable)
&& !(__val_ac66f0.getClass().equals(software.amazon.jsii.JsiiObject.class))
) {
throw new IllegalArgumentException(
new java.lang.StringBuilder("Expected ")
.append("value").append(".get(").append(__idx_ac66f0).append(")")
.append(" to be one of: java.lang.String, com.aliyun.ros.cdk.core.IResolvable; received ")
.append(__val_ac66f0.getClass()).toString());
}
}
}
software.amazon.jsii.Kernel.set(this, "diskIds", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getDiskName() {
return software.amazon.jsii.Kernel.get(this, "diskName", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setDiskName(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "diskName", value);
}
/**
*/
public void setDiskName(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "diskName", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getDiskType() {
return software.amazon.jsii.Kernel.get(this, "diskType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setDiskType(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "diskType", value);
}
/**
*/
public void setDiskType(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "diskType", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getEnableAutomatedSnapshotPolicy() {
return software.amazon.jsii.Kernel.get(this, "enableAutomatedSnapshotPolicy", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setEnableAutomatedSnapshotPolicy(final @org.jetbrains.annotations.Nullable java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "enableAutomatedSnapshotPolicy", value);
}
/**
*/
public void setEnableAutomatedSnapshotPolicy(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "enableAutomatedSnapshotPolicy", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getEnableAutoSnapshot() {
return software.amazon.jsii.Kernel.get(this, "enableAutoSnapshot", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setEnableAutoSnapshot(final @org.jetbrains.annotations.Nullable java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "enableAutoSnapshot", value);
}
/**
*/
public void setEnableAutoSnapshot(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "enableAutoSnapshot", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getEnableShared() {
return software.amazon.jsii.Kernel.get(this, "enableShared", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setEnableShared(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "enableShared", value);
}
/**
*/
public void setEnableShared(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "enableShared", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getEncrypted() {
return software.amazon.jsii.Kernel.get(this, "encrypted", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setEncrypted(final @org.jetbrains.annotations.Nullable java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "encrypted", value);
}
/**
*/
public void setEncrypted(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "encrypted", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getFilters() {
return software.amazon.jsii.Kernel.get(this, "filters", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setFilters(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "filters", value);
}
/**
*/
public void setFilters(final @org.jetbrains.annotations.Nullable java.util.List value) {
if (software.amazon.jsii.Configuration.getRuntimeTypeChecking()) {
for (int __idx_ac66f0 = 0; __idx_ac66f0 < value.size(); __idx_ac66f0++) {
final java.lang.Object __val_ac66f0 = value.get(__idx_ac66f0);
if (
!(__val_ac66f0 instanceof com.aliyun.ros.cdk.ecs.datasource.RosDisks.FiltersProperty)
&& !(__val_ac66f0 instanceof com.aliyun.ros.cdk.core.IResolvable)
&& !(__val_ac66f0.getClass().equals(software.amazon.jsii.JsiiObject.class))
) {
throw new IllegalArgumentException(
new java.lang.StringBuilder("Expected ")
.append("value").append(".get(").append(__idx_ac66f0).append(")")
.append(" to be one of: com.aliyun.ros.cdk.ecs.datasource.RosDisks.FiltersProperty, com.aliyun.ros.cdk.core.IResolvable; received ")
.append(__val_ac66f0.getClass()).toString());
}
}
}
software.amazon.jsii.Kernel.set(this, "filters", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getInstanceId() {
return software.amazon.jsii.Kernel.get(this, "instanceId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setInstanceId(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "instanceId", value);
}
/**
*/
public void setInstanceId(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "instanceId", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getKmsKeyId() {
return software.amazon.jsii.Kernel.get(this, "kmsKeyId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setKmsKeyId(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "kmsKeyId", value);
}
/**
*/
public void setKmsKeyId(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "kmsKeyId", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getMultiAttach() {
return software.amazon.jsii.Kernel.get(this, "multiAttach", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setMultiAttach(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "multiAttach", value);
}
/**
*/
public void setMultiAttach(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "multiAttach", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getPortable() {
return software.amazon.jsii.Kernel.get(this, "portable", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setPortable(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "portable", value);
}
/**
*/
public void setPortable(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "portable", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getRefreshOptions() {
return software.amazon.jsii.Kernel.get(this, "refreshOptions", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setRefreshOptions(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "refreshOptions", value);
}
/**
*/
public void setRefreshOptions(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "refreshOptions", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getResourceGroupId() {
return software.amazon.jsii.Kernel.get(this, "resourceGroupId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setResourceGroupId(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "resourceGroupId", value);
}
/**
*/
public void setResourceGroupId(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "resourceGroupId", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getSnapshotId() {
return software.amazon.jsii.Kernel.get(this, "snapshotId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setSnapshotId(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "snapshotId", value);
}
/**
*/
public void setSnapshotId(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "snapshotId", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getStatus() {
return software.amazon.jsii.Kernel.get(this, "status", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setStatus(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "status", value);
}
/**
*/
public void setStatus(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "status", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.util.List getTags() {
return java.util.Optional.ofNullable((java.util.List)(software.amazon.jsii.Kernel.get(this, "tags", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(com.aliyun.ros.cdk.ecs.datasource.RosDisks.TagsProperty.class))))).map(java.util.Collections::unmodifiableList).orElse(null);
}
/**
*/
public void setTags(final @org.jetbrains.annotations.Nullable java.util.List value) {
software.amazon.jsii.Kernel.set(this, "tags", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getZoneId() {
return software.amazon.jsii.Kernel.get(this, "zoneId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setZoneId(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "zoneId", value);
}
/**
*/
public void setZoneId(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "zoneId", value);
}
/**
*/
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.ecs.$Module.class, fqn = "@alicloud/ros-cdk-ecs.datasource.RosDisks.FiltersProperty")
@software.amazon.jsii.Jsii.Proxy(FiltersProperty.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static interface FiltersProperty extends software.amazon.jsii.JsiiSerializable {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.Object getKey();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getValue() {
return null;
}
/**
* @return a {@link Builder} of {@link FiltersProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link FiltersProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.Object key;
java.lang.Object value;
/**
* Sets the value of {@link FiltersProperty#getKey}
* @param key the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder key(java.lang.String key) {
this.key = key;
return this;
}
/**
* Sets the value of {@link FiltersProperty#getKey}
* @param key the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder key(com.aliyun.ros.cdk.core.IResolvable key) {
this.key = key;
return this;
}
/**
* Sets the value of {@link FiltersProperty#getValue}
* @param value the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder value(java.lang.String value) {
this.value = value;
return this;
}
/**
* Sets the value of {@link FiltersProperty#getValue}
* @param value the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder value(com.aliyun.ros.cdk.core.IResolvable value) {
this.value = value;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link FiltersProperty}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public FiltersProperty build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link FiltersProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements FiltersProperty {
private final java.lang.Object key;
private final java.lang.Object value;
/**
* 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.key = software.amazon.jsii.Kernel.get(this, "key", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.value = software.amazon.jsii.Kernel.get(this, "value", 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.key = java.util.Objects.requireNonNull(builder.key, "key is required");
this.value = builder.value;
}
@Override
public final java.lang.Object getKey() {
return this.key;
}
@Override
public final java.lang.Object getValue() {
return this.value;
}
@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("key", om.valueToTree(this.getKey()));
if (this.getValue() != null) {
data.set("value", om.valueToTree(this.getValue()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-ecs.datasource.RosDisks.FiltersProperty"));
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;
FiltersProperty.Jsii$Proxy that = (FiltersProperty.Jsii$Proxy) o;
if (!key.equals(that.key)) return false;
return this.value != null ? this.value.equals(that.value) : that.value == null;
}
@Override
public final int hashCode() {
int result = this.key.hashCode();
result = 31 * result + (this.value != null ? this.value.hashCode() : 0);
return result;
}
}
}
/**
*/
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.ecs.$Module.class, fqn = "@alicloud/ros-cdk-ecs.datasource.RosDisks.TagsProperty")
@software.amazon.jsii.Jsii.Proxy(TagsProperty.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static interface TagsProperty extends software.amazon.jsii.JsiiSerializable {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.Object getKey();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getValue() {
return null;
}
/**
* @return a {@link Builder} of {@link TagsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link TagsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.Object key;
java.lang.Object value;
/**
* Sets the value of {@link TagsProperty#getKey}
* @param key the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder key(java.lang.String key) {
this.key = key;
return this;
}
/**
* Sets the value of {@link TagsProperty#getKey}
* @param key the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder key(com.aliyun.ros.cdk.core.IResolvable key) {
this.key = key;
return this;
}
/**
* Sets the value of {@link TagsProperty#getValue}
* @param value the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder value(java.lang.String value) {
this.value = value;
return this;
}
/**
* Sets the value of {@link TagsProperty#getValue}
* @param value the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder value(com.aliyun.ros.cdk.core.IResolvable value) {
this.value = value;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link TagsProperty}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public TagsProperty build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link TagsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TagsProperty {
private final java.lang.Object key;
private final java.lang.Object value;
/**
* 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.key = software.amazon.jsii.Kernel.get(this, "key", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.value = software.amazon.jsii.Kernel.get(this, "value", 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.key = java.util.Objects.requireNonNull(builder.key, "key is required");
this.value = builder.value;
}
@Override
public final java.lang.Object getKey() {
return this.key;
}
@Override
public final java.lang.Object getValue() {
return this.value;
}
@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("key", om.valueToTree(this.getKey()));
if (this.getValue() != null) {
data.set("value", om.valueToTree(this.getValue()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-ecs.datasource.RosDisks.TagsProperty"));
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;
TagsProperty.Jsii$Proxy that = (TagsProperty.Jsii$Proxy) o;
if (!key.equals(that.key)) return false;
return this.value != null ? this.value.equals(that.value) : that.value == null;
}
@Override
public final int hashCode() {
int result = this.key.hashCode();
result = 31 * result + (this.value != null ? this.value.hashCode() : 0);
return result;
}
}
}
/**
* A fluent builder for {@link com.aliyun.ros.cdk.ecs.datasource.RosDisks}.
*/
public static final class Builder implements software.amazon.jsii.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.
* @param enableResourcePropertyConstraint This parameter is required.
*/
public static Builder create(final com.aliyun.ros.cdk.core.Construct scope, final java.lang.String id, final java.lang.Boolean enableResourcePropertyConstraint) {
return new Builder(scope, id, enableResourcePropertyConstraint);
}
private final com.aliyun.ros.cdk.core.Construct scope;
private final java.lang.String id;
private final java.lang.Boolean enableResourcePropertyConstraint;
private final com.aliyun.ros.cdk.ecs.datasource.RosDisksProps.Builder props;
private Builder(final com.aliyun.ros.cdk.core.Construct scope, final java.lang.String id, final java.lang.Boolean enableResourcePropertyConstraint) {
this.scope = scope;
this.id = id;
this.enableResourcePropertyConstraint = enableResourcePropertyConstraint;
this.props = new com.aliyun.ros.cdk.ecs.datasource.RosDisksProps.Builder();
}
/**
* @return {@code this}
* @param additionalAttributes This parameter is required.
*/
public Builder additionalAttributes(final com.aliyun.ros.cdk.core.IResolvable additionalAttributes) {
this.props.additionalAttributes(additionalAttributes);
return this;
}
/**
* @return {@code this}
* @param additionalAttributes This parameter is required.
*/
public Builder additionalAttributes(final java.util.List extends java.lang.Object> additionalAttributes) {
this.props.additionalAttributes(additionalAttributes);
return this;
}
/**
* @return {@code this}
* @param autoSnapshotPolicyId This parameter is required.
*/
public Builder autoSnapshotPolicyId(final java.lang.String autoSnapshotPolicyId) {
this.props.autoSnapshotPolicyId(autoSnapshotPolicyId);
return this;
}
/**
* @return {@code this}
* @param autoSnapshotPolicyId This parameter is required.
*/
public Builder autoSnapshotPolicyId(final com.aliyun.ros.cdk.core.IResolvable autoSnapshotPolicyId) {
this.props.autoSnapshotPolicyId(autoSnapshotPolicyId);
return this;
}
/**
* @return {@code this}
* @param category This parameter is required.
*/
public Builder category(final java.lang.String category) {
this.props.category(category);
return this;
}
/**
* @return {@code this}
* @param category This parameter is required.
*/
public Builder category(final com.aliyun.ros.cdk.core.IResolvable category) {
this.props.category(category);
return this;
}
/**
* @return {@code this}
* @param deleteAutoSnapshot This parameter is required.
*/
public Builder deleteAutoSnapshot(final java.lang.String deleteAutoSnapshot) {
this.props.deleteAutoSnapshot(deleteAutoSnapshot);
return this;
}
/**
* @return {@code this}
* @param deleteAutoSnapshot This parameter is required.
*/
public Builder deleteAutoSnapshot(final com.aliyun.ros.cdk.core.IResolvable deleteAutoSnapshot) {
this.props.deleteAutoSnapshot(deleteAutoSnapshot);
return this;
}
/**
* @return {@code this}
* @param deleteWithInstance This parameter is required.
*/
public Builder deleteWithInstance(final java.lang.Boolean deleteWithInstance) {
this.props.deleteWithInstance(deleteWithInstance);
return this;
}
/**
* @return {@code this}
* @param deleteWithInstance This parameter is required.
*/
public Builder deleteWithInstance(final com.aliyun.ros.cdk.core.IResolvable deleteWithInstance) {
this.props.deleteWithInstance(deleteWithInstance);
return this;
}
/**
* @return {@code this}
* @param diskChargeType This parameter is required.
*/
public Builder diskChargeType(final java.lang.String diskChargeType) {
this.props.diskChargeType(diskChargeType);
return this;
}
/**
* @return {@code this}
* @param diskChargeType This parameter is required.
*/
public Builder diskChargeType(final com.aliyun.ros.cdk.core.IResolvable diskChargeType) {
this.props.diskChargeType(diskChargeType);
return this;
}
/**
* @return {@code this}
* @param diskIds This parameter is required.
*/
public Builder diskIds(final com.aliyun.ros.cdk.core.IResolvable diskIds) {
this.props.diskIds(diskIds);
return this;
}
/**
* @return {@code this}
* @param diskIds This parameter is required.
*/
public Builder diskIds(final java.util.List extends java.lang.Object> diskIds) {
this.props.diskIds(diskIds);
return this;
}
/**
* @return {@code this}
* @param diskName This parameter is required.
*/
public Builder diskName(final java.lang.String diskName) {
this.props.diskName(diskName);
return this;
}
/**
* @return {@code this}
* @param diskName This parameter is required.
*/
public Builder diskName(final com.aliyun.ros.cdk.core.IResolvable diskName) {
this.props.diskName(diskName);
return this;
}
/**
* @return {@code this}
* @param diskType This parameter is required.
*/
public Builder diskType(final java.lang.String diskType) {
this.props.diskType(diskType);
return this;
}
/**
* @return {@code this}
* @param diskType This parameter is required.
*/
public Builder diskType(final com.aliyun.ros.cdk.core.IResolvable diskType) {
this.props.diskType(diskType);
return this;
}
/**
* @return {@code this}
* @param enableAutomatedSnapshotPolicy This parameter is required.
*/
public Builder enableAutomatedSnapshotPolicy(final java.lang.Boolean enableAutomatedSnapshotPolicy) {
this.props.enableAutomatedSnapshotPolicy(enableAutomatedSnapshotPolicy);
return this;
}
/**
* @return {@code this}
* @param enableAutomatedSnapshotPolicy This parameter is required.
*/
public Builder enableAutomatedSnapshotPolicy(final com.aliyun.ros.cdk.core.IResolvable enableAutomatedSnapshotPolicy) {
this.props.enableAutomatedSnapshotPolicy(enableAutomatedSnapshotPolicy);
return this;
}
/**
* @return {@code this}
* @param enableAutoSnapshot This parameter is required.
*/
public Builder enableAutoSnapshot(final java.lang.Boolean enableAutoSnapshot) {
this.props.enableAutoSnapshot(enableAutoSnapshot);
return this;
}
/**
* @return {@code this}
* @param enableAutoSnapshot This parameter is required.
*/
public Builder enableAutoSnapshot(final com.aliyun.ros.cdk.core.IResolvable enableAutoSnapshot) {
this.props.enableAutoSnapshot(enableAutoSnapshot);
return this;
}
/**
* @return {@code this}
* @param enableShared This parameter is required.
*/
public Builder enableShared(final java.lang.String enableShared) {
this.props.enableShared(enableShared);
return this;
}
/**
* @return {@code this}
* @param enableShared This parameter is required.
*/
public Builder enableShared(final com.aliyun.ros.cdk.core.IResolvable enableShared) {
this.props.enableShared(enableShared);
return this;
}
/**
* @return {@code this}
* @param encrypted This parameter is required.
*/
public Builder encrypted(final java.lang.Boolean encrypted) {
this.props.encrypted(encrypted);
return this;
}
/**
* @return {@code this}
* @param encrypted This parameter is required.
*/
public Builder encrypted(final com.aliyun.ros.cdk.core.IResolvable encrypted) {
this.props.encrypted(encrypted);
return this;
}
/**
* @return {@code this}
* @param filters This parameter is required.
*/
public Builder filters(final com.aliyun.ros.cdk.core.IResolvable filters) {
this.props.filters(filters);
return this;
}
/**
* @return {@code this}
* @param filters This parameter is required.
*/
public Builder filters(final java.util.List extends java.lang.Object> filters) {
this.props.filters(filters);
return this;
}
/**
* @return {@code this}
* @param instanceId This parameter is required.
*/
public Builder instanceId(final java.lang.String instanceId) {
this.props.instanceId(instanceId);
return this;
}
/**
* @return {@code this}
* @param instanceId This parameter is required.
*/
public Builder instanceId(final com.aliyun.ros.cdk.core.IResolvable instanceId) {
this.props.instanceId(instanceId);
return this;
}
/**
* @return {@code this}
* @param kmsKeyId This parameter is required.
*/
public Builder kmsKeyId(final java.lang.String kmsKeyId) {
this.props.kmsKeyId(kmsKeyId);
return this;
}
/**
* @return {@code this}
* @param kmsKeyId This parameter is required.
*/
public Builder kmsKeyId(final com.aliyun.ros.cdk.core.IResolvable kmsKeyId) {
this.props.kmsKeyId(kmsKeyId);
return this;
}
/**
* @return {@code this}
* @param multiAttach This parameter is required.
*/
public Builder multiAttach(final java.lang.String multiAttach) {
this.props.multiAttach(multiAttach);
return this;
}
/**
* @return {@code this}
* @param multiAttach This parameter is required.
*/
public Builder multiAttach(final com.aliyun.ros.cdk.core.IResolvable multiAttach) {
this.props.multiAttach(multiAttach);
return this;
}
/**
* @return {@code this}
* @param portable This parameter is required.
*/
public Builder portable(final java.lang.String portable) {
this.props.portable(portable);
return this;
}
/**
* @return {@code this}
* @param portable This parameter is required.
*/
public Builder portable(final com.aliyun.ros.cdk.core.IResolvable portable) {
this.props.portable(portable);
return this;
}
/**
* @return {@code this}
* @param refreshOptions This parameter is required.
*/
public Builder refreshOptions(final java.lang.String refreshOptions) {
this.props.refreshOptions(refreshOptions);
return this;
}
/**
* @return {@code this}
* @param refreshOptions This parameter is required.
*/
public Builder refreshOptions(final com.aliyun.ros.cdk.core.IResolvable refreshOptions) {
this.props.refreshOptions(refreshOptions);
return this;
}
/**
* @return {@code this}
* @param resourceGroupId This parameter is required.
*/
public Builder resourceGroupId(final java.lang.String resourceGroupId) {
this.props.resourceGroupId(resourceGroupId);
return this;
}
/**
* @return {@code this}
* @param resourceGroupId This parameter is required.
*/
public Builder resourceGroupId(final com.aliyun.ros.cdk.core.IResolvable resourceGroupId) {
this.props.resourceGroupId(resourceGroupId);
return this;
}
/**
* @return {@code this}
* @param snapshotId This parameter is required.
*/
public Builder snapshotId(final java.lang.String snapshotId) {
this.props.snapshotId(snapshotId);
return this;
}
/**
* @return {@code this}
* @param snapshotId This parameter is required.
*/
public Builder snapshotId(final com.aliyun.ros.cdk.core.IResolvable snapshotId) {
this.props.snapshotId(snapshotId);
return this;
}
/**
* @return {@code this}
* @param status This parameter is required.
*/
public Builder status(final java.lang.String status) {
this.props.status(status);
return this;
}
/**
* @return {@code this}
* @param status This parameter is required.
*/
public Builder status(final com.aliyun.ros.cdk.core.IResolvable status) {
this.props.status(status);
return this;
}
/**
* @return {@code this}
* @param tags This parameter is required.
*/
public Builder tags(final java.util.List extends com.aliyun.ros.cdk.ecs.datasource.RosDisks.TagsProperty> tags) {
this.props.tags(tags);
return this;
}
/**
* @return {@code this}
* @param zoneId This parameter is required.
*/
public Builder zoneId(final java.lang.String zoneId) {
this.props.zoneId(zoneId);
return this;
}
/**
* @return {@code this}
* @param zoneId This parameter is required.
*/
public Builder zoneId(final com.aliyun.ros.cdk.core.IResolvable zoneId) {
this.props.zoneId(zoneId);
return this;
}
/**
* @return a newly built instance of {@link com.aliyun.ros.cdk.ecs.datasource.RosDisks}.
*/
@Override
public com.aliyun.ros.cdk.ecs.datasource.RosDisks build() {
return new com.aliyun.ros.cdk.ecs.datasource.RosDisks(
this.scope,
this.id,
this.props.build(),
this.enableResourcePropertyConstraint
);
}
}
}