Class KmsCryptoKeyConfig.Jsii$Proxy

  • All Implemented Interfaces:
    KmsCryptoKeyConfig, com.hashicorp.cdktf.TerraformMetaArguments, software.amazon.jsii.JsiiSerializable
    Enclosing interface:
    KmsCryptoKeyConfig

    @Stability(Stable)
    @Internal
    public static final class KmsCryptoKeyConfig.Jsii$Proxy
    extends software.amazon.jsii.JsiiObject
    implements KmsCryptoKeyConfig
    An implementation for KmsCryptoKeyConfig
    • Constructor Detail

      • Jsii$Proxy

        protected Jsii$Proxy​(software.amazon.jsii.JsiiObjectRef objRef)
        Constructor that initializes the object based on values retrieved from the JsiiObject.
        Parameters:
        objRef - Reference to the JSII managed object.
    • Method Detail

      • getKeyRing

        public final String getKeyRing()
        Description copied from interface: KmsCryptoKeyConfig
        The KeyRing that this key belongs to. Format: ''projects/{{project}}/locations/{{location}}/keyRings/{{keyRing}}''.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#key_ring KmsCryptoKey#key_ring}

        Specified by:
        getKeyRing in interface KmsCryptoKeyConfig
      • getName

        public final String getName()
        Description copied from interface: KmsCryptoKeyConfig
        The resource name for the CryptoKey.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#name KmsCryptoKey#name}

        Specified by:
        getName in interface KmsCryptoKeyConfig
      • getCryptoKeyBackend

        public final String getCryptoKeyBackend()
        Description copied from interface: KmsCryptoKeyConfig
        The resource name of the backend environment associated with all CryptoKeyVersions within this CryptoKey.

        The resource name is in the format "projects/* /locations/* /ekmConnections/*" and only applies to "EXTERNAL_VPC" keys. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#crypto_key_backend KmsCryptoKey#crypto_key_backend} Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.

        Specified by:
        getCryptoKeyBackend in interface KmsCryptoKeyConfig
      • getDestroyScheduledDuration

        public final String getDestroyScheduledDuration()
        Description copied from interface: KmsCryptoKeyConfig
        The period of time that versions of this key spend in the DESTROY_SCHEDULED state before transitioning to DESTROYED.

        If not specified at creation time, the default duration is 30 days. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#destroy_scheduled_duration KmsCryptoKey#destroy_scheduled_duration}

        Specified by:
        getDestroyScheduledDuration in interface KmsCryptoKeyConfig
      • getId

        public final String getId()
        Description copied from interface: KmsCryptoKeyConfig
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#id KmsCryptoKey#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.

        Specified by:
        getId in interface KmsCryptoKeyConfig
      • getImportOnly

        public final Object getImportOnly()
        Description copied from interface: KmsCryptoKeyConfig
        Whether this key may contain imported versions only.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#import_only KmsCryptoKey#import_only}

        Specified by:
        getImportOnly in interface KmsCryptoKeyConfig
      • getLabels

        public final Map<String,​String> getLabels()
        Description copied from interface: KmsCryptoKeyConfig
        Labels with user-defined metadata to apply to this resource.

        **Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#labels KmsCryptoKey#labels}

        Specified by:
        getLabels in interface KmsCryptoKeyConfig
      • getPurpose

        public final String getPurpose()
        Description copied from interface: KmsCryptoKeyConfig
        The immutable purpose of this CryptoKey. See the purpose reference for possible inputs. Default value is "ENCRYPT_DECRYPT".

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#purpose KmsCryptoKey#purpose}

        Specified by:
        getPurpose in interface KmsCryptoKeyConfig
      • getRotationPeriod

        public final String getRotationPeriod()
        Description copied from interface: KmsCryptoKeyConfig
        Every time this period passes, generate a new CryptoKeyVersion and set it as the primary.

        The first rotation will take place after the specified period. The rotation period has the format of a decimal number with up to 9 fractional digits, followed by the letter 's' (seconds). It must be greater than a day (ie, 86400). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#rotation_period KmsCryptoKey#rotation_period}

        Specified by:
        getRotationPeriod in interface KmsCryptoKeyConfig
      • getSkipInitialVersionCreation

        public final Object getSkipInitialVersionCreation()
        Description copied from interface: KmsCryptoKeyConfig
        If set to true, the request will create a CryptoKey without any CryptoKeyVersions.

        You must use the 'google_kms_crypto_key_version' resource to create a new CryptoKeyVersion or 'google_kms_key_ring_import_job' resource to import the CryptoKeyVersion. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#skip_initial_version_creation KmsCryptoKey#skip_initial_version_creation}

        Specified by:
        getSkipInitialVersionCreation in interface KmsCryptoKeyConfig
      • getTimeouts

        public final KmsCryptoKeyTimeouts getTimeouts()
        Description copied from interface: KmsCryptoKeyConfig
        timeouts block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#timeouts KmsCryptoKey#timeouts}

        Specified by:
        getTimeouts in interface KmsCryptoKeyConfig
      • getVersionTemplate

        public final KmsCryptoKeyVersionTemplate getVersionTemplate()
        Description copied from interface: KmsCryptoKeyConfig
        version_template block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/kms_crypto_key#version_template KmsCryptoKey#version_template}

        Specified by:
        getVersionTemplate in interface KmsCryptoKeyConfig
      • getConnection

        public final Object getConnection()
        Specified by:
        getConnection in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getCount

        public final Object getCount()
        Specified by:
        getCount in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getDependsOn

        public final List<com.hashicorp.cdktf.ITerraformDependable> getDependsOn()
        Specified by:
        getDependsOn in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getForEach

        public final com.hashicorp.cdktf.ITerraformIterator getForEach()
        Specified by:
        getForEach in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getLifecycle

        public final com.hashicorp.cdktf.TerraformResourceLifecycle getLifecycle()
        Specified by:
        getLifecycle in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getProvider

        public final com.hashicorp.cdktf.TerraformProvider getProvider()
        Specified by:
        getProvider in interface com.hashicorp.cdktf.TerraformMetaArguments
      • getProvisioners

        public final List<Object> getProvisioners()
        Specified by:
        getProvisioners in interface com.hashicorp.cdktf.TerraformMetaArguments
      • $jsii$toJson

        @Internal
        public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
        Specified by:
        $jsii$toJson in interface software.amazon.jsii.JsiiSerializable
      • hashCode

        public final int hashCode()
        Overrides:
        hashCode in class Object