Class InstanceConfig (6.72.0)

public final class InstanceConfig extends GeneratedMessageV3 implements InstanceConfigOrBuilder

A possible configuration for a Cloud Spanner instance. Configurations define the geographic placement of nodes and their replication.

Protobuf type google.spanner.admin.instance.v1.InstanceConfig

Static Fields

BASE_CONFIG_FIELD_NUMBER

public static final int BASE_CONFIG_FIELD_NUMBER
Field Value
Type Description
int

CONFIG_TYPE_FIELD_NUMBER

public static final int CONFIG_TYPE_FIELD_NUMBER
Field Value
Type Description
int

DISPLAY_NAME_FIELD_NUMBER

public static final int DISPLAY_NAME_FIELD_NUMBER
Field Value
Type Description
int

ETAG_FIELD_NUMBER

public static final int ETAG_FIELD_NUMBER
Field Value
Type Description
int

LABELS_FIELD_NUMBER

public static final int LABELS_FIELD_NUMBER
Field Value
Type Description
int

LEADER_OPTIONS_FIELD_NUMBER

public static final int LEADER_OPTIONS_FIELD_NUMBER
Field Value
Type Description
int

NAME_FIELD_NUMBER

public static final int NAME_FIELD_NUMBER
Field Value
Type Description
int

OPTIONAL_REPLICAS_FIELD_NUMBER

public static final int OPTIONAL_REPLICAS_FIELD_NUMBER
Field Value
Type Description
int

RECONCILING_FIELD_NUMBER

public static final int RECONCILING_FIELD_NUMBER
Field Value
Type Description
int

REPLICAS_FIELD_NUMBER

public static final int REPLICAS_FIELD_NUMBER
Field Value
Type Description
int

STATE_FIELD_NUMBER

public static final int STATE_FIELD_NUMBER
Field Value
Type Description
int

Static Methods

getDefaultInstance()

public static InstanceConfig getDefaultInstance()
Returns
Type Description
InstanceConfig

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
Type Description
Descriptor

newBuilder()

public static InstanceConfig.Builder newBuilder()
Returns
Type Description
InstanceConfig.Builder

newBuilder(InstanceConfig prototype)

public static InstanceConfig.Builder newBuilder(InstanceConfig prototype)
Parameter
Name Description
prototype InstanceConfig
Returns
Type Description
InstanceConfig.Builder

parseDelimitedFrom(InputStream input)

public static InstanceConfig parseDelimitedFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
InstanceConfig
Exceptions
Type Description
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
InstanceConfig
Exceptions
Type Description
IOException

parseFrom(byte[] data)

public static InstanceConfig parseFrom(byte[] data)
Parameter
Name Description
data byte[]
Returns
Type Description
InstanceConfig
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data byte[]
extensionRegistry ExtensionRegistryLite
Returns
Type Description
InstanceConfig
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data)

public static InstanceConfig parseFrom(ByteString data)
Parameter
Name Description
data ByteString
Returns
Type Description
InstanceConfig
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteString
extensionRegistry ExtensionRegistryLite
Returns
Type Description
InstanceConfig
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(CodedInputStream input)

public static InstanceConfig parseFrom(CodedInputStream input)
Parameter
Name Description
input CodedInputStream
Returns
Type Description
InstanceConfig
Exceptions
Type Description
IOException

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input CodedInputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
InstanceConfig
Exceptions
Type Description
IOException

parseFrom(InputStream input)

public static InstanceConfig parseFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
InstanceConfig
Exceptions
Type Description
IOException

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
InstanceConfig
Exceptions
Type Description
IOException

parseFrom(ByteBuffer data)

public static InstanceConfig parseFrom(ByteBuffer data)
Parameter
Name Description
data ByteBuffer
Returns
Type Description
InstanceConfig
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteBuffer
extensionRegistry ExtensionRegistryLite
Returns
Type Description
InstanceConfig
Exceptions
Type Description
InvalidProtocolBufferException

parser()

public static Parser<InstanceConfig> parser()
Returns
Type Description
Parser<InstanceConfig>

Methods

containsLabels(String key)

public boolean containsLabels(String key)

Cloud Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. Cloud Labels can be used to filter collections of resources. They can be used to control how resource metrics are aggregated. And they can be used as arguments to policy management rules (e.g. route, firewall, load balancing, etc.).

  • Label keys must be between 1 and 63 characters long and must conform to the following regular expression: a-z{0,62}.
  • Label values must be between 0 and 63 characters long and must conform to the regular expression [a-z0-9_-]{0,63}.
  • No more than 64 labels can be associated with a given resource.

    See https://goo.gl/xmQnxf for more information on and examples of labels.

    If you plan to use labels in your own code, please note that additional characters may be allowed in the future. Therefore, you are advised to use an internal label representation, such as JSON, which doesn't rely upon specific characters being disallowed. For example, representing labels as the string: name + "" + value would prove problematic if we were to allow "" in a future release.

map<string, string> labels = 8;

Parameter
Name Description
key String
Returns
Type Description
boolean

equals(Object obj)

public boolean equals(Object obj)
Parameter
Name Description
obj Object
Returns
Type Description
boolean
Overrides

getBaseConfig()

public String getBaseConfig()

Base configuration name, e.g. projects/<project_name>/instanceConfigs/nam3, based on which this configuration is created. Only set for user managed configurations. base_config must refer to a configuration of type GOOGLE_MANAGED in the same project as this configuration.

string base_config = 7 [(.google.api.resource_reference) = { ... }

Returns
Type Description
String

The baseConfig.

getBaseConfigBytes()

public ByteString getBaseConfigBytes()

Base configuration name, e.g. projects/<project_name>/instanceConfigs/nam3, based on which this configuration is created. Only set for user managed configurations. base_config must refer to a configuration of type GOOGLE_MANAGED in the same project as this configuration.

string base_config = 7 [(.google.api.resource_reference) = { ... }

Returns
Type Description
ByteString

The bytes for baseConfig.

getConfigType()

public InstanceConfig.Type getConfigType()

Output only. Whether this instance config is a Google or User Managed Configuration.

.google.spanner.admin.instance.v1.InstanceConfig.Type config_type = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
InstanceConfig.Type

The configType.

getConfigTypeValue()

public int getConfigTypeValue()

Output only. Whether this instance config is a Google or User Managed Configuration.

.google.spanner.admin.instance.v1.InstanceConfig.Type config_type = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
int

The enum numeric value on the wire for configType.

getDefaultInstanceForType()

public InstanceConfig getDefaultInstanceForType()
Returns
Type Description
InstanceConfig

getDisplayName()

public String getDisplayName()

The name of this instance configuration as it appears in UIs.

string display_name = 2;

Returns
Type Description
String

The displayName.

getDisplayNameBytes()

public ByteString getDisplayNameBytes()

The name of this instance configuration as it appears in UIs.

string display_name = 2;

Returns
Type Description
ByteString

The bytes for displayName.

getEtag()

public String getEtag()

etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a instance config from overwriting each other. It is strongly suggested that systems make use of the etag in the read-modify-write cycle to perform instance config updates in order to avoid race conditions: An etag is returned in the response which contains instance configs, and systems are expected to put that etag in the request to update instance config to ensure that their change will be applied to the same version of the instance config. If no etag is provided in the call to update instance config, then the existing instance config is overwritten blindly.

string etag = 9;

Returns
Type Description
String

The etag.

getEtagBytes()

public ByteString getEtagBytes()

etag is used for optimistic concurrency control as a way to help prevent simultaneous updates of a instance config from overwriting each other. It is strongly suggested that systems make use of the etag in the read-modify-write cycle to perform instance config updates in order to avoid race conditions: An etag is returned in the response which contains instance configs, and systems are expected to put that etag in the request to update instance config to ensure that their change will be applied to the same version of the instance config. If no etag is provided in the call to update instance config, then the existing instance config is overwritten blindly.

string etag = 9;

Returns
Type Description
ByteString

The bytes for etag.

getLabels() (deprecated)

public Map<String,String> getLabels()

Use #getLabelsMap() instead.

Returns
Type Description
Map<String,String>

getLabelsCount()

public int getLabelsCount()

Cloud Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. Cloud Labels can be used to filter collections of resources. They can be used to control how resource metrics are aggregated. And they can be used as arguments to policy management rules (e.g. route, firewall, load balancing, etc.).

  • Label keys must be between 1 and 63 characters long and must conform to the following regular expression: a-z{0,62}.
  • Label values must be between 0 and 63 characters long and must conform to the regular expression [a-z0-9_-]{0,63}.
  • No more than 64 labels can be associated with a given resource.

    See https://goo.gl/xmQnxf for more information on and examples of labels.

    If you plan to use labels in your own code, please note that additional characters may be allowed in the future. Therefore, you are advised to use an internal label representation, such as JSON, which doesn't rely upon specific characters being disallowed. For example, representing labels as the string: name + "" + value would prove problematic if we were to allow "" in a future release.

map<string, string> labels = 8;

Returns
Type Description
int

getLabelsMap()

public Map<String,String> getLabelsMap()

Cloud Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. Cloud Labels can be used to filter collections of resources. They can be used to control how resource metrics are aggregated. And they can be used as arguments to policy management rules (e.g. route, firewall, load balancing, etc.).

  • Label keys must be between 1 and 63 characters long and must conform to the following regular expression: a-z{0,62}.
  • Label values must be between 0 and 63 characters long and must conform to the regular expression [a-z0-9_-]{0,63}.
  • No more than 64 labels can be associated with a given resource.

    See https://goo.gl/xmQnxf for more information on and examples of labels.

    If you plan to use labels in your own code, please note that additional characters may be allowed in the future. Therefore, you are advised to use an internal label representation, such as JSON, which doesn't rely upon specific characters being disallowed. For example, representing labels as the string: name + "" + value would prove problematic if we were to allow "" in a future release.

map<string, string> labels = 8;

Returns
Type Description
Map<String,String>

getLabelsOrDefault(String key, String defaultValue)

public String getLabelsOrDefault(String key, String defaultValue)

Cloud Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. Cloud Labels can be used to filter collections of resources. They can be used to control how resource metrics are aggregated. And they can be used as arguments to policy management rules (e.g. route, firewall, load balancing, etc.).

  • Label keys must be between 1 and 63 characters long and must conform to the following regular expression: a-z{0,62}.
  • Label values must be between 0 and 63 characters long and must conform to the regular expression [a-z0-9_-]{0,63}.
  • No more than 64 labels can be associated with a given resource.

    See https://goo.gl/xmQnxf for more information on and examples of labels.

    If you plan to use labels in your own code, please note that additional characters may be allowed in the future. Therefore, you are advised to use an internal label representation, such as JSON, which doesn't rely upon specific characters being disallowed. For example, representing labels as the string: name + "" + value would prove problematic if we were to allow "" in a future release.

map<string, string> labels = 8;

Parameters
Name Description
key String
defaultValue String
Returns
Type Description
String

getLabelsOrThrow(String key)

public String getLabelsOrThrow(String key)

Cloud Labels are a flexible and lightweight mechanism for organizing cloud resources into groups that reflect a customer's organizational needs and deployment strategies. Cloud Labels can be used to filter collections of resources. They can be used to control how resource metrics are aggregated. And they can be used as arguments to policy management rules (e.g. route, firewall, load balancing, etc.).

  • Label keys must be between 1 and 63 characters long and must conform to the following regular expression: a-z{0,62}.
  • Label values must be between 0 and 63 characters long and must conform to the regular expression [a-z0-9_-]{0,63}.
  • No more than 64 labels can be associated with a given resource.

    See https://goo.gl/xmQnxf for more information on and examples of labels.

    If you plan to use labels in your own code, please note that additional characters may be allowed in the future. Therefore, you are advised to use an internal label representation, such as JSON, which doesn't rely upon specific characters being disallowed. For example, representing labels as the string: name + "" + value would prove problematic if we were to allow "" in a future release.

map<string, string> labels = 8;

Parameter
Name Description
key String
Returns
Type Description
String

getLeaderOptions(int index)

public String getLeaderOptions(int index)

Allowed values of the "default_leader" schema option for databases in instances that use this instance configuration.

repeated string leader_options = 4;

Parameter
Name Description
index int

The index of the element to return.

Returns
Type Description
String

The leaderOptions at the given index.

getLeaderOptionsBytes(int index)

public ByteString getLeaderOptionsBytes(int index)

Allowed values of the "default_leader" schema option for databases in instances that use this instance configuration.

repeated string leader_options = 4;

Parameter
Name Description
index int

The index of the value to return.

Returns
Type Description
ByteString

The bytes of the leaderOptions at the given index.

getLeaderOptionsCount()

public int getLeaderOptionsCount()

Allowed values of the "default_leader" schema option for databases in instances that use this instance configuration.

repeated string leader_options = 4;

Returns
Type Description
int

The count of leaderOptions.

getLeaderOptionsList()

public ProtocolStringList getLeaderOptionsList()

Allowed values of the "default_leader" schema option for databases in instances that use this instance configuration.

repeated string leader_options = 4;

Returns
Type Description
ProtocolStringList

A list containing the leaderOptions.

getName()

public String getName()

A unique identifier for the instance configuration. Values are of the form projects/<project>/instanceConfigs/a-z*.

string name = 1;

Returns
Type Description
String

The name.

getNameBytes()

public ByteString getNameBytes()

A unique identifier for the instance configuration. Values are of the form projects/<project>/instanceConfigs/a-z*.

string name = 1;

Returns
Type Description
ByteString

The bytes for name.

getOptionalReplicas(int index)

public ReplicaInfo getOptionalReplicas(int index)

Output only. The available optional replicas to choose from for user managed configurations. Populated for Google managed configurations.

repeated .google.spanner.admin.instance.v1.ReplicaInfo optional_replicas = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
index int
Returns
Type Description
ReplicaInfo

getOptionalReplicasCount()

public int getOptionalReplicasCount()

Output only. The available optional replicas to choose from for user managed configurations. Populated for Google managed configurations.

repeated .google.spanner.admin.instance.v1.ReplicaInfo optional_replicas = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
int

getOptionalReplicasList()

public List<ReplicaInfo> getOptionalReplicasList()

Output only. The available optional replicas to choose from for user managed configurations. Populated for Google managed configurations.

repeated .google.spanner.admin.instance.v1.ReplicaInfo optional_replicas = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
List<ReplicaInfo>

getOptionalReplicasOrBuilder(int index)

public ReplicaInfoOrBuilder getOptionalReplicasOrBuilder(int index)

Output only. The available optional replicas to choose from for user managed configurations. Populated for Google managed configurations.

repeated .google.spanner.admin.instance.v1.ReplicaInfo optional_replicas = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
Name Description
index int
Returns
Type Description
ReplicaInfoOrBuilder

getOptionalReplicasOrBuilderList()

public List<? extends ReplicaInfoOrBuilder> getOptionalReplicasOrBuilderList()

Output only. The available optional replicas to choose from for user managed configurations. Populated for Google managed configurations.

repeated .google.spanner.admin.instance.v1.ReplicaInfo optional_replicas = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
List<? extends com.google.spanner.admin.instance.v1.ReplicaInfoOrBuilder>

getParserForType()

public Parser<InstanceConfig> getParserForType()
Returns
Type Description
Parser<InstanceConfig>
Overrides

getReconciling()

public boolean getReconciling()

Output only. If true, the instance config is being created or updated. If false, there are no ongoing operations for the instance config.

bool reconciling = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
boolean

The reconciling.

getReplicas(int index)

public ReplicaInfo getReplicas(int index)

The geographic placement of nodes in this instance configuration and their replication properties.

repeated .google.spanner.admin.instance.v1.ReplicaInfo replicas = 3;

Parameter
Name Description
index int
Returns
Type Description
ReplicaInfo

getReplicasCount()

public int getReplicasCount()

The geographic placement of nodes in this instance configuration and their replication properties.

repeated .google.spanner.admin.instance.v1.ReplicaInfo replicas = 3;

Returns
Type Description
int

getReplicasList()

public List<ReplicaInfo> getReplicasList()

The geographic placement of nodes in this instance configuration and their replication properties.

repeated .google.spanner.admin.instance.v1.ReplicaInfo replicas = 3;

Returns
Type Description
List<ReplicaInfo>

getReplicasOrBuilder(int index)

public ReplicaInfoOrBuilder getReplicasOrBuilder(int index)

The geographic placement of nodes in this instance configuration and their replication properties.

repeated .google.spanner.admin.instance.v1.ReplicaInfo replicas = 3;

Parameter
Name Description
index int
Returns
Type Description
ReplicaInfoOrBuilder

getReplicasOrBuilderList()

public List<? extends ReplicaInfoOrBuilder> getReplicasOrBuilderList()

The geographic placement of nodes in this instance configuration and their replication properties.

repeated .google.spanner.admin.instance.v1.ReplicaInfo replicas = 3;

Returns
Type Description
List<? extends com.google.spanner.admin.instance.v1.ReplicaInfoOrBuilder>

getSerializedSize()

public int getSerializedSize()
Returns
Type Description
int
Overrides

getState()

public InstanceConfig.State getState()

Output only. The current instance config state.

.google.spanner.admin.instance.v1.InstanceConfig.State state = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
InstanceConfig.State

The state.

getStateValue()

public int getStateValue()

Output only. The current instance config state.

.google.spanner.admin.instance.v1.InstanceConfig.State state = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
Type Description
int

The enum numeric value on the wire for state.

hashCode()

public int hashCode()
Returns
Type Description
int
Overrides

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Type Description
FieldAccessorTable
Overrides

internalGetMapFieldReflection(int number)

protected MapFieldReflectionAccessor internalGetMapFieldReflection(int number)
Parameter
Name Description
number int
Returns
Type Description
com.google.protobuf.MapFieldReflectionAccessor
Overrides
com.google.protobuf.GeneratedMessageV3.internalGetMapFieldReflection(int)

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

newBuilderForType()

public InstanceConfig.Builder newBuilderForType()
Returns
Type Description
InstanceConfig.Builder

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

protected InstanceConfig.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
Name Description
parent BuilderParent
Returns
Type Description
InstanceConfig.Builder
Overrides

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
Name Description
unused UnusedPrivateParameter
Returns
Type Description
Object
Overrides

toBuilder()

public InstanceConfig.Builder toBuilder()
Returns
Type Description
InstanceConfig.Builder

writeTo(CodedOutputStream output)

public void writeTo(CodedOutputStream output)
Parameter
Name Description
output CodedOutputStream
Overrides
Exceptions
Type Description
IOException