Class InstanceConfig (6.52.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
TypeDescription
int

CONFIG_TYPE_FIELD_NUMBER

public static final int CONFIG_TYPE_FIELD_NUMBER
Field Value
TypeDescription
int

DISPLAY_NAME_FIELD_NUMBER

public static final int DISPLAY_NAME_FIELD_NUMBER
Field Value
TypeDescription
int

ETAG_FIELD_NUMBER

public static final int ETAG_FIELD_NUMBER
Field Value
TypeDescription
int

LABELS_FIELD_NUMBER

public static final int LABELS_FIELD_NUMBER
Field Value
TypeDescription
int

LEADER_OPTIONS_FIELD_NUMBER

public static final int LEADER_OPTIONS_FIELD_NUMBER
Field Value
TypeDescription
int

NAME_FIELD_NUMBER

public static final int NAME_FIELD_NUMBER
Field Value
TypeDescription
int

OPTIONAL_REPLICAS_FIELD_NUMBER

public static final int OPTIONAL_REPLICAS_FIELD_NUMBER
Field Value
TypeDescription
int

RECONCILING_FIELD_NUMBER

public static final int RECONCILING_FIELD_NUMBER
Field Value
TypeDescription
int

REPLICAS_FIELD_NUMBER

public static final int REPLICAS_FIELD_NUMBER
Field Value
TypeDescription
int

STATE_FIELD_NUMBER

public static final int STATE_FIELD_NUMBER
Field Value
TypeDescription
int

Static Methods

getDefaultInstance()

public static InstanceConfig getDefaultInstance()
Returns
TypeDescription
InstanceConfig

getDescriptor()

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

newBuilder()

public static InstanceConfig.Builder newBuilder()
Returns
TypeDescription
InstanceConfig.Builder

newBuilder(InstanceConfig prototype)

public static InstanceConfig.Builder newBuilder(InstanceConfig prototype)
Parameter
NameDescription
prototypeInstanceConfig
Returns
TypeDescription
InstanceConfig.Builder

parseDelimitedFrom(InputStream input)

public static InstanceConfig parseDelimitedFrom(InputStream input)
Parameter
NameDescription
inputInputStream
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
IOException

parseFrom(byte[] data)

public static InstanceConfig parseFrom(byte[] data)
Parameter
NameDescription
databyte[]
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
databyte[]
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(ByteString data)

public static InstanceConfig parseFrom(ByteString data)
Parameter
NameDescription
dataByteString
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
dataByteString
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(CodedInputStream input)

public static InstanceConfig parseFrom(CodedInputStream input)
Parameter
NameDescription
inputCodedInputStream
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
IOException

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputCodedInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
IOException

parseFrom(InputStream input)

public static InstanceConfig parseFrom(InputStream input)
Parameter
NameDescription
inputInputStream
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
IOException

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
IOException

parseFrom(ByteBuffer data)

public static InstanceConfig parseFrom(ByteBuffer data)
Parameter
NameDescription
dataByteBuffer
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

public static InstanceConfig parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
dataByteBuffer
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
InstanceConfig
Exceptions
TypeDescription
InvalidProtocolBufferException

parser()

public static Parser<InstanceConfig> parser()
Returns
TypeDescription
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
NameDescription
keyString
Returns
TypeDescription
boolean

equals(Object obj)

public boolean equals(Object obj)
Parameter
NameDescription
objObject
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
int

The enum numeric value on the wire for configType.

getDefaultInstanceForType()

public InstanceConfig getDefaultInstanceForType()
Returns
TypeDescription
InstanceConfig

getDisplayName()

public String getDisplayName()

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

string display_name = 2;

Returns
TypeDescription
String

The displayName.

getDisplayNameBytes()

public ByteString getDisplayNameBytes()

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

string display_name = 2;

Returns
TypeDescription
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
TypeDescription
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
TypeDescription
ByteString

The bytes for etag.

getLabels()

public Map<String,String> getLabels()

Use #getLabelsMap() instead.

Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
NameDescription
keyString
defaultValueString
Returns
TypeDescription
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
NameDescription
keyString
Returns
TypeDescription
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
NameDescription
indexint

The index of the element to return.

Returns
TypeDescription
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
NameDescription
indexint

The index of the value to return.

Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
TypeDescription
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
NameDescription
indexint
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
NameDescription
indexint
Returns
TypeDescription
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
TypeDescription
List<? extends com.google.spanner.admin.instance.v1.ReplicaInfoOrBuilder>

getParserForType()

public Parser<InstanceConfig> getParserForType()
Returns
TypeDescription
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
TypeDescription
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
NameDescription
indexint
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
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
NameDescription
indexint
Returns
TypeDescription
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
TypeDescription
List<? extends com.google.spanner.admin.instance.v1.ReplicaInfoOrBuilder>

getSerializedSize()

public int getSerializedSize()
Returns
TypeDescription
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
TypeDescription
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
TypeDescription
int

The enum numeric value on the wire for state.

hashCode()

public int hashCode()
Returns
TypeDescription
int
Overrides

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
TypeDescription
FieldAccessorTable
Overrides

internalGetMapField(int number)

protected MapField internalGetMapField(int number)
Parameter
NameDescription
numberint
Returns
TypeDescription
MapField
Overrides

isInitialized()

public final boolean isInitialized()
Returns
TypeDescription
boolean
Overrides

newBuilderForType()

public InstanceConfig.Builder newBuilderForType()
Returns
TypeDescription
InstanceConfig.Builder

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

protected InstanceConfig.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
NameDescription
parentBuilderParent
Returns
TypeDescription
InstanceConfig.Builder
Overrides

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
NameDescription
unusedUnusedPrivateParameter
Returns
TypeDescription
Object
Overrides

toBuilder()

public InstanceConfig.Builder toBuilder()
Returns
TypeDescription
InstanceConfig.Builder

writeTo(CodedOutputStream output)

public void writeTo(CodedOutputStream output)
Parameter
NameDescription
outputCodedOutputStream
Overrides
Exceptions
TypeDescription
IOException