com.hashicorp.cdktf.providers.snowflake.grant_application_role.GrantApplicationRole Maven / Gradle / Ivy
Show all versions of cdktf-provider-snowflake Show documentation
package com.hashicorp.cdktf.providers.snowflake.grant_application_role;
/**
* Represents a {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_application_role snowflake_grant_application_role}.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.101.0 (build b95fe5d)", date = "2024-08-03T03:24:50.424Z")
@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.grantApplicationRole.GrantApplicationRole")
public class GrantApplicationRole extends com.hashicorp.cdktf.TerraformResource {
protected GrantApplicationRole(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected GrantApplicationRole(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
static {
TF_RESOURCE_TYPE = software.amazon.jsii.JsiiObject.jsiiStaticGet(com.hashicorp.cdktf.providers.snowflake.grant_application_role.GrantApplicationRole.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_application_role snowflake_grant_application_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 GrantApplicationRole(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_application_role.GrantApplicationRoleConfig 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 GrantApplicationRole 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 GrantApplicationRole to import. This parameter is required.
* @param importFromId The id of the existing GrantApplicationRole that should be imported. This parameter is required.
* @param provider ? Optional instance of the provider where the GrantApplicationRole 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_application_role.GrantApplicationRole.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 GrantApplicationRole 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 GrantApplicationRole to import. This parameter is required.
* @param importFromId The id of the existing GrantApplicationRole 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_application_role.GrantApplicationRole.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 resetApplicationName() {
software.amazon.jsii.Kernel.call(this, "resetApplicationName", software.amazon.jsii.NativeType.VOID);
}
/**
*/
@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 resetParentAccountRoleName() {
software.amazon.jsii.Kernel.call(this, "resetParentAccountRoleName", 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 getApplicationNameInput() {
return software.amazon.jsii.Kernel.get(this, "applicationNameInput", 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 getApplicationRoleNameInput() {
return software.amazon.jsii.Kernel.get(this, "applicationRoleNameInput", 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 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 getParentAccountRoleNameInput() {
return software.amazon.jsii.Kernel.get(this, "parentAccountRoleNameInput", 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 getApplicationName() {
return software.amazon.jsii.Kernel.get(this, "applicationName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setApplicationName(final @org.jetbrains.annotations.NotNull java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "applicationName", java.util.Objects.requireNonNull(value, "applicationName is required"));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public @org.jetbrains.annotations.NotNull java.lang.String getApplicationRoleName() {
return software.amazon.jsii.Kernel.get(this, "applicationRoleName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setApplicationRoleName(final @org.jetbrains.annotations.NotNull java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "applicationRoleName", java.util.Objects.requireNonNull(value, "applicationRoleName is required"));
}
/**
*/
@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 getParentAccountRoleName() {
return software.amazon.jsii.Kernel.get(this, "parentAccountRoleName", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public void setParentAccountRoleName(final @org.jetbrains.annotations.NotNull java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "parentAccountRoleName", java.util.Objects.requireNonNull(value, "parentAccountRoleName is required"));
}
/**
* A fluent builder for {@link com.hashicorp.cdktf.providers.snowflake.grant_application_role.GrantApplicationRole}.
*/
@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_application_role.GrantApplicationRoleConfig.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_application_role.GrantApplicationRoleConfig.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;
}
/**
* Specifies the identifier for the application role to grant.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_application_role#application_role_name GrantApplicationRole#application_role_name}
*
* @return {@code this}
* @param applicationRoleName Specifies the identifier for the application role to grant. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder applicationRoleName(final java.lang.String applicationRoleName) {
this.config.applicationRoleName(applicationRoleName);
return this;
}
/**
* The fully qualified name of the application on which application role will be granted.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_application_role#application_name GrantApplicationRole#application_name}
*
* @return {@code this}
* @param applicationName The fully qualified name of the application on which application role will be granted. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder applicationName(final java.lang.String applicationName) {
this.config.applicationName(applicationName);
return this;
}
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_application_role#id GrantApplicationRole#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_application_role#id GrantApplicationRole#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 account role on which application role will be granted.
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs/resources/grant_application_role#parent_account_role_name GrantApplicationRole#parent_account_role_name}
*
* @return {@code this}
* @param parentAccountRoleName The fully qualified name of the account role on which application role will be granted. This parameter is required.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder parentAccountRoleName(final java.lang.String parentAccountRoleName) {
this.config.parentAccountRoleName(parentAccountRoleName);
return this;
}
/**
* @return a newly built instance of {@link com.hashicorp.cdktf.providers.snowflake.grant_application_role.GrantApplicationRole}.
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public com.hashicorp.cdktf.providers.snowflake.grant_application_role.GrantApplicationRole build() {
return new com.hashicorp.cdktf.providers.snowflake.grant_application_role.GrantApplicationRole(
this.scope,
this.id,
this.config.build()
);
}
}
}