Cloud Spanner Client - Class InstanceConfiguration (1.55.0)

Reference documentation and code samples for the Cloud Spanner Client class InstanceConfiguration.

Represents a Cloud Spanner Instance Configuration.

Example:

use Google\Cloud\Spanner\SpannerClient;

$spanner = new SpannerClient();

$configuration = $spanner->instanceConfiguration('regional-europe-west');

Methods

__construct

Create an instance configuration object.

Parameters
NameDescription
connection Google\Cloud\Spanner\Connection\ConnectionInterface

A service connection for the Spanner API.

projectId string

The current project ID.

name string

The configuration name or ID.

info array

[optional] A service representation of the configuration.

lroConnection Google\Cloud\Core\LongRunning\LongRunningConnectionInterface

An implementation mapping to methods which handle LRO resolution in the service.

name

Return the configuration name.

Example:

$name = $configuration->name();
Returns
TypeDescription
string

info

Return the service representation of the configuration.

This method may require a service call.

NOTE: Requires https://www.googleapis.com/auth/spanner.admin scope.

Example:

$info = $configuration->info();
Parameter
NameDescription
options array

[optional] Configuration options.

Returns
TypeDescription
array[InstanceConfig](https://cloud.google.com/spanner/docs/reference/rpc/google.spanner.admin.instance.v1#instanceconfig)

exists

Check if the configuration exists.

This method requires a service call.

NOTE: Requires https://www.googleapis.com/auth/spanner.admin scope.

Example:

if ($configuration->exists()) {
   echo 'Configuration exists!';
}
Parameter
NameDescription
options array

[optional] Configuration options.

Returns
TypeDescription
bool

reload

Fetch a fresh representation of the configuration from the service.

NOTE: Requires https://www.googleapis.com/auth/spanner.admin scope.

Example:

$info = $configuration->reload();
Parameter
NameDescription
options array

[optional] Configuration options.

Returns
TypeDescription
array[InstanceConfig](https://cloud.google.com/spanner/docs/reference/rpc/google.spanner.admin.instance.v1#instanceconfig)

create

Create a new instance configuration.

Example:

$operation = $instanceConfig->create($baseConfig, $options);
Parameters
NameDescription
baseConfig Google\Cloud\Spanner\InstanceConfiguration

The base configuration to extend for this custom instance configuration.

replicas array<Google\Cloud\Spanner\Admin\Instance\V1\ReplicaInfo>|array

The replica information for the new instance configuration. This array must contain all the replicas from the base configuration, plus at least one from list of optional replicas of the base configuration. One of the replicas must be set as the default leader location.

options array

Configuration options

↳ displayName string

Defaults to the name of this instance configuration.

↳ leaderOptions array

Allowed values of the "default_leader" schema option for databases in instances that use this instance configuration. Defaults to the leader options of the base configuration. Please note it may be possible for the default value to be an empty array when lazy loading the base configuration. To ensure the default value matches the upstream values please make sure to trigger a network request on the base configuration with either Google\Cloud\Spanner\InstanceConfiguration::reload() or Google\Cloud\Spanner\InstanceConfiguration::info().

↳ labels array

For more information, see Using labels to organize Google Cloud Platform resources.

↳ validateOnly bool

An option to validate, but not actually execute, the request, and provide the same response. Defaults to false.

Returns
TypeDescription
Google\Cloud\Core\LongRunning\LongRunningOperation<\google\cloud\spanner\instanceconfiguration>

update

Update the instance configuration. This is only possible for customer managed instance configurations.

Example:

$operation = $instanceConfig->update([
    'displayName' => 'My Instance config'
]);
Parameters
NameDescription
options array

Configuration options

↳ displayName string

The descriptive name for this instance as it appears in UIs. Defaults to the name of this instance configuration.

↳ labels array

For more information, see Using labels to organize Google Cloud Platform resources.

↳ validateOnly bool

An option to validate, but not actually execute, the request, and provide the same response. Defaults to false.

Returns
TypeDescription
Google\Cloud\Core\LongRunning\LongRunningOperation<\google\cloud\spanner\instanceconfiguration>

delete

Delete the instance configuration. This is only possible for customer managed instance configurations that are currently not in use by any instances.

Example:

$instanceConfig->delete();
Parameter
NameDescription
options array

[optional] Configuration options.

Returns
TypeDescription
void

__debugInfo

A more readable representation of the object.