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

com.aliyun.ros.cdk.ram.RosGroup Maven / Gradle / Ivy

package com.aliyun.ros.cdk.ram;

/**
 * This class is a base encapsulation around the ROS resource type ALIYUN::RAM::Group, which is used to create a Resource Access Management (RAM) user group.
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.85.0 (build 08ee592)", date = "2024-12-13T06:45:10.835Z")
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.ram.$Module.class, fqn = "@alicloud/ros-cdk-ram.RosGroup")
public class RosGroup extends com.aliyun.ros.cdk.core.RosResource {

    protected RosGroup(final software.amazon.jsii.JsiiObjectRef objRef) {
        super(objRef);
    }

    protected RosGroup(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
        super(initializationMode);
    }

    static {
        ROS_RESOURCE_TYPE_NAME = software.amazon.jsii.JsiiObject.jsiiStaticGet(com.aliyun.ros.cdk.ram.RosGroup.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 RosGroup(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.ram.RosGroupProps 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 getAttrGroupName() { return software.amazon.jsii.Kernel.get(this, "attrGroupName", 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.NotNull java.lang.Object getGroupName() { return software.amazon.jsii.Kernel.get(this, "groupName", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** */ public void setGroupName(final @org.jetbrains.annotations.NotNull java.lang.String value) { software.amazon.jsii.Kernel.set(this, "groupName", java.util.Objects.requireNonNull(value, "groupName is required")); } /** */ public void setGroupName(final @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.core.IResolvable value) { software.amazon.jsii.Kernel.set(this, "groupName", java.util.Objects.requireNonNull(value, "groupName is required")); } /** */ public @org.jetbrains.annotations.Nullable java.lang.Object getComments() { return software.amazon.jsii.Kernel.get(this, "comments", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** */ public void setComments(final @org.jetbrains.annotations.Nullable java.lang.String value) { software.amazon.jsii.Kernel.set(this, "comments", value); } /** */ public void setComments(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) { software.amazon.jsii.Kernel.set(this, "comments", value); } /** */ public @org.jetbrains.annotations.Nullable java.lang.Object getDeletionForce() { return software.amazon.jsii.Kernel.get(this, "deletionForce", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** */ public void setDeletionForce(final @org.jetbrains.annotations.Nullable java.lang.Boolean value) { software.amazon.jsii.Kernel.set(this, "deletionForce", value); } /** */ public void setDeletionForce(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) { software.amazon.jsii.Kernel.set(this, "deletionForce", value); } /** */ public @org.jetbrains.annotations.Nullable java.lang.Object getIgnoreExisting() { return software.amazon.jsii.Kernel.get(this, "ignoreExisting", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** */ public void setIgnoreExisting(final @org.jetbrains.annotations.Nullable java.lang.Boolean value) { software.amazon.jsii.Kernel.set(this, "ignoreExisting", value); } /** */ public void setIgnoreExisting(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) { software.amazon.jsii.Kernel.set(this, "ignoreExisting", value); } /** */ public @org.jetbrains.annotations.Nullable java.lang.Object getPolicies() { return software.amazon.jsii.Kernel.get(this, "policies", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** */ public void setPolicies(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) { software.amazon.jsii.Kernel.set(this, "policies", value); } /** */ public void setPolicies(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.core.IResolvable) && !(__val_ac66f0 instanceof com.aliyun.ros.cdk.ram.RosGroup.PoliciesProperty) && !(__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.core.IResolvable, com.aliyun.ros.cdk.ram.RosGroup.PoliciesProperty; received ") .append(__val_ac66f0.getClass()).toString()); } } } software.amazon.jsii.Kernel.set(this, "policies", value); } /** */ public @org.jetbrains.annotations.Nullable java.lang.Object getPolicyAttachments() { return software.amazon.jsii.Kernel.get(this, "policyAttachments", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** */ public void setPolicyAttachments(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) { software.amazon.jsii.Kernel.set(this, "policyAttachments", value); } /** */ public void setPolicyAttachments(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.ram.RosGroup.PolicyAttachmentsProperty value) { software.amazon.jsii.Kernel.set(this, "policyAttachments", value); } /** */ @software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.ram.$Module.class, fqn = "@alicloud/ros-cdk-ram.RosGroup.PoliciesProperty") @software.amazon.jsii.Jsii.Proxy(PoliciesProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface PoliciesProperty extends software.amazon.jsii.JsiiSerializable { /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.Object getPolicyDocument(); /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.Object getPolicyName(); /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getDescription() { return null; } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getIgnoreExisting() { return null; } /** * @return a {@link Builder} of {@link PoliciesProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link PoliciesProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object policyDocument; java.lang.Object policyName; java.lang.Object description; java.lang.Object ignoreExisting; /** * Sets the value of {@link PoliciesProperty#getPolicyDocument} * @param policyDocument the value to be set. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder policyDocument(com.aliyun.ros.cdk.core.IResolvable policyDocument) { this.policyDocument = policyDocument; return this; } /** * Sets the value of {@link PoliciesProperty#getPolicyDocument} * @param policyDocument the value to be set. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder policyDocument(com.aliyun.ros.cdk.ram.RosGroup.PolicyDocumentProperty policyDocument) { this.policyDocument = policyDocument; return this; } /** * Sets the value of {@link PoliciesProperty#getPolicyName} * @param policyName the value to be set. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder policyName(java.lang.String policyName) { this.policyName = policyName; return this; } /** * Sets the value of {@link PoliciesProperty#getPolicyName} * @param policyName the value to be set. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder policyName(com.aliyun.ros.cdk.core.IResolvable policyName) { this.policyName = policyName; return this; } /** * Sets the value of {@link PoliciesProperty#getDescription} * @param description the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder description(java.lang.String description) { this.description = description; return this; } /** * Sets the value of {@link PoliciesProperty#getDescription} * @param description the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder description(com.aliyun.ros.cdk.core.IResolvable description) { this.description = description; return this; } /** * Sets the value of {@link PoliciesProperty#getIgnoreExisting} * @param ignoreExisting the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder ignoreExisting(java.lang.Boolean ignoreExisting) { this.ignoreExisting = ignoreExisting; return this; } /** * Sets the value of {@link PoliciesProperty#getIgnoreExisting} * @param ignoreExisting the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder ignoreExisting(com.aliyun.ros.cdk.core.IResolvable ignoreExisting) { this.ignoreExisting = ignoreExisting; return this; } /** * Builds the configured instance. * @return a new instance of {@link PoliciesProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public PoliciesProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link PoliciesProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements PoliciesProperty { private final java.lang.Object policyDocument; private final java.lang.Object policyName; private final java.lang.Object description; private final java.lang.Object ignoreExisting; /** * 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.policyDocument = software.amazon.jsii.Kernel.get(this, "policyDocument", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.policyName = software.amazon.jsii.Kernel.get(this, "policyName", 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.ignoreExisting = software.amazon.jsii.Kernel.get(this, "ignoreExisting", 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.policyDocument = java.util.Objects.requireNonNull(builder.policyDocument, "policyDocument is required"); this.policyName = java.util.Objects.requireNonNull(builder.policyName, "policyName is required"); this.description = builder.description; this.ignoreExisting = builder.ignoreExisting; } @Override public final java.lang.Object getPolicyDocument() { return this.policyDocument; } @Override public final java.lang.Object getPolicyName() { return this.policyName; } @Override public final java.lang.Object getDescription() { return this.description; } @Override public final java.lang.Object getIgnoreExisting() { return this.ignoreExisting; } @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("policyDocument", om.valueToTree(this.getPolicyDocument())); data.set("policyName", om.valueToTree(this.getPolicyName())); if (this.getDescription() != null) { data.set("description", om.valueToTree(this.getDescription())); } if (this.getIgnoreExisting() != null) { data.set("ignoreExisting", om.valueToTree(this.getIgnoreExisting())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-ram.RosGroup.PoliciesProperty")); 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; PoliciesProperty.Jsii$Proxy that = (PoliciesProperty.Jsii$Proxy) o; if (!policyDocument.equals(that.policyDocument)) return false; if (!policyName.equals(that.policyName)) return false; if (this.description != null ? !this.description.equals(that.description) : that.description != null) return false; return this.ignoreExisting != null ? this.ignoreExisting.equals(that.ignoreExisting) : that.ignoreExisting == null; } @Override public final int hashCode() { int result = this.policyDocument.hashCode(); result = 31 * result + (this.policyName.hashCode()); result = 31 * result + (this.description != null ? this.description.hashCode() : 0); result = 31 * result + (this.ignoreExisting != null ? this.ignoreExisting.hashCode() : 0); return result; } } } /** */ @software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.ram.$Module.class, fqn = "@alicloud/ros-cdk-ram.RosGroup.PolicyAttachmentsProperty") @software.amazon.jsii.Jsii.Proxy(PolicyAttachmentsProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface PolicyAttachmentsProperty extends software.amazon.jsii.JsiiSerializable { /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getCustom() { return null; } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getSystem() { return null; } /** * @return a {@link Builder} of {@link PolicyAttachmentsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link PolicyAttachmentsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object custom; java.lang.Object system; /** * Sets the value of {@link PolicyAttachmentsProperty#getCustom} * @param custom the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder custom(com.aliyun.ros.cdk.core.IResolvable custom) { this.custom = custom; return this; } /** * Sets the value of {@link PolicyAttachmentsProperty#getCustom} * @param custom the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder custom(java.util.List custom) { this.custom = custom; return this; } /** * Sets the value of {@link PolicyAttachmentsProperty#getSystem} * @param system the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder system(com.aliyun.ros.cdk.core.IResolvable system) { this.system = system; return this; } /** * Sets the value of {@link PolicyAttachmentsProperty#getSystem} * @param system the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder system(java.util.List system) { this.system = system; return this; } /** * Builds the configured instance. * @return a new instance of {@link PolicyAttachmentsProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public PolicyAttachmentsProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link PolicyAttachmentsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements PolicyAttachmentsProperty { private final java.lang.Object custom; private final java.lang.Object system; /** * 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.custom = software.amazon.jsii.Kernel.get(this, "custom", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.system = software.amazon.jsii.Kernel.get(this, "system", 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.custom = builder.custom; this.system = builder.system; } @Override public final java.lang.Object getCustom() { return this.custom; } @Override public final java.lang.Object getSystem() { return this.system; } @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(); if (this.getCustom() != null) { data.set("custom", om.valueToTree(this.getCustom())); } if (this.getSystem() != null) { data.set("system", om.valueToTree(this.getSystem())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-ram.RosGroup.PolicyAttachmentsProperty")); 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; PolicyAttachmentsProperty.Jsii$Proxy that = (PolicyAttachmentsProperty.Jsii$Proxy) o; if (this.custom != null ? !this.custom.equals(that.custom) : that.custom != null) return false; return this.system != null ? this.system.equals(that.system) : that.system == null; } @Override public final int hashCode() { int result = this.custom != null ? this.custom.hashCode() : 0; result = 31 * result + (this.system != null ? this.system.hashCode() : 0); return result; } } } /** */ @software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.ram.$Module.class, fqn = "@alicloud/ros-cdk-ram.RosGroup.PolicyDocumentProperty") @software.amazon.jsii.Jsii.Proxy(PolicyDocumentProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface PolicyDocumentProperty extends software.amazon.jsii.JsiiSerializable { /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.Object getStatement(); /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.Object getVersion(); /** * @return a {@link Builder} of {@link PolicyDocumentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link PolicyDocumentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object statement; java.lang.Object version; /** * Sets the value of {@link PolicyDocumentProperty#getStatement} * @param statement the value to be set. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder statement(com.aliyun.ros.cdk.core.IResolvable statement) { this.statement = statement; return this; } /** * Sets the value of {@link PolicyDocumentProperty#getStatement} * @param statement the value to be set. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder statement(java.util.List statement) { this.statement = statement; return this; } /** * Sets the value of {@link PolicyDocumentProperty#getVersion} * @param version the value to be set. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder version(java.lang.String version) { this.version = version; return this; } /** * Sets the value of {@link PolicyDocumentProperty#getVersion} * @param version the value to be set. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder version(com.aliyun.ros.cdk.core.IResolvable version) { this.version = version; return this; } /** * Builds the configured instance. * @return a new instance of {@link PolicyDocumentProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public PolicyDocumentProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link PolicyDocumentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements PolicyDocumentProperty { private final java.lang.Object statement; private final java.lang.Object version; /** * 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.statement = software.amazon.jsii.Kernel.get(this, "statement", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.version = software.amazon.jsii.Kernel.get(this, "version", 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.statement = java.util.Objects.requireNonNull(builder.statement, "statement is required"); this.version = java.util.Objects.requireNonNull(builder.version, "version is required"); } @Override public final java.lang.Object getStatement() { return this.statement; } @Override public final java.lang.Object getVersion() { return this.version; } @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("statement", om.valueToTree(this.getStatement())); data.set("version", om.valueToTree(this.getVersion())); final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-ram.RosGroup.PolicyDocumentProperty")); 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; PolicyDocumentProperty.Jsii$Proxy that = (PolicyDocumentProperty.Jsii$Proxy) o; if (!statement.equals(that.statement)) return false; return this.version.equals(that.version); } @Override public final int hashCode() { int result = this.statement.hashCode(); result = 31 * result + (this.version.hashCode()); return result; } } } /** */ @software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.ram.$Module.class, fqn = "@alicloud/ros-cdk-ram.RosGroup.StatementProperty") @software.amazon.jsii.Jsii.Proxy(StatementProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface StatementProperty extends software.amazon.jsii.JsiiSerializable { /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getAction() { return null; } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getCondition() { return null; } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getEffect() { return null; } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getResource() { return null; } /** * @return a {@link Builder} of {@link StatementProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link StatementProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object action; java.lang.Object condition; java.lang.Object effect; java.lang.Object resource; /** * Sets the value of {@link StatementProperty#getAction} * @param action the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder action(java.util.List action) { this.action = action; return this; } /** * Sets the value of {@link StatementProperty#getAction} * @param action the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder action(com.aliyun.ros.cdk.core.IResolvable action) { this.action = action; return this; } /** * Sets the value of {@link StatementProperty#getCondition} * @param condition the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder condition(com.aliyun.ros.cdk.core.IResolvable condition) { this.condition = condition; return this; } /** * Sets the value of {@link StatementProperty#getCondition} * @param condition the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder condition(java.util.Map condition) { this.condition = condition; return this; } /** * Sets the value of {@link StatementProperty#getEffect} * @param effect the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder effect(java.lang.String effect) { this.effect = effect; return this; } /** * Sets the value of {@link StatementProperty#getEffect} * @param effect the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder effect(com.aliyun.ros.cdk.core.IResolvable effect) { this.effect = effect; return this; } /** * Sets the value of {@link StatementProperty#getResource} * @param resource the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder resource(java.util.List resource) { this.resource = resource; return this; } /** * Sets the value of {@link StatementProperty#getResource} * @param resource the value to be set. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder resource(com.aliyun.ros.cdk.core.IResolvable resource) { this.resource = resource; return this; } /** * Builds the configured instance. * @return a new instance of {@link StatementProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public StatementProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link StatementProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements StatementProperty { private final java.lang.Object action; private final java.lang.Object condition; private final java.lang.Object effect; private final java.lang.Object resource; /** * 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.action = software.amazon.jsii.Kernel.get(this, "action", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.condition = software.amazon.jsii.Kernel.get(this, "condition", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.effect = software.amazon.jsii.Kernel.get(this, "effect", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.resource = software.amazon.jsii.Kernel.get(this, "resource", 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.action = builder.action; this.condition = builder.condition; this.effect = builder.effect; this.resource = builder.resource; } @Override public final java.lang.Object getAction() { return this.action; } @Override public final java.lang.Object getCondition() { return this.condition; } @Override public final java.lang.Object getEffect() { return this.effect; } @Override public final java.lang.Object getResource() { return this.resource; } @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(); if (this.getAction() != null) { data.set("action", om.valueToTree(this.getAction())); } if (this.getCondition() != null) { data.set("condition", om.valueToTree(this.getCondition())); } if (this.getEffect() != null) { data.set("effect", om.valueToTree(this.getEffect())); } if (this.getResource() != null) { data.set("resource", om.valueToTree(this.getResource())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-ram.RosGroup.StatementProperty")); 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; StatementProperty.Jsii$Proxy that = (StatementProperty.Jsii$Proxy) o; if (this.action != null ? !this.action.equals(that.action) : that.action != null) return false; if (this.condition != null ? !this.condition.equals(that.condition) : that.condition != null) return false; if (this.effect != null ? !this.effect.equals(that.effect) : that.effect != null) return false; return this.resource != null ? this.resource.equals(that.resource) : that.resource == null; } @Override public final int hashCode() { int result = this.action != null ? this.action.hashCode() : 0; result = 31 * result + (this.condition != null ? this.condition.hashCode() : 0); result = 31 * result + (this.effect != null ? this.effect.hashCode() : 0); result = 31 * result + (this.resource != null ? this.resource.hashCode() : 0); return result; } } } /** * A fluent builder for {@link com.aliyun.ros.cdk.ram.RosGroup}. */ 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.ram.RosGroupProps.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.ram.RosGroupProps.Builder(); } /** * @return {@code this} * @param groupName This parameter is required. */ public Builder groupName(final java.lang.String groupName) { this.props.groupName(groupName); return this; } /** * @return {@code this} * @param groupName This parameter is required. */ public Builder groupName(final com.aliyun.ros.cdk.core.IResolvable groupName) { this.props.groupName(groupName); return this; } /** * @return {@code this} * @param comments This parameter is required. */ public Builder comments(final java.lang.String comments) { this.props.comments(comments); return this; } /** * @return {@code this} * @param comments This parameter is required. */ public Builder comments(final com.aliyun.ros.cdk.core.IResolvable comments) { this.props.comments(comments); return this; } /** * @return {@code this} * @param deletionForce This parameter is required. */ public Builder deletionForce(final java.lang.Boolean deletionForce) { this.props.deletionForce(deletionForce); return this; } /** * @return {@code this} * @param deletionForce This parameter is required. */ public Builder deletionForce(final com.aliyun.ros.cdk.core.IResolvable deletionForce) { this.props.deletionForce(deletionForce); return this; } /** * @return {@code this} * @param ignoreExisting This parameter is required. */ public Builder ignoreExisting(final java.lang.Boolean ignoreExisting) { this.props.ignoreExisting(ignoreExisting); return this; } /** * @return {@code this} * @param ignoreExisting This parameter is required. */ public Builder ignoreExisting(final com.aliyun.ros.cdk.core.IResolvable ignoreExisting) { this.props.ignoreExisting(ignoreExisting); return this; } /** * @return {@code this} * @param policies This parameter is required. */ public Builder policies(final com.aliyun.ros.cdk.core.IResolvable policies) { this.props.policies(policies); return this; } /** * @return {@code this} * @param policies This parameter is required. */ public Builder policies(final java.util.List policies) { this.props.policies(policies); return this; } /** * @return {@code this} * @param policyAttachments This parameter is required. */ public Builder policyAttachments(final com.aliyun.ros.cdk.core.IResolvable policyAttachments) { this.props.policyAttachments(policyAttachments); return this; } /** * @return {@code this} * @param policyAttachments This parameter is required. */ public Builder policyAttachments(final com.aliyun.ros.cdk.ram.RosGroup.PolicyAttachmentsProperty policyAttachments) { this.props.policyAttachments(policyAttachments); return this; } /** * @return a newly built instance of {@link com.aliyun.ros.cdk.ram.RosGroup}. */ @Override public com.aliyun.ros.cdk.ram.RosGroup build() { return new com.aliyun.ros.cdk.ram.RosGroup( this.scope, this.id, this.props.build(), this.enableResourcePropertyConstraint ); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy