Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,13 +56,13 @@ implementation 'com.google.cloud:google-cloud-spanner'
If you are using Gradle without BOM, add this to your dependencies:

```Groovy
implementation 'com.google.cloud:google-cloud-spanner:6.26.0'
implementation 'com.google.cloud:google-cloud-spanner:6.27.0'
```

If you are using SBT, add this to your dependencies:

```Scala
libraryDependencies += "com.google.cloud" % "google-cloud-spanner" % "6.26.0"
libraryDependencies += "com.google.cloud" % "google-cloud-spanner" % "6.27.0"
```

## Authentication
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@
import com.google.spanner.admin.database.v1.CreateDatabaseRequest;
import com.google.spanner.admin.database.v1.Database;
import com.google.spanner.admin.database.v1.DatabaseName;
import com.google.spanner.admin.database.v1.DatabaseRole;
import com.google.spanner.admin.database.v1.DeleteBackupRequest;
import com.google.spanner.admin.database.v1.DropDatabaseRequest;
import com.google.spanner.admin.database.v1.GetBackupRequest;
Expand All @@ -64,6 +65,8 @@
import com.google.spanner.admin.database.v1.ListBackupsResponse;
import com.google.spanner.admin.database.v1.ListDatabaseOperationsRequest;
import com.google.spanner.admin.database.v1.ListDatabaseOperationsResponse;
import com.google.spanner.admin.database.v1.ListDatabaseRolesRequest;
import com.google.spanner.admin.database.v1.ListDatabaseRolesResponse;
import com.google.spanner.admin.database.v1.ListDatabasesRequest;
import com.google.spanner.admin.database.v1.ListDatabasesResponse;
import com.google.spanner.admin.database.v1.RestoreDatabaseMetadata;
Expand Down Expand Up @@ -3151,6 +3154,158 @@ public final ListBackupOperationsPagedResponse listBackupOperations(
return stub.listBackupOperationsCallable();
}

// AUTO-GENERATED DOCUMENTATION AND METHOD.
/**
* Lists Cloud Spanner database roles.
*
* <p>Sample code:
*
* <pre>{@code
* // This snippet has been automatically generated for illustrative purposes only.
* // It may require modifications to work in your environment.
* try (DatabaseAdminClient databaseAdminClient = DatabaseAdminClient.create()) {
* DatabaseName parent = DatabaseName.of("[PROJECT]", "[INSTANCE]", "[DATABASE]");
* for (DatabaseRole element : databaseAdminClient.listDatabaseRoles(parent).iterateAll()) {
* // doThingsWith(element);
* }
* }
* }</pre>
*
* @param parent Required. The database whose roles should be listed. Values are of the form
* `projects/&lt;project&gt;/instances/&lt;instance&gt;/databases/&lt;database&gt;/databaseRoles`.
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
*/
public final ListDatabaseRolesPagedResponse listDatabaseRoles(DatabaseName parent) {
ListDatabaseRolesRequest request =
ListDatabaseRolesRequest.newBuilder()
.setParent(parent == null ? null : parent.toString())
.build();
return listDatabaseRoles(request);
}

// AUTO-GENERATED DOCUMENTATION AND METHOD.
/**
* Lists Cloud Spanner database roles.
*
* <p>Sample code:
*
* <pre>{@code
* // This snippet has been automatically generated for illustrative purposes only.
* // It may require modifications to work in your environment.
* try (DatabaseAdminClient databaseAdminClient = DatabaseAdminClient.create()) {
* String parent = DatabaseName.of("[PROJECT]", "[INSTANCE]", "[DATABASE]").toString();
* for (DatabaseRole element : databaseAdminClient.listDatabaseRoles(parent).iterateAll()) {
* // doThingsWith(element);
* }
* }
* }</pre>
*
* @param parent Required. The database whose roles should be listed. Values are of the form
* `projects/&lt;project&gt;/instances/&lt;instance&gt;/databases/&lt;database&gt;/databaseRoles`.
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
*/
public final ListDatabaseRolesPagedResponse listDatabaseRoles(String parent) {
ListDatabaseRolesRequest request =
ListDatabaseRolesRequest.newBuilder().setParent(parent).build();
return listDatabaseRoles(request);
}

// AUTO-GENERATED DOCUMENTATION AND METHOD.
/**
* Lists Cloud Spanner database roles.
*
* <p>Sample code:
*
* <pre>{@code
* // This snippet has been automatically generated for illustrative purposes only.
* // It may require modifications to work in your environment.
* try (DatabaseAdminClient databaseAdminClient = DatabaseAdminClient.create()) {
* ListDatabaseRolesRequest request =
* ListDatabaseRolesRequest.newBuilder()
* .setParent(DatabaseName.of("[PROJECT]", "[INSTANCE]", "[DATABASE]").toString())
* .setPageSize(883849137)
* .setPageToken("pageToken873572522")
* .build();
* for (DatabaseRole element : databaseAdminClient.listDatabaseRoles(request).iterateAll()) {
* // doThingsWith(element);
* }
* }
* }</pre>
*
* @param request The request object containing all of the parameters for the API call.
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
*/
public final ListDatabaseRolesPagedResponse listDatabaseRoles(ListDatabaseRolesRequest request) {
return listDatabaseRolesPagedCallable().call(request);
}

// AUTO-GENERATED DOCUMENTATION AND METHOD.
/**
* Lists Cloud Spanner database roles.
*
* <p>Sample code:
*
* <pre>{@code
* // This snippet has been automatically generated for illustrative purposes only.
* // It may require modifications to work in your environment.
* try (DatabaseAdminClient databaseAdminClient = DatabaseAdminClient.create()) {
* ListDatabaseRolesRequest request =
* ListDatabaseRolesRequest.newBuilder()
* .setParent(DatabaseName.of("[PROJECT]", "[INSTANCE]", "[DATABASE]").toString())
* .setPageSize(883849137)
* .setPageToken("pageToken873572522")
* .build();
* ApiFuture<DatabaseRole> future =
* databaseAdminClient.listDatabaseRolesPagedCallable().futureCall(request);
* // Do something.
* for (DatabaseRole element : future.get().iterateAll()) {
* // doThingsWith(element);
* }
* }
* }</pre>
*/
public final UnaryCallable<ListDatabaseRolesRequest, ListDatabaseRolesPagedResponse>
listDatabaseRolesPagedCallable() {
return stub.listDatabaseRolesPagedCallable();
}

// AUTO-GENERATED DOCUMENTATION AND METHOD.
/**
* Lists Cloud Spanner database roles.
*
* <p>Sample code:
*
* <pre>{@code
* // This snippet has been automatically generated for illustrative purposes only.
* // It may require modifications to work in your environment.
* try (DatabaseAdminClient databaseAdminClient = DatabaseAdminClient.create()) {
* ListDatabaseRolesRequest request =
* ListDatabaseRolesRequest.newBuilder()
* .setParent(DatabaseName.of("[PROJECT]", "[INSTANCE]", "[DATABASE]").toString())
* .setPageSize(883849137)
* .setPageToken("pageToken873572522")
* .build();
* while (true) {
* ListDatabaseRolesResponse response =
* databaseAdminClient.listDatabaseRolesCallable().call(request);
* for (DatabaseRole element : response.getDatabaseRolesList()) {
* // doThingsWith(element);
* }
* String nextPageToken = response.getNextPageToken();
* if (!Strings.isNullOrEmpty(nextPageToken)) {
* request = request.toBuilder().setPageToken(nextPageToken).build();
* } else {
* break;
* }
* }
* }
* }</pre>
*/
public final UnaryCallable<ListDatabaseRolesRequest, ListDatabaseRolesResponse>
listDatabaseRolesCallable() {
return stub.listDatabaseRolesCallable();
}

@Override
public final void close() {
stub.close();
Expand Down Expand Up @@ -3493,4 +3648,84 @@ protected ListBackupOperationsFixedSizeCollection createCollection(
return new ListBackupOperationsFixedSizeCollection(pages, collectionSize);
}
}

public static class ListDatabaseRolesPagedResponse
extends AbstractPagedListResponse<
ListDatabaseRolesRequest,
ListDatabaseRolesResponse,
DatabaseRole,
ListDatabaseRolesPage,
ListDatabaseRolesFixedSizeCollection> {

public static ApiFuture<ListDatabaseRolesPagedResponse> createAsync(
PageContext<ListDatabaseRolesRequest, ListDatabaseRolesResponse, DatabaseRole> context,
ApiFuture<ListDatabaseRolesResponse> futureResponse) {
ApiFuture<ListDatabaseRolesPage> futurePage =
ListDatabaseRolesPage.createEmptyPage().createPageAsync(context, futureResponse);
return ApiFutures.transform(
futurePage,
input -> new ListDatabaseRolesPagedResponse(input),
MoreExecutors.directExecutor());
}

private ListDatabaseRolesPagedResponse(ListDatabaseRolesPage page) {
super(page, ListDatabaseRolesFixedSizeCollection.createEmptyCollection());
}
}

public static class ListDatabaseRolesPage
extends AbstractPage<
ListDatabaseRolesRequest,
ListDatabaseRolesResponse,
DatabaseRole,
ListDatabaseRolesPage> {

private ListDatabaseRolesPage(
PageContext<ListDatabaseRolesRequest, ListDatabaseRolesResponse, DatabaseRole> context,
ListDatabaseRolesResponse response) {
super(context, response);
}

private static ListDatabaseRolesPage createEmptyPage() {
return new ListDatabaseRolesPage(null, null);
}

@Override
protected ListDatabaseRolesPage createPage(
PageContext<ListDatabaseRolesRequest, ListDatabaseRolesResponse, DatabaseRole> context,
ListDatabaseRolesResponse response) {
return new ListDatabaseRolesPage(context, response);
}

@Override
public ApiFuture<ListDatabaseRolesPage> createPageAsync(
PageContext<ListDatabaseRolesRequest, ListDatabaseRolesResponse, DatabaseRole> context,
ApiFuture<ListDatabaseRolesResponse> futureResponse) {
return super.createPageAsync(context, futureResponse);
}
}

public static class ListDatabaseRolesFixedSizeCollection
extends AbstractFixedSizeCollection<
ListDatabaseRolesRequest,
ListDatabaseRolesResponse,
DatabaseRole,
ListDatabaseRolesPage,
ListDatabaseRolesFixedSizeCollection> {

private ListDatabaseRolesFixedSizeCollection(
List<ListDatabaseRolesPage> pages, int collectionSize) {
super(pages, collectionSize);
}

private static ListDatabaseRolesFixedSizeCollection createEmptyCollection() {
return new ListDatabaseRolesFixedSizeCollection(null, 0);
}

@Override
protected ListDatabaseRolesFixedSizeCollection createCollection(
List<ListDatabaseRolesPage> pages, int collectionSize) {
return new ListDatabaseRolesFixedSizeCollection(pages, collectionSize);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import static com.google.cloud.spanner.admin.database.v1.DatabaseAdminClient.ListBackupOperationsPagedResponse;
import static com.google.cloud.spanner.admin.database.v1.DatabaseAdminClient.ListBackupsPagedResponse;
import static com.google.cloud.spanner.admin.database.v1.DatabaseAdminClient.ListDatabaseOperationsPagedResponse;
import static com.google.cloud.spanner.admin.database.v1.DatabaseAdminClient.ListDatabaseRolesPagedResponse;
import static com.google.cloud.spanner.admin.database.v1.DatabaseAdminClient.ListDatabasesPagedResponse;

import com.google.api.core.ApiFunction;
Expand Down Expand Up @@ -62,6 +63,8 @@
import com.google.spanner.admin.database.v1.ListBackupsResponse;
import com.google.spanner.admin.database.v1.ListDatabaseOperationsRequest;
import com.google.spanner.admin.database.v1.ListDatabaseOperationsResponse;
import com.google.spanner.admin.database.v1.ListDatabaseRolesRequest;
import com.google.spanner.admin.database.v1.ListDatabaseRolesResponse;
import com.google.spanner.admin.database.v1.ListDatabasesRequest;
import com.google.spanner.admin.database.v1.ListDatabasesResponse;
import com.google.spanner.admin.database.v1.RestoreDatabaseMetadata;
Expand Down Expand Up @@ -240,6 +243,13 @@ public UnaryCallSettings<RestoreDatabaseRequest, Operation> restoreDatabaseSetti
return ((DatabaseAdminStubSettings) getStubSettings()).listBackupOperationsSettings();
}

/** Returns the object with the settings used for calls to listDatabaseRoles. */
public PagedCallSettings<
ListDatabaseRolesRequest, ListDatabaseRolesResponse, ListDatabaseRolesPagedResponse>
listDatabaseRolesSettings() {
return ((DatabaseAdminStubSettings) getStubSettings()).listDatabaseRolesSettings();
}

public static final DatabaseAdminSettings create(DatabaseAdminStubSettings stub)
throws IOException {
return new DatabaseAdminSettings.Builder(stub.toBuilder()).build();
Expand Down Expand Up @@ -490,6 +500,13 @@ public UnaryCallSettings.Builder<RestoreDatabaseRequest, Operation> restoreDatab
return getStubSettingsBuilder().listBackupOperationsSettings();
}

/** Returns the builder for the settings used for calls to listDatabaseRoles. */
public PagedCallSettings.Builder<
ListDatabaseRolesRequest, ListDatabaseRolesResponse, ListDatabaseRolesPagedResponse>
listDatabaseRolesSettings() {
return getStubSettingsBuilder().listDatabaseRolesSettings();
}

@Override
public DatabaseAdminSettings build() throws IOException {
return new DatabaseAdminSettings(this);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@
"ListDatabaseOperations": {
"methods": ["listDatabaseOperations", "listDatabaseOperations", "listDatabaseOperations", "listDatabaseOperationsPagedCallable", "listDatabaseOperationsCallable"]
},
"ListDatabaseRoles": {
"methods": ["listDatabaseRoles", "listDatabaseRoles", "listDatabaseRoles", "listDatabaseRolesPagedCallable", "listDatabaseRolesCallable"]
},
"ListDatabases": {
"methods": ["listDatabases", "listDatabases", "listDatabases", "listDatabasesPagedCallable", "listDatabasesCallable"]
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,9 @@
*/

/**
* The interfaces provided are listed below, along with usage samples.
* A client to Cloud Spanner API
*
* <p>The interfaces provided are listed below, along with usage samples.
*
* <p>======================= DatabaseAdminClient =======================
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import static com.google.cloud.spanner.admin.database.v1.DatabaseAdminClient.ListBackupOperationsPagedResponse;
import static com.google.cloud.spanner.admin.database.v1.DatabaseAdminClient.ListBackupsPagedResponse;
import static com.google.cloud.spanner.admin.database.v1.DatabaseAdminClient.ListDatabaseOperationsPagedResponse;
import static com.google.cloud.spanner.admin.database.v1.DatabaseAdminClient.ListDatabaseRolesPagedResponse;
import static com.google.cloud.spanner.admin.database.v1.DatabaseAdminClient.ListDatabasesPagedResponse;

import com.google.api.gax.core.BackgroundResource;
Expand Down Expand Up @@ -52,6 +53,8 @@
import com.google.spanner.admin.database.v1.ListBackupsResponse;
import com.google.spanner.admin.database.v1.ListDatabaseOperationsRequest;
import com.google.spanner.admin.database.v1.ListDatabaseOperationsResponse;
import com.google.spanner.admin.database.v1.ListDatabaseRolesRequest;
import com.google.spanner.admin.database.v1.ListDatabaseRolesResponse;
import com.google.spanner.admin.database.v1.ListDatabasesRequest;
import com.google.spanner.admin.database.v1.ListDatabasesResponse;
import com.google.spanner.admin.database.v1.RestoreDatabaseMetadata;
Expand Down Expand Up @@ -199,6 +202,16 @@ public UnaryCallable<RestoreDatabaseRequest, Operation> restoreDatabaseCallable(
throw new UnsupportedOperationException("Not implemented: listBackupOperationsCallable()");
}

public UnaryCallable<ListDatabaseRolesRequest, ListDatabaseRolesPagedResponse>
listDatabaseRolesPagedCallable() {
throw new UnsupportedOperationException("Not implemented: listDatabaseRolesPagedCallable()");
}

public UnaryCallable<ListDatabaseRolesRequest, ListDatabaseRolesResponse>
listDatabaseRolesCallable() {
throw new UnsupportedOperationException("Not implemented: listDatabaseRolesCallable()");
}

@Override
public abstract void close();
}
Loading