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

io.github.hsiehshujeng.cdk.emrserverless.quickdemo.EmrServerlessProps Maven / Gradle / Ivy

There is a newer version: 2.0.614
Show newest version
package io.github.hsiehshujeng.cdk.emrserverless.quickdemo;

/**
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.105.0 (build 0a2adcb)", date = "2024-12-02T01:11:38.398Z")
@software.amazon.jsii.Jsii(module = io.github.hsiehshujeng.cdk.emrserverless.quickdemo.$Module.class, fqn = "cdk-emrserverless-with-delta-lake.EmrServerlessProps")
@software.amazon.jsii.Jsii.Proxy(EmrServerlessProps.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface EmrServerlessProps extends software.amazon.jsii.JsiiSerializable {

    /**
     * Options for which kind of identity will be associated with the Product of the Porfolio in AWS Service Catalog for EMR cluster templates.
     * 

* You can choose either an IAM group, IAM role, or IAM user. If you leave it empty, an IAM user named Administrator with the AdministratorAccess power needs to be created first. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable io.github.hsiehshujeng.cdk.emrserverless.quickdemo.EmrStudioDeveloperStackProps getServiceCatalogProps() { return null; } /** * The subnet IDs for the EMR studio. *

* You can select the subnets from the default VPC in your AWS account. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getSubnetIds() { return null; } /** * Used by the EMR Studio. *

* Default: - 'The default VPC will be used.' */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getVpcId() { return null; } /** * @return a {@link Builder} of {@link EmrServerlessProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link EmrServerlessProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { io.github.hsiehshujeng.cdk.emrserverless.quickdemo.EmrStudioDeveloperStackProps serviceCatalogProps; java.util.List subnetIds; java.lang.String vpcId; /** * Sets the value of {@link EmrServerlessProps#getServiceCatalogProps} * @param serviceCatalogProps Options for which kind of identity will be associated with the Product of the Porfolio in AWS Service Catalog for EMR cluster templates. * You can choose either an IAM group, IAM role, or IAM user. If you leave it empty, an IAM user named Administrator with the AdministratorAccess power needs to be created first. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder serviceCatalogProps(io.github.hsiehshujeng.cdk.emrserverless.quickdemo.EmrStudioDeveloperStackProps serviceCatalogProps) { this.serviceCatalogProps = serviceCatalogProps; return this; } /** * Sets the value of {@link EmrServerlessProps#getSubnetIds} * @param subnetIds The subnet IDs for the EMR studio. * You can select the subnets from the default VPC in your AWS account. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder subnetIds(java.util.List subnetIds) { this.subnetIds = subnetIds; return this; } /** * Sets the value of {@link EmrServerlessProps#getVpcId} * @param vpcId Used by the EMR Studio. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder vpcId(java.lang.String vpcId) { this.vpcId = vpcId; return this; } /** * Builds the configured instance. * @return a new instance of {@link EmrServerlessProps} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public EmrServerlessProps build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link EmrServerlessProps} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements EmrServerlessProps { private final io.github.hsiehshujeng.cdk.emrserverless.quickdemo.EmrStudioDeveloperStackProps serviceCatalogProps; private final java.util.List subnetIds; private final java.lang.String vpcId; /** * 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.serviceCatalogProps = software.amazon.jsii.Kernel.get(this, "serviceCatalogProps", software.amazon.jsii.NativeType.forClass(io.github.hsiehshujeng.cdk.emrserverless.quickdemo.EmrStudioDeveloperStackProps.class)); this.subnetIds = software.amazon.jsii.Kernel.get(this, "subnetIds", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); this.vpcId = software.amazon.jsii.Kernel.get(this, "vpcId", software.amazon.jsii.NativeType.forClass(java.lang.String.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.serviceCatalogProps = builder.serviceCatalogProps; this.subnetIds = builder.subnetIds; this.vpcId = builder.vpcId; } @Override public final io.github.hsiehshujeng.cdk.emrserverless.quickdemo.EmrStudioDeveloperStackProps getServiceCatalogProps() { return this.serviceCatalogProps; } @Override public final java.util.List getSubnetIds() { return this.subnetIds; } @Override public final java.lang.String getVpcId() { return this.vpcId; } @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.getServiceCatalogProps() != null) { data.set("serviceCatalogProps", om.valueToTree(this.getServiceCatalogProps())); } if (this.getSubnetIds() != null) { data.set("subnetIds", om.valueToTree(this.getSubnetIds())); } if (this.getVpcId() != null) { data.set("vpcId", om.valueToTree(this.getVpcId())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("cdk-emrserverless-with-delta-lake.EmrServerlessProps")); 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; EmrServerlessProps.Jsii$Proxy that = (EmrServerlessProps.Jsii$Proxy) o; if (this.serviceCatalogProps != null ? !this.serviceCatalogProps.equals(that.serviceCatalogProps) : that.serviceCatalogProps != null) return false; if (this.subnetIds != null ? !this.subnetIds.equals(that.subnetIds) : that.subnetIds != null) return false; return this.vpcId != null ? this.vpcId.equals(that.vpcId) : that.vpcId == null; } @Override public final int hashCode() { int result = this.serviceCatalogProps != null ? this.serviceCatalogProps.hashCode() : 0; result = 31 * result + (this.subnetIds != null ? this.subnetIds.hashCode() : 0); result = 31 * result + (this.vpcId != null ? this.vpcId.hashCode() : 0); return result; } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy