Class EncryptionConfig.Builder (6.87.0)

public static final class EncryptionConfig.Builder extends GeneratedMessageV3.Builder<EncryptionConfig.Builder> implements EncryptionConfigOrBuilder

Encryption configuration for a Cloud Spanner database.

Protobuf type google.spanner.admin.database.v1.EncryptionConfig

Static Methods

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
TypeDescription
Descriptor

Methods

addAllKmsKeyNames(Iterable<String> values)

public EncryptionConfig.Builder addAllKmsKeyNames(Iterable<String> values)

Specifies the KMS configuration for the one or more keys used to encrypt the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

The keys referenced by kms_key_names must fully cover all regions of the database instance configuration. Some examples:

  • For single region database instance configs, specify a single regional location KMS key.
  • For multi-regional database instance configs of type GOOGLE_MANAGED, either specify a multi-regional location KMS key or multiple regional location KMS keys that cover all regions in the instance config.
  • For a database instance config of type USER_MANAGED, please specify only regional location KMS keys to cover each region in the instance config. Multi-regional location KMS keys are not supported for USER_MANAGED instance configs.

repeated string kms_key_names = 3 [(.google.api.resource_reference) = { ... }

Parameter
NameDescription
valuesIterable<String>

The kmsKeyNames to add.

Returns
TypeDescription
EncryptionConfig.Builder

This builder for chaining.

addKmsKeyNames(String value)

public EncryptionConfig.Builder addKmsKeyNames(String value)

Specifies the KMS configuration for the one or more keys used to encrypt the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

The keys referenced by kms_key_names must fully cover all regions of the database instance configuration. Some examples:

  • For single region database instance configs, specify a single regional location KMS key.
  • For multi-regional database instance configs of type GOOGLE_MANAGED, either specify a multi-regional location KMS key or multiple regional location KMS keys that cover all regions in the instance config.
  • For a database instance config of type USER_MANAGED, please specify only regional location KMS keys to cover each region in the instance config. Multi-regional location KMS keys are not supported for USER_MANAGED instance configs.

repeated string kms_key_names = 3 [(.google.api.resource_reference) = { ... }

Parameter
NameDescription
valueString

The kmsKeyNames to add.

Returns
TypeDescription
EncryptionConfig.Builder

This builder for chaining.

addKmsKeyNamesBytes(ByteString value)

public EncryptionConfig.Builder addKmsKeyNamesBytes(ByteString value)

Specifies the KMS configuration for the one or more keys used to encrypt the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

The keys referenced by kms_key_names must fully cover all regions of the database instance configuration. Some examples:

  • For single region database instance configs, specify a single regional location KMS key.
  • For multi-regional database instance configs of type GOOGLE_MANAGED, either specify a multi-regional location KMS key or multiple regional location KMS keys that cover all regions in the instance config.
  • For a database instance config of type USER_MANAGED, please specify only regional location KMS keys to cover each region in the instance config. Multi-regional location KMS keys are not supported for USER_MANAGED instance configs.

repeated string kms_key_names = 3 [(.google.api.resource_reference) = { ... }

Parameter
NameDescription
valueByteString

The bytes of the kmsKeyNames to add.

Returns
TypeDescription
EncryptionConfig.Builder

This builder for chaining.

addRepeatedField(Descriptors.FieldDescriptor field, Object value)

public EncryptionConfig.Builder addRepeatedField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
EncryptionConfig.Builder
Overrides

build()

public EncryptionConfig build()
Returns
TypeDescription
EncryptionConfig

buildPartial()

public EncryptionConfig buildPartial()
Returns
TypeDescription
EncryptionConfig

clear()

public EncryptionConfig.Builder clear()
Returns
TypeDescription
EncryptionConfig.Builder
Overrides

clearField(Descriptors.FieldDescriptor field)

public EncryptionConfig.Builder clearField(Descriptors.FieldDescriptor field)
Parameter
NameDescription
fieldFieldDescriptor
Returns
TypeDescription
EncryptionConfig.Builder
Overrides

clearKmsKeyName()

public EncryptionConfig.Builder clearKmsKeyName()

The Cloud KMS key to be used for encrypting and decrypting the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

string kms_key_name = 2 [(.google.api.resource_reference) = { ... }

Returns
TypeDescription
EncryptionConfig.Builder

This builder for chaining.

clearKmsKeyNames()

public EncryptionConfig.Builder clearKmsKeyNames()

Specifies the KMS configuration for the one or more keys used to encrypt the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

The keys referenced by kms_key_names must fully cover all regions of the database instance configuration. Some examples:

  • For single region database instance configs, specify a single regional location KMS key.
  • For multi-regional database instance configs of type GOOGLE_MANAGED, either specify a multi-regional location KMS key or multiple regional location KMS keys that cover all regions in the instance config.
  • For a database instance config of type USER_MANAGED, please specify only regional location KMS keys to cover each region in the instance config. Multi-regional location KMS keys are not supported for USER_MANAGED instance configs.

repeated string kms_key_names = 3 [(.google.api.resource_reference) = { ... }

Returns
TypeDescription
EncryptionConfig.Builder

This builder for chaining.

clearOneof(Descriptors.OneofDescriptor oneof)

public EncryptionConfig.Builder clearOneof(Descriptors.OneofDescriptor oneof)
Parameter
NameDescription
oneofOneofDescriptor
Returns
TypeDescription
EncryptionConfig.Builder
Overrides

clone()

public EncryptionConfig.Builder clone()
Returns
TypeDescription
EncryptionConfig.Builder
Overrides

getDefaultInstanceForType()

public EncryptionConfig getDefaultInstanceForType()
Returns
TypeDescription
EncryptionConfig

getDescriptorForType()

public Descriptors.Descriptor getDescriptorForType()
Returns
TypeDescription
Descriptor
Overrides

getKmsKeyName()

public String getKmsKeyName()

The Cloud KMS key to be used for encrypting and decrypting the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

string kms_key_name = 2 [(.google.api.resource_reference) = { ... }

Returns
TypeDescription
String

The kmsKeyName.

getKmsKeyNameBytes()

public ByteString getKmsKeyNameBytes()

The Cloud KMS key to be used for encrypting and decrypting the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

string kms_key_name = 2 [(.google.api.resource_reference) = { ... }

Returns
TypeDescription
ByteString

The bytes for kmsKeyName.

getKmsKeyNames(int index)

public String getKmsKeyNames(int index)

Specifies the KMS configuration for the one or more keys used to encrypt the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

The keys referenced by kms_key_names must fully cover all regions of the database instance configuration. Some examples:

  • For single region database instance configs, specify a single regional location KMS key.
  • For multi-regional database instance configs of type GOOGLE_MANAGED, either specify a multi-regional location KMS key or multiple regional location KMS keys that cover all regions in the instance config.
  • For a database instance config of type USER_MANAGED, please specify only regional location KMS keys to cover each region in the instance config. Multi-regional location KMS keys are not supported for USER_MANAGED instance configs.

repeated string kms_key_names = 3 [(.google.api.resource_reference) = { ... }

Parameter
NameDescription
indexint

The index of the element to return.

Returns
TypeDescription
String

The kmsKeyNames at the given index.

getKmsKeyNamesBytes(int index)

public ByteString getKmsKeyNamesBytes(int index)

Specifies the KMS configuration for the one or more keys used to encrypt the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

The keys referenced by kms_key_names must fully cover all regions of the database instance configuration. Some examples:

  • For single region database instance configs, specify a single regional location KMS key.
  • For multi-regional database instance configs of type GOOGLE_MANAGED, either specify a multi-regional location KMS key or multiple regional location KMS keys that cover all regions in the instance config.
  • For a database instance config of type USER_MANAGED, please specify only regional location KMS keys to cover each region in the instance config. Multi-regional location KMS keys are not supported for USER_MANAGED instance configs.

repeated string kms_key_names = 3 [(.google.api.resource_reference) = { ... }

Parameter
NameDescription
indexint

The index of the value to return.

Returns
TypeDescription
ByteString

The bytes of the kmsKeyNames at the given index.

getKmsKeyNamesCount()

public int getKmsKeyNamesCount()

Specifies the KMS configuration for the one or more keys used to encrypt the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

The keys referenced by kms_key_names must fully cover all regions of the database instance configuration. Some examples:

  • For single region database instance configs, specify a single regional location KMS key.
  • For multi-regional database instance configs of type GOOGLE_MANAGED, either specify a multi-regional location KMS key or multiple regional location KMS keys that cover all regions in the instance config.
  • For a database instance config of type USER_MANAGED, please specify only regional location KMS keys to cover each region in the instance config. Multi-regional location KMS keys are not supported for USER_MANAGED instance configs.

repeated string kms_key_names = 3 [(.google.api.resource_reference) = { ... }

Returns
TypeDescription
int

The count of kmsKeyNames.

getKmsKeyNamesList()

public ProtocolStringList getKmsKeyNamesList()

Specifies the KMS configuration for the one or more keys used to encrypt the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

The keys referenced by kms_key_names must fully cover all regions of the database instance configuration. Some examples:

  • For single region database instance configs, specify a single regional location KMS key.
  • For multi-regional database instance configs of type GOOGLE_MANAGED, either specify a multi-regional location KMS key or multiple regional location KMS keys that cover all regions in the instance config.
  • For a database instance config of type USER_MANAGED, please specify only regional location KMS keys to cover each region in the instance config. Multi-regional location KMS keys are not supported for USER_MANAGED instance configs.

repeated string kms_key_names = 3 [(.google.api.resource_reference) = { ... }

Returns
TypeDescription
ProtocolStringList

A list containing the kmsKeyNames.

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
TypeDescription
FieldAccessorTable
Overrides

isInitialized()

public final boolean isInitialized()
Returns
TypeDescription
boolean
Overrides

mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public EncryptionConfig.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputCodedInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
EncryptionConfig.Builder
Overrides
Exceptions
TypeDescription
IOException

mergeFrom(Message other)

public EncryptionConfig.Builder mergeFrom(Message other)
Parameter
NameDescription
otherMessage
Returns
TypeDescription
EncryptionConfig.Builder
Overrides

mergeFrom(EncryptionConfig other)

public EncryptionConfig.Builder mergeFrom(EncryptionConfig other)
Parameter
NameDescription
otherEncryptionConfig
Returns
TypeDescription
EncryptionConfig.Builder

mergeUnknownFields(UnknownFieldSet unknownFields)

public final EncryptionConfig.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
EncryptionConfig.Builder
Overrides

setField(Descriptors.FieldDescriptor field, Object value)

public EncryptionConfig.Builder setField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
EncryptionConfig.Builder
Overrides

setKmsKeyName(String value)

public EncryptionConfig.Builder setKmsKeyName(String value)

The Cloud KMS key to be used for encrypting and decrypting the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

string kms_key_name = 2 [(.google.api.resource_reference) = { ... }

Parameter
NameDescription
valueString

The kmsKeyName to set.

Returns
TypeDescription
EncryptionConfig.Builder

This builder for chaining.

setKmsKeyNameBytes(ByteString value)

public EncryptionConfig.Builder setKmsKeyNameBytes(ByteString value)

The Cloud KMS key to be used for encrypting and decrypting the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

string kms_key_name = 2 [(.google.api.resource_reference) = { ... }

Parameter
NameDescription
valueByteString

The bytes for kmsKeyName to set.

Returns
TypeDescription
EncryptionConfig.Builder

This builder for chaining.

setKmsKeyNames(int index, String value)

public EncryptionConfig.Builder setKmsKeyNames(int index, String value)

Specifies the KMS configuration for the one or more keys used to encrypt the database. Values are of the form projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.

The keys referenced by kms_key_names must fully cover all regions of the database instance configuration. Some examples:

  • For single region database instance configs, specify a single regional location KMS key.
  • For multi-regional database instance configs of type GOOGLE_MANAGED, either specify a multi-regional location KMS key or multiple regional location KMS keys that cover all regions in the instance config.
  • For a database instance config of type USER_MANAGED, please specify only regional location KMS keys to cover each region in the instance config. Multi-regional location KMS keys are not supported for USER_MANAGED instance configs.

repeated string kms_key_names = 3 [(.google.api.resource_reference) = { ... }

Parameters
NameDescription
indexint

The index to set the value at.

valueString

The kmsKeyNames to set.

Returns
TypeDescription
EncryptionConfig.Builder

This builder for chaining.

setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)

public EncryptionConfig.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
Parameters
NameDescription
fieldFieldDescriptor
indexint
valueObject
Returns
TypeDescription
EncryptionConfig.Builder
Overrides

setUnknownFields(UnknownFieldSet unknownFields)

public final EncryptionConfig.Builder setUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
EncryptionConfig.Builder
Overrides