public interface InstanceAdminClient
Modifier and Type | Method and Description |
---|---|
void |
cancelOperation(String name)
Cancels the specified long-running operation.
|
com.google.api.gax.longrunning.OperationFuture<Instance,CreateInstanceMetadata> |
createInstance(InstanceInfo instance)
Creates an instance and begins preparing it to begin serving.
|
void |
deleteInstance(String instanceId)
Deletes an instance.
|
Instance |
getInstance(String instanceId)
Gets an instance.
|
InstanceConfig |
getInstanceConfig(String configId)
Gets an instance config.
|
com.google.cloud.Policy |
getInstanceIAMPolicy(String instanceId)
Returns the IAM policy for the given instance.
|
com.google.longrunning.Operation |
getOperation(String name)
Gets the specified long-running operation.
|
com.google.api.gax.paging.Page<InstanceConfig> |
listInstanceConfigs(Options.ListOption... options)
Lists the supported instance configs for current project.
|
com.google.api.gax.paging.Page<Instance> |
listInstances(Options.ListOption... options)
Lists the instances.
|
Instance.Builder |
newInstanceBuilder(InstanceId id)
Returns a builder for
Instance object with the given id. |
com.google.cloud.Policy |
setInstanceIAMPolicy(String instanceId,
com.google.cloud.Policy policy)
Updates the IAM policy for the given instance and returns the resulting policy.
|
Iterable<String> |
testInstanceIAMPermissions(String instanceId,
Iterable<String> permissions)
Tests for the given permissions on the specified instance for the caller.
|
com.google.api.gax.longrunning.OperationFuture<Instance,UpdateInstanceMetadata> |
updateInstance(InstanceInfo instance,
InstanceInfo.InstanceField... fieldsToUpdate)
Updates an instance, and begins allocating or releasing resources as requested.
|
InstanceConfig getInstanceConfig(String configId) throws SpannerException
SpannerException
com.google.api.gax.paging.Page<InstanceConfig> listInstanceConfigs(Options.ListOption... options) throws SpannerException
SpannerException
com.google.api.gax.longrunning.OperationFuture<Instance,CreateInstanceMetadata> createInstance(InstanceInfo instance) throws SpannerException
Operation
can be used to track the progress of preparing the new instance. The instance name is assigned
by the caller. If the named instance already exists, a SpannerException is thrown. Immediately
upon completion of this request:
CREATING
.
final String instanceId = my_instance_id;
final String configId = my_config_id;
final String clientProject = my_client_project;
Operation<Instance, CreateInstanceMetadata> op =
instanceAdminClient.createInstance(InstanceInfo
.newBuilder(InstanceId.of(clientProject, instanceId))
.setInstanceConfigId(InstanceConfigId.of(clientProject, configId))
.setDisplayName(instanceId)
.setNodeCount(1)
.build());
op.waitFor();
SpannerException
Instance getInstance(String instanceId) throws SpannerException
SpannerException
com.google.api.gax.paging.Page<Instance> listInstances(Options.ListOption... options) throws SpannerException
options
- Options to control the instances returned. It also supports Options.filter(String)
option. The fields eligible for filtering are:
List<Instance> instances =
Lists.newArrayList(
instanceAdminClient.listInstances(Options.pageSize(1)).iterateAll());
SpannerException
void deleteInstance(String instanceId) throws SpannerException
SpannerException
com.google.api.gax.longrunning.OperationFuture<Instance,UpdateInstanceMetadata> updateInstance(InstanceInfo instance, InstanceInfo.InstanceField... fieldsToUpdate)
Operation
can be used to track the progress of updating the instance. If the named
instance does not exist, throws SpannerException.
Immediately upon completion of this request:
Instance instance = my_instance;
final String clientProject = my_client_project;
final String instanceId = my_instance_id;
final String newDisplayName = my_display_name;
InstanceInfo toUpdate =
InstanceInfo.newBuilder(InstanceId.of(clientProject, instanceId))
.setDisplayName(newDisplayName)
.setNodeCount(instance.getNodeCount() + 1)
.build();
// Only update display name
Operation<Instance, UpdateInstanceMetadata> op =
instanceAdminClient.updateInstance(toUpdate, InstanceInfo.InstanceField.DISPLAY_NAME);
op.waitFor().getResult();
com.google.cloud.Policy getInstanceIAMPolicy(String instanceId)
com.google.cloud.Policy setInstanceIAMPolicy(String instanceId, com.google.cloud.Policy policy)
Policy.Builder#setEtag(String)
for information on the recommended read-modify-write
cycle.Iterable<String> testInstanceIAMPermissions(String instanceId, Iterable<String> permissions)
instanceId
- the id of the instance to test.permissions
- the permissions to test for. Permissions with wildcards (such as '*',
'spanner.*', 'spanner.instances.*') are not allowed.Instance.Builder newInstanceBuilder(InstanceId id)
Instance
object with the given id.void cancelOperation(String name)
com.google.longrunning.Operation getOperation(String name)
Copyright © 2020 Google LLC. All rights reserved.