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

com.hashicorp.cdktf.providers.snowflake.grant_account_role.GrantAccountRole Maven / Gradle / Ivy

The newest version!
package com.hashicorp.cdktf.providers.snowflake.grant_account_role;

/**
 * Represents a {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_account_role snowflake_grant_account_role}.
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.101.0 (build b95fe5d)", date = "2024-08-03T03:24:50.422Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Jsii(module = com.hashicorp.cdktf.providers.snowflake.$Module.class, fqn = "@cdktf/provider-snowflake.grantAccountRole.GrantAccountRole")
public class GrantAccountRole extends com.hashicorp.cdktf.TerraformResource {

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

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

    static {
        TF_RESOURCE_TYPE = software.amazon.jsii.JsiiObject.jsiiStaticGet(com.hashicorp.cdktf.providers.snowflake.grant_account_role.GrantAccountRole.class, "tfResourceType", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
    }

    /**
     * Create a new {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_account_role snowflake_grant_account_role} Resource.
     * 

* @param scope The scope in which to define this construct. This parameter is required. * @param id The scoped construct ID. This parameter is required. * @param config This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public GrantAccountRole(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.providers.snowflake.grant_account_role.GrantAccountRoleConfig config) { 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(config, "config is required") }); } /** * Generates CDKTF code for importing a GrantAccountRole resource upon running "cdktf plan ". *

* @param scope The scope in which to define this construct. This parameter is required. * @param importToId The construct id used in the generated config for the GrantAccountRole to import. This parameter is required. * @param importFromId The id of the existing GrantAccountRole that should be imported. This parameter is required. * @param provider ? Optional instance of the provider where the GrantAccountRole to import is found. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.ImportableResource generateConfigForImport(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String importToId, final @org.jetbrains.annotations.NotNull java.lang.String importFromId, final @org.jetbrains.annotations.Nullable com.hashicorp.cdktf.TerraformProvider provider) { return software.amazon.jsii.JsiiObject.jsiiStaticCall(com.hashicorp.cdktf.providers.snowflake.grant_account_role.GrantAccountRole.class, "generateConfigForImport", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.ImportableResource.class), new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(importToId, "importToId is required"), java.util.Objects.requireNonNull(importFromId, "importFromId is required"), provider }); } /** * Generates CDKTF code for importing a GrantAccountRole resource upon running "cdktf plan ". *

* @param scope The scope in which to define this construct. This parameter is required. * @param importToId The construct id used in the generated config for the GrantAccountRole to import. This parameter is required. * @param importFromId The id of the existing GrantAccountRole that should be imported. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static @org.jetbrains.annotations.NotNull com.hashicorp.cdktf.ImportableResource generateConfigForImport(final @org.jetbrains.annotations.NotNull software.constructs.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String importToId, final @org.jetbrains.annotations.NotNull java.lang.String importFromId) { return software.amazon.jsii.JsiiObject.jsiiStaticCall(com.hashicorp.cdktf.providers.snowflake.grant_account_role.GrantAccountRole.class, "generateConfigForImport", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.ImportableResource.class), new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(importToId, "importToId is required"), java.util.Objects.requireNonNull(importFromId, "importFromId is required") }); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void resetId() { software.amazon.jsii.Kernel.call(this, "resetId", software.amazon.jsii.NativeType.VOID); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void resetParentRoleName() { software.amazon.jsii.Kernel.call(this, "resetParentRoleName", software.amazon.jsii.NativeType.VOID); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void resetUserName() { software.amazon.jsii.Kernel.call(this, "resetUserName", software.amazon.jsii.NativeType.VOID); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override protected @org.jetbrains.annotations.NotNull java.util.Map synthesizeAttributes() { return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.call(this, "synthesizeAttributes", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)))); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override protected @org.jetbrains.annotations.NotNull java.util.Map synthesizeHclAttributes() { return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.call(this, "synthesizeHclAttributes", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)))); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public final static java.lang.String TF_RESOURCE_TYPE; /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.Nullable java.lang.String getIdInput() { return software.amazon.jsii.Kernel.get(this, "idInput", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.Nullable java.lang.String getParentRoleNameInput() { return software.amazon.jsii.Kernel.get(this, "parentRoleNameInput", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.Nullable java.lang.String getRoleNameInput() { return software.amazon.jsii.Kernel.get(this, "roleNameInput", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.Nullable java.lang.String getUserNameInput() { return software.amazon.jsii.Kernel.get(this, "userNameInput", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getId() { return software.amazon.jsii.Kernel.get(this, "id", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setId(final @org.jetbrains.annotations.NotNull java.lang.String value) { software.amazon.jsii.Kernel.set(this, "id", java.util.Objects.requireNonNull(value, "id is required")); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getParentRoleName() { return software.amazon.jsii.Kernel.get(this, "parentRoleName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setParentRoleName(final @org.jetbrains.annotations.NotNull java.lang.String value) { software.amazon.jsii.Kernel.set(this, "parentRoleName", java.util.Objects.requireNonNull(value, "parentRoleName is required")); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getRoleName() { return software.amazon.jsii.Kernel.get(this, "roleName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setRoleName(final @org.jetbrains.annotations.NotNull java.lang.String value) { software.amazon.jsii.Kernel.set(this, "roleName", java.util.Objects.requireNonNull(value, "roleName is required")); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getUserName() { return software.amazon.jsii.Kernel.get(this, "userName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setUserName(final @org.jetbrains.annotations.NotNull java.lang.String value) { software.amazon.jsii.Kernel.set(this, "userName", java.util.Objects.requireNonNull(value, "userName is required")); } /** * A fluent builder for {@link com.hashicorp.cdktf.providers.snowflake.grant_account_role.GrantAccountRole}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { /** * @return a new instance of {@link Builder}. * @param scope The scope in which to define this construct. This parameter is required. * @param id The scoped construct ID. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static Builder create(final software.constructs.Construct scope, final java.lang.String id) { return new Builder(scope, id); } private final software.constructs.Construct scope; private final java.lang.String id; private final com.hashicorp.cdktf.providers.snowflake.grant_account_role.GrantAccountRoleConfig.Builder config; private Builder(final software.constructs.Construct scope, final java.lang.String id) { this.scope = scope; this.id = id; this.config = new com.hashicorp.cdktf.providers.snowflake.grant_account_role.GrantAccountRoleConfig.Builder(); } /** * @return {@code this} * @param connection This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder connection(final com.hashicorp.cdktf.SSHProvisionerConnection connection) { this.config.connection(connection); return this; } /** * @return {@code this} * @param connection This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder connection(final com.hashicorp.cdktf.WinrmProvisionerConnection connection) { this.config.connection(connection); return this; } /** * @return {@code this} * @param count This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder count(final java.lang.Number count) { this.config.count(count); return this; } /** * @return {@code this} * @param count This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder count(final com.hashicorp.cdktf.TerraformCount count) { this.config.count(count); return this; } /** * @return {@code this} * @param dependsOn This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder dependsOn(final java.util.List dependsOn) { this.config.dependsOn(dependsOn); return this; } /** * @return {@code this} * @param forEach This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder forEach(final com.hashicorp.cdktf.ITerraformIterator forEach) { this.config.forEach(forEach); return this; } /** * @return {@code this} * @param lifecycle This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder lifecycle(final com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle) { this.config.lifecycle(lifecycle); return this; } /** * @return {@code this} * @param provider This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder provider(final com.hashicorp.cdktf.TerraformProvider provider) { this.config.provider(provider); return this; } /** * @return {@code this} * @param provisioners This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Experimental) public Builder provisioners(final java.util.List provisioners) { this.config.provisioners(provisioners); return this; } /** * The fully qualified name of the role which will be granted to the user or parent role. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_account_role#role_name GrantAccountRole#role_name} *

* @return {@code this} * @param roleName The fully qualified name of the role which will be granted to the user or parent role. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder roleName(final java.lang.String roleName) { this.config.roleName(roleName); return this; } /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_account_role#id GrantAccountRole#id}. *

* Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. *

* @return {@code this} * @param id Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_account_role#id GrantAccountRole#id}. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder id(final java.lang.String id) { this.config.id(id); return this; } /** * The fully qualified name of the parent role which will create a parent-child relationship between the roles. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_account_role#parent_role_name GrantAccountRole#parent_role_name} *

* @return {@code this} * @param parentRoleName The fully qualified name of the parent role which will create a parent-child relationship between the roles. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder parentRoleName(final java.lang.String parentRoleName) { this.config.parentRoleName(parentRoleName); return this; } /** * The fully qualified name of the user on which specified role will be granted. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_account_role#user_name GrantAccountRole#user_name} *

* @return {@code this} * @param userName The fully qualified name of the user on which specified role will be granted. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder userName(final java.lang.String userName) { this.config.userName(userName); return this; } /** * @return a newly built instance of {@link com.hashicorp.cdktf.providers.snowflake.grant_account_role.GrantAccountRole}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public com.hashicorp.cdktf.providers.snowflake.grant_account_role.GrantAccountRole build() { return new com.hashicorp.cdktf.providers.snowflake.grant_account_role.GrantAccountRole( this.scope, this.id, this.config.build() ); } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy