Skip to content

Commit 6b4dcca

Browse files
feat: [Bigtable] add SchemaBundles API (#8399)
* feat: add SchemaBundles API docs: improved comment formatting and product naming PiperOrigin-RevId: 774877252 Source-Link: googleapis/googleapis@769bb24 Source-Link: googleapis/googleapis-gen@4c1c885 Copy-Tag: eyJwIjoiQmlndGFibGUvLk93bEJvdC55YW1sIiwiaCI6IjRjMWM4ODVlZDhhNmM2ODViNWZlYTExYzY5YWMxNGQ5ZTFhMTVmZGEifQ== * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
1 parent 149fa25 commit 6b4dcca

21 files changed

Lines changed: 2390 additions & 25 deletions
2.67 KB
Binary file not shown.
338 Bytes
Binary file not shown.

Bigtable/src/Admin/V2/Client/BigtableTableAdminClient.php

Lines changed: 167 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,32 +43,38 @@
4343
use Google\Cloud\Bigtable\Admin\V2\CreateAuthorizedViewRequest;
4444
use Google\Cloud\Bigtable\Admin\V2\CreateBackupMetadata;
4545
use Google\Cloud\Bigtable\Admin\V2\CreateBackupRequest;
46+
use Google\Cloud\Bigtable\Admin\V2\CreateSchemaBundleRequest;
4647
use Google\Cloud\Bigtable\Admin\V2\CreateTableFromSnapshotRequest;
4748
use Google\Cloud\Bigtable\Admin\V2\CreateTableRequest;
4849
use Google\Cloud\Bigtable\Admin\V2\DeleteAuthorizedViewRequest;
4950
use Google\Cloud\Bigtable\Admin\V2\DeleteBackupRequest;
51+
use Google\Cloud\Bigtable\Admin\V2\DeleteSchemaBundleRequest;
5052
use Google\Cloud\Bigtable\Admin\V2\DeleteSnapshotRequest;
5153
use Google\Cloud\Bigtable\Admin\V2\DeleteTableRequest;
5254
use Google\Cloud\Bigtable\Admin\V2\DropRowRangeRequest;
5355
use Google\Cloud\Bigtable\Admin\V2\GenerateConsistencyTokenRequest;
5456
use Google\Cloud\Bigtable\Admin\V2\GenerateConsistencyTokenResponse;
5557
use Google\Cloud\Bigtable\Admin\V2\GetAuthorizedViewRequest;
5658
use Google\Cloud\Bigtable\Admin\V2\GetBackupRequest;
59+
use Google\Cloud\Bigtable\Admin\V2\GetSchemaBundleRequest;
5760
use Google\Cloud\Bigtable\Admin\V2\GetSnapshotRequest;
5861
use Google\Cloud\Bigtable\Admin\V2\GetTableRequest;
5962
use Google\Cloud\Bigtable\Admin\V2\ListAuthorizedViewsRequest;
6063
use Google\Cloud\Bigtable\Admin\V2\ListBackupsRequest;
64+
use Google\Cloud\Bigtable\Admin\V2\ListSchemaBundlesRequest;
6165
use Google\Cloud\Bigtable\Admin\V2\ListSnapshotsRequest;
6266
use Google\Cloud\Bigtable\Admin\V2\ListTablesRequest;
6367
use Google\Cloud\Bigtable\Admin\V2\ModifyColumnFamiliesRequest;
6468
use Google\Cloud\Bigtable\Admin\V2\RestoreTableMetadata;
6569
use Google\Cloud\Bigtable\Admin\V2\RestoreTableRequest;
70+
use Google\Cloud\Bigtable\Admin\V2\SchemaBundle;
6671
use Google\Cloud\Bigtable\Admin\V2\Snapshot;
6772
use Google\Cloud\Bigtable\Admin\V2\SnapshotTableRequest;
6873
use Google\Cloud\Bigtable\Admin\V2\Table;
6974
use Google\Cloud\Bigtable\Admin\V2\UndeleteTableRequest;
7075
use Google\Cloud\Bigtable\Admin\V2\UpdateAuthorizedViewRequest;
7176
use Google\Cloud\Bigtable\Admin\V2\UpdateBackupRequest;
77+
use Google\Cloud\Bigtable\Admin\V2\UpdateSchemaBundleRequest;
7278
use Google\Cloud\Bigtable\Admin\V2\UpdateTableRequest;
7379
use Google\Cloud\Iam\V1\GetIamPolicyRequest;
7480
use Google\Cloud\Iam\V1\Policy;
@@ -100,21 +106,25 @@
100106
* @method PromiseInterface<OperationResponse> copyBackupAsync(CopyBackupRequest $request, array $optionalArgs = [])
101107
* @method PromiseInterface<OperationResponse> createAuthorizedViewAsync(CreateAuthorizedViewRequest $request, array $optionalArgs = [])
102108
* @method PromiseInterface<OperationResponse> createBackupAsync(CreateBackupRequest $request, array $optionalArgs = [])
109+
* @method PromiseInterface<OperationResponse> createSchemaBundleAsync(CreateSchemaBundleRequest $request, array $optionalArgs = [])
103110
* @method PromiseInterface<Table> createTableAsync(CreateTableRequest $request, array $optionalArgs = [])
104111
* @method PromiseInterface<OperationResponse> createTableFromSnapshotAsync(CreateTableFromSnapshotRequest $request, array $optionalArgs = [])
105112
* @method PromiseInterface<void> deleteAuthorizedViewAsync(DeleteAuthorizedViewRequest $request, array $optionalArgs = [])
106113
* @method PromiseInterface<void> deleteBackupAsync(DeleteBackupRequest $request, array $optionalArgs = [])
114+
* @method PromiseInterface<void> deleteSchemaBundleAsync(DeleteSchemaBundleRequest $request, array $optionalArgs = [])
107115
* @method PromiseInterface<void> deleteSnapshotAsync(DeleteSnapshotRequest $request, array $optionalArgs = [])
108116
* @method PromiseInterface<void> deleteTableAsync(DeleteTableRequest $request, array $optionalArgs = [])
109117
* @method PromiseInterface<void> dropRowRangeAsync(DropRowRangeRequest $request, array $optionalArgs = [])
110118
* @method PromiseInterface<GenerateConsistencyTokenResponse> generateConsistencyTokenAsync(GenerateConsistencyTokenRequest $request, array $optionalArgs = [])
111119
* @method PromiseInterface<AuthorizedView> getAuthorizedViewAsync(GetAuthorizedViewRequest $request, array $optionalArgs = [])
112120
* @method PromiseInterface<Backup> getBackupAsync(GetBackupRequest $request, array $optionalArgs = [])
113121
* @method PromiseInterface<Policy> getIamPolicyAsync(GetIamPolicyRequest $request, array $optionalArgs = [])
122+
* @method PromiseInterface<SchemaBundle> getSchemaBundleAsync(GetSchemaBundleRequest $request, array $optionalArgs = [])
114123
* @method PromiseInterface<Snapshot> getSnapshotAsync(GetSnapshotRequest $request, array $optionalArgs = [])
115124
* @method PromiseInterface<Table> getTableAsync(GetTableRequest $request, array $optionalArgs = [])
116125
* @method PromiseInterface<PagedListResponse> listAuthorizedViewsAsync(ListAuthorizedViewsRequest $request, array $optionalArgs = [])
117126
* @method PromiseInterface<PagedListResponse> listBackupsAsync(ListBackupsRequest $request, array $optionalArgs = [])
127+
* @method PromiseInterface<PagedListResponse> listSchemaBundlesAsync(ListSchemaBundlesRequest $request, array $optionalArgs = [])
118128
* @method PromiseInterface<PagedListResponse> listSnapshotsAsync(ListSnapshotsRequest $request, array $optionalArgs = [])
119129
* @method PromiseInterface<PagedListResponse> listTablesAsync(ListTablesRequest $request, array $optionalArgs = [])
120130
* @method PromiseInterface<Table> modifyColumnFamiliesAsync(ModifyColumnFamiliesRequest $request, array $optionalArgs = [])
@@ -125,6 +135,7 @@
125135
* @method PromiseInterface<OperationResponse> undeleteTableAsync(UndeleteTableRequest $request, array $optionalArgs = [])
126136
* @method PromiseInterface<OperationResponse> updateAuthorizedViewAsync(UpdateAuthorizedViewRequest $request, array $optionalArgs = [])
127137
* @method PromiseInterface<Backup> updateBackupAsync(UpdateBackupRequest $request, array $optionalArgs = [])
138+
* @method PromiseInterface<OperationResponse> updateSchemaBundleAsync(UpdateSchemaBundleRequest $request, array $optionalArgs = [])
128139
* @method PromiseInterface<OperationResponse> updateTableAsync(UpdateTableRequest $request, array $optionalArgs = [])
129140
*/
130141
final class BigtableTableAdminClient
@@ -331,6 +342,27 @@ public static function instanceName(string $project, string $instance): string
331342
]);
332343
}
333344

345+
/**
346+
* Formats a string containing the fully-qualified path to represent a
347+
* schema_bundle resource.
348+
*
349+
* @param string $project
350+
* @param string $instance
351+
* @param string $table
352+
* @param string $schemaBundle
353+
*
354+
* @return string The formatted schema_bundle resource.
355+
*/
356+
public static function schemaBundleName(string $project, string $instance, string $table, string $schemaBundle): string
357+
{
358+
return self::getPathTemplate('schemaBundle')->render([
359+
'project' => $project,
360+
'instance' => $instance,
361+
'table' => $table,
362+
'schema_bundle' => $schemaBundle,
363+
]);
364+
}
365+
334366
/**
335367
* Formats a string containing the fully-qualified path to represent a snapshot
336368
* resource.
@@ -380,6 +412,7 @@ public static function tableName(string $project, string $instance, string $tabl
380412
* - cluster: projects/{project}/instances/{instance}/clusters/{cluster}
381413
* - cryptoKeyVersion: projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{crypto_key_version}
382414
* - instance: projects/{project}/instances/{instance}
415+
* - schemaBundle: projects/{project}/instances/{instance}/tables/{table}/schemaBundles/{schema_bundle}
383416
* - snapshot: projects/{project}/instances/{instance}/clusters/{cluster}/snapshots/{snapshot}
384417
* - table: projects/{project}/instances/{instance}/tables/{table}
385418
*
@@ -602,6 +635,33 @@ public function createBackup(CreateBackupRequest $request, array $callOptions =
602635
return $this->startApiCall('CreateBackup', $request, $callOptions)->wait();
603636
}
604637

638+
/**
639+
* Creates a new schema bundle in the specified table.
640+
*
641+
* The async variant is {@see BigtableTableAdminClient::createSchemaBundleAsync()}
642+
* .
643+
*
644+
* @example samples/V2/BigtableTableAdminClient/create_schema_bundle.php
645+
*
646+
* @param CreateSchemaBundleRequest $request A request to house fields associated with the call.
647+
* @param array $callOptions {
648+
* Optional.
649+
*
650+
* @type RetrySettings|array $retrySettings
651+
* Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
652+
* associative array of retry settings parameters. See the documentation on
653+
* {@see RetrySettings} for example usage.
654+
* }
655+
*
656+
* @return OperationResponse
657+
*
658+
* @throws ApiException Thrown if the API call fails.
659+
*/
660+
public function createSchemaBundle(CreateSchemaBundleRequest $request, array $callOptions = []): OperationResponse
661+
{
662+
return $this->startApiCall('CreateSchemaBundle', $request, $callOptions)->wait();
663+
}
664+
605665
/**
606666
* Creates a new table in the specified instance.
607667
* The table can be created with a full set of initial column families,
@@ -713,6 +773,31 @@ public function deleteBackup(DeleteBackupRequest $request, array $callOptions =
713773
$this->startApiCall('DeleteBackup', $request, $callOptions)->wait();
714774
}
715775

776+
/**
777+
* Deletes a schema bundle in the specified table.
778+
*
779+
* The async variant is {@see BigtableTableAdminClient::deleteSchemaBundleAsync()}
780+
* .
781+
*
782+
* @example samples/V2/BigtableTableAdminClient/delete_schema_bundle.php
783+
*
784+
* @param DeleteSchemaBundleRequest $request A request to house fields associated with the call.
785+
* @param array $callOptions {
786+
* Optional.
787+
*
788+
* @type RetrySettings|array $retrySettings
789+
* Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
790+
* associative array of retry settings parameters. See the documentation on
791+
* {@see RetrySettings} for example usage.
792+
* }
793+
*
794+
* @throws ApiException Thrown if the API call fails.
795+
*/
796+
public function deleteSchemaBundle(DeleteSchemaBundleRequest $request, array $callOptions = []): void
797+
{
798+
$this->startApiCall('DeleteSchemaBundle', $request, $callOptions)->wait();
799+
}
800+
716801
/**
717802
* Permanently deletes the specified snapshot.
718803
*
@@ -876,7 +961,7 @@ public function getBackup(GetBackupRequest $request, array $callOptions = []): B
876961
}
877962

878963
/**
879-
* Gets the access control policy for a Table or Backup resource.
964+
* Gets the access control policy for a Bigtable resource.
880965
* Returns an empty policy if the resource exists but does not have a policy
881966
* set.
882967
*
@@ -903,6 +988,32 @@ public function getIamPolicy(GetIamPolicyRequest $request, array $callOptions =
903988
return $this->startApiCall('GetIamPolicy', $request, $callOptions)->wait();
904989
}
905990

991+
/**
992+
* Gets metadata information about the specified schema bundle.
993+
*
994+
* The async variant is {@see BigtableTableAdminClient::getSchemaBundleAsync()} .
995+
*
996+
* @example samples/V2/BigtableTableAdminClient/get_schema_bundle.php
997+
*
998+
* @param GetSchemaBundleRequest $request A request to house fields associated with the call.
999+
* @param array $callOptions {
1000+
* Optional.
1001+
*
1002+
* @type RetrySettings|array $retrySettings
1003+
* Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
1004+
* associative array of retry settings parameters. See the documentation on
1005+
* {@see RetrySettings} for example usage.
1006+
* }
1007+
*
1008+
* @return SchemaBundle
1009+
*
1010+
* @throws ApiException Thrown if the API call fails.
1011+
*/
1012+
public function getSchemaBundle(GetSchemaBundleRequest $request, array $callOptions = []): SchemaBundle
1013+
{
1014+
return $this->startApiCall('GetSchemaBundle', $request, $callOptions)->wait();
1015+
}
1016+
9061017
/**
9071018
* Gets metadata information about the specified snapshot.
9081019
*
@@ -1015,6 +1126,32 @@ public function listBackups(ListBackupsRequest $request, array $callOptions = []
10151126
return $this->startApiCall('ListBackups', $request, $callOptions);
10161127
}
10171128

1129+
/**
1130+
* Lists all schema bundles associated with the specified table.
1131+
*
1132+
* The async variant is {@see BigtableTableAdminClient::listSchemaBundlesAsync()} .
1133+
*
1134+
* @example samples/V2/BigtableTableAdminClient/list_schema_bundles.php
1135+
*
1136+
* @param ListSchemaBundlesRequest $request A request to house fields associated with the call.
1137+
* @param array $callOptions {
1138+
* Optional.
1139+
*
1140+
* @type RetrySettings|array $retrySettings
1141+
* Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
1142+
* associative array of retry settings parameters. See the documentation on
1143+
* {@see RetrySettings} for example usage.
1144+
* }
1145+
*
1146+
* @return PagedListResponse
1147+
*
1148+
* @throws ApiException Thrown if the API call fails.
1149+
*/
1150+
public function listSchemaBundles(ListSchemaBundlesRequest $request, array $callOptions = []): PagedListResponse
1151+
{
1152+
return $this->startApiCall('ListSchemaBundles', $request, $callOptions);
1153+
}
1154+
10181155
/**
10191156
* Lists all snapshots associated with the specified cluster.
10201157
*
@@ -1136,7 +1273,7 @@ public function restoreTable(RestoreTableRequest $request, array $callOptions =
11361273
}
11371274

11381275
/**
1139-
* Sets the access control policy on a Table or Backup resource.
1276+
* Sets the access control policy on a Bigtable resource.
11401277
* Replaces any existing policy.
11411278
*
11421279
* The async variant is {@see BigtableTableAdminClient::setIamPolicyAsync()} .
@@ -1196,7 +1333,7 @@ public function snapshotTable(SnapshotTableRequest $request, array $callOptions
11961333
}
11971334

11981335
/**
1199-
* Returns permissions that the caller has on the specified Table or Backup
1336+
* Returns permissions that the caller has on the specified Bigtable
12001337
* resource.
12011338
*
12021339
* The async variant is {@see BigtableTableAdminClient::testIamPermissionsAsync()}
@@ -1302,6 +1439,33 @@ public function updateBackup(UpdateBackupRequest $request, array $callOptions =
13021439
return $this->startApiCall('UpdateBackup', $request, $callOptions)->wait();
13031440
}
13041441

1442+
/**
1443+
* Updates a schema bundle in the specified table.
1444+
*
1445+
* The async variant is {@see BigtableTableAdminClient::updateSchemaBundleAsync()}
1446+
* .
1447+
*
1448+
* @example samples/V2/BigtableTableAdminClient/update_schema_bundle.php
1449+
*
1450+
* @param UpdateSchemaBundleRequest $request A request to house fields associated with the call.
1451+
* @param array $callOptions {
1452+
* Optional.
1453+
*
1454+
* @type RetrySettings|array $retrySettings
1455+
* Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
1456+
* associative array of retry settings parameters. See the documentation on
1457+
* {@see RetrySettings} for example usage.
1458+
* }
1459+
*
1460+
* @return OperationResponse
1461+
*
1462+
* @throws ApiException Thrown if the API call fails.
1463+
*/
1464+
public function updateSchemaBundle(UpdateSchemaBundleRequest $request, array $callOptions = []): OperationResponse
1465+
{
1466+
return $this->startApiCall('UpdateSchemaBundle', $request, $callOptions)->wait();
1467+
}
1468+
13051469
/**
13061470
* Updates a specified table.
13071471
*

Bigtable/src/Admin/V2/CreateAuthorizedViewMetadata.php

Lines changed: 8 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)