Skip to content

Commit 87642bd

Browse files
chore: Update generation configuration at Sat Feb 7 02:50:34 UTC 2026 (#3479)
1 parent 3a5deee commit 87642bd

38 files changed

Lines changed: 3697 additions & 424 deletions

File tree

.github/workflows/hermetic_library_generation.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ jobs:
7777
echo "SHOULD_RUN=false" >> $GITHUB_ENV
7878
fi
7979
80-
- uses: googleapis/sdk-platform-java/.github/scripts@v2.66.0
80+
- uses: googleapis/sdk-platform-java/.github/scripts@v2.66.1
8181
if: env.SHOULD_RUN == 'true'
8282
with:
8383
base_ref: ${{ github.base_ref }}

.kokoro/presubmit/graalvm-native-a.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Configure the docker image for kokoro-trampoline.
44
env_vars: {
55
key: "TRAMPOLINE_IMAGE"
6-
value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.56.0" # {x-version-update:google-cloud-shared-dependencies:current}
6+
value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.56.1" # {x-version-update:google-cloud-shared-dependencies:current}
77
}
88

99
env_vars: {

.kokoro/presubmit/graalvm-native-b.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Configure the docker image for kokoro-trampoline.
44
env_vars: {
55
key: "TRAMPOLINE_IMAGE"
6-
value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.56.0" # {x-version-update:google-cloud-shared-dependencies:current}
6+
value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.56.1" # {x-version-update:google-cloud-shared-dependencies:current}
77
}
88

99
env_vars: {

.kokoro/presubmit/graalvm-native-c.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Configure the docker image for kokoro-trampoline.
44
env_vars: {
55
key: "TRAMPOLINE_IMAGE"
6-
value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.56.0" # {x-version-update:google-cloud-shared-dependencies:current}
6+
value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.56.1" # {x-version-update:google-cloud-shared-dependencies:current}
77
}
88

99
env_vars: {

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ If you are using Maven without the BOM, add this to your dependencies:
5959
If you are using Gradle 5.x or later, add this to your dependencies:
6060

6161
```Groovy
62-
implementation platform('com.google.cloud:libraries-bom:26.74.0')
62+
implementation platform('com.google.cloud:libraries-bom:26.75.0')
6363
6464
implementation 'com.google.cloud:google-cloud-storage'
6565
```

gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageClient.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -405,7 +405,7 @@
405405
* <tr>
406406
* <td><p> BidiReadObject</td>
407407
* <td><p> Reads an object's data.
408-
* <p> This bi-directional API reads data from an object, allowing you to request multiple data ranges within a single stream, even across several messages. If an error occurs with any request, the stream closes with a relevant error code. Since you can have multiple outstanding requests, the error response includes a `BidiReadObjectRangesError` field detailing the specific error for each pending `read_id`.
408+
* <p> This bi-directional API reads data from an object, allowing you to request multiple data ranges within a single stream, even across several messages. If an error occurs with any request, the stream closes with a relevant error code. Since you can have multiple outstanding requests, the error response includes a `BidiReadObjectError` proto in its `details` field, reporting the specific error, if any, for each pending `read_id`.
409409
* <p> &#42;&#42;IAM Permissions&#42;&#42;:
410410
* <p> Requires `storage.objects.get` IAM permission on the bucket.</td>
411411
* <td>
@@ -2139,6 +2139,7 @@ public final UnaryCallable<UpdateBucketRequest, Bucket> updateBucketCallable() {
21392139
* .toString())
21402140
* .setCommonObjectRequestParams(CommonObjectRequestParams.newBuilder().build())
21412141
* .setObjectChecksums(ObjectChecksums.newBuilder().build())
2142+
* .setDeleteSourceObjects(true)
21422143
* .build();
21432144
* Object response = storageClient.composeObject(request);
21442145
* }
@@ -2185,6 +2186,7 @@ public final Object composeObject(ComposeObjectRequest request) {
21852186
* .toString())
21862187
* .setCommonObjectRequestParams(CommonObjectRequestParams.newBuilder().build())
21872188
* .setObjectChecksums(ObjectChecksums.newBuilder().build())
2189+
* .setDeleteSourceObjects(true)
21882190
* .build();
21892191
* ApiFuture<Object> future = storageClient.composeObjectCallable().futureCall(request);
21902192
* // Do something.
@@ -3093,8 +3095,8 @@ public final ServerStreamingCallable<ReadObjectRequest, ReadObjectResponse> read
30933095
* <p>This bi-directional API reads data from an object, allowing you to request multiple data
30943096
* ranges within a single stream, even across several messages. If an error occurs with any
30953097
* request, the stream closes with a relevant error code. Since you can have multiple outstanding
3096-
* requests, the error response includes a `BidiReadObjectRangesError` field detailing the
3097-
* specific error for each pending `read_id`.
3098+
* requests, the error response includes a `BidiReadObjectError` proto in its `details` field,
3099+
* reporting the specific error, if any, for each pending `read_id`.
30983100
*
30993101
* <p>&#42;&#42;IAM Permissions&#42;&#42;:
31003102
*

gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientTest.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1064,6 +1064,7 @@ public void composeObjectTest() throws Exception {
10641064
.toString())
10651065
.setCommonObjectRequestParams(CommonObjectRequestParams.newBuilder().build())
10661066
.setObjectChecksums(ObjectChecksums.newBuilder().build())
1067+
.setDeleteSourceObjects(true)
10671068
.build();
10681069

10691070
Object actualResponse = client.composeObject(request);
@@ -1084,6 +1085,7 @@ public void composeObjectTest() throws Exception {
10841085
Assert.assertEquals(
10851086
request.getCommonObjectRequestParams(), actualRequest.getCommonObjectRequestParams());
10861087
Assert.assertEquals(request.getObjectChecksums(), actualRequest.getObjectChecksums());
1088+
Assert.assertEquals(request.getDeleteSourceObjects(), actualRequest.getDeleteSourceObjects());
10871089
Assert.assertTrue(
10881090
channelProvider.isHeaderSent(
10891091
ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
@@ -1108,6 +1110,7 @@ public void composeObjectExceptionTest() throws Exception {
11081110
.toString())
11091111
.setCommonObjectRequestParams(CommonObjectRequestParams.newBuilder().build())
11101112
.setObjectChecksums(ObjectChecksums.newBuilder().build())
1113+
.setDeleteSourceObjects(true)
11111114
.build();
11121115
client.composeObject(request);
11131116
Assert.fail("No exception raised");

generation_config.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
gapic_generator_version: 2.66.0
2-
googleapis_commitish: cfe62b3c5ceb9f81879c61480f26707980534462
3-
libraries_bom_version: 26.74.0
1+
gapic_generator_version: 2.66.1
2+
googleapis_commitish: 725496d32a359a40dd773995d3fda0342b440e15
3+
libraries_bom_version: 26.75.0
44
libraries:
55
- api_shortname: storage
66
name_pretty: Cloud Storage

google-cloud-storage-control/src/main/java/com/google/storage/control/v2/StorageControlClient.java

Lines changed: 181 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,26 @@
174174
* </td>
175175
* </tr>
176176
* <tr>
177+
* <td><p> DeleteFolderRecursive</td>
178+
* <td><p> Deletes a folder recursively. This operation is only applicable to a hierarchical namespace enabled bucket.</td>
179+
* <td>
180+
* <p>Request object method variants only take one parameter, a request object, which must be constructed before the call.</p>
181+
* <ul>
182+
* <li><p> deleteFolderRecursiveAsync(DeleteFolderRecursiveRequest request)
183+
* </ul>
184+
* <p>Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.</p>
185+
* <ul>
186+
* <li><p> deleteFolderRecursiveAsync(FolderName name)
187+
* <li><p> deleteFolderRecursiveAsync(String name)
188+
* </ul>
189+
* <p>Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.</p>
190+
* <ul>
191+
* <li><p> deleteFolderRecursiveOperationCallable()
192+
* <li><p> deleteFolderRecursiveCallable()
193+
* </ul>
194+
* </td>
195+
* </tr>
196+
* <tr>
177197
* <td><p> GetStorageLayout</td>
178198
* <td><p> Returns the storage layout configuration for a given bucket.</td>
179199
* <td>
@@ -1450,6 +1470,167 @@ public final UnaryCallable<RenameFolderRequest, Operation> renameFolderCallable(
14501470
return stub.renameFolderCallable();
14511471
}
14521472

1473+
// AUTO-GENERATED DOCUMENTATION AND METHOD.
1474+
/**
1475+
* Deletes a folder recursively. This operation is only applicable to a hierarchical namespace
1476+
* enabled bucket.
1477+
*
1478+
* <p>Sample code:
1479+
*
1480+
* <pre>{@code
1481+
* // This snippet has been automatically generated and should be regarded as a code template only.
1482+
* // It will require modifications to work:
1483+
* // - It may require correct/in-range values for request initialization.
1484+
* // - It may require specifying regional endpoints when creating the service client as shown in
1485+
* // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
1486+
* try (StorageControlClient storageControlClient = StorageControlClient.create()) {
1487+
* FolderName name = FolderName.of("[PROJECT]", "[BUCKET]", "[FOLDER]");
1488+
* storageControlClient.deleteFolderRecursiveAsync(name).get();
1489+
* }
1490+
* }</pre>
1491+
*
1492+
* @param name Required. Name of the folder being deleted, however all of its contents will be
1493+
* deleted too. Format: `projects/{project}/buckets/{bucket}/folders/{folder}`
1494+
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
1495+
*/
1496+
public final OperationFuture<Empty, DeleteFolderRecursiveMetadata> deleteFolderRecursiveAsync(
1497+
FolderName name) {
1498+
DeleteFolderRecursiveRequest request =
1499+
DeleteFolderRecursiveRequest.newBuilder()
1500+
.setName(name == null ? null : name.toString())
1501+
.build();
1502+
return deleteFolderRecursiveAsync(request);
1503+
}
1504+
1505+
// AUTO-GENERATED DOCUMENTATION AND METHOD.
1506+
/**
1507+
* Deletes a folder recursively. This operation is only applicable to a hierarchical namespace
1508+
* enabled bucket.
1509+
*
1510+
* <p>Sample code:
1511+
*
1512+
* <pre>{@code
1513+
* // This snippet has been automatically generated and should be regarded as a code template only.
1514+
* // It will require modifications to work:
1515+
* // - It may require correct/in-range values for request initialization.
1516+
* // - It may require specifying regional endpoints when creating the service client as shown in
1517+
* // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
1518+
* try (StorageControlClient storageControlClient = StorageControlClient.create()) {
1519+
* String name = FolderName.of("[PROJECT]", "[BUCKET]", "[FOLDER]").toString();
1520+
* storageControlClient.deleteFolderRecursiveAsync(name).get();
1521+
* }
1522+
* }</pre>
1523+
*
1524+
* @param name Required. Name of the folder being deleted, however all of its contents will be
1525+
* deleted too. Format: `projects/{project}/buckets/{bucket}/folders/{folder}`
1526+
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
1527+
*/
1528+
public final OperationFuture<Empty, DeleteFolderRecursiveMetadata> deleteFolderRecursiveAsync(
1529+
String name) {
1530+
DeleteFolderRecursiveRequest request =
1531+
DeleteFolderRecursiveRequest.newBuilder().setName(name).build();
1532+
return deleteFolderRecursiveAsync(request);
1533+
}
1534+
1535+
// AUTO-GENERATED DOCUMENTATION AND METHOD.
1536+
/**
1537+
* Deletes a folder recursively. This operation is only applicable to a hierarchical namespace
1538+
* enabled bucket.
1539+
*
1540+
* <p>Sample code:
1541+
*
1542+
* <pre>{@code
1543+
* // This snippet has been automatically generated and should be regarded as a code template only.
1544+
* // It will require modifications to work:
1545+
* // - It may require correct/in-range values for request initialization.
1546+
* // - It may require specifying regional endpoints when creating the service client as shown in
1547+
* // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
1548+
* try (StorageControlClient storageControlClient = StorageControlClient.create()) {
1549+
* DeleteFolderRecursiveRequest request =
1550+
* DeleteFolderRecursiveRequest.newBuilder()
1551+
* .setName(FolderName.of("[PROJECT]", "[BUCKET]", "[FOLDER]").toString())
1552+
* .setIfMetagenerationMatch(1043427781)
1553+
* .setIfMetagenerationNotMatch(1025430873)
1554+
* .setRequestId("requestId693933066")
1555+
* .build();
1556+
* storageControlClient.deleteFolderRecursiveAsync(request).get();
1557+
* }
1558+
* }</pre>
1559+
*
1560+
* @param request The request object containing all of the parameters for the API call.
1561+
* @throws com.google.api.gax.rpc.ApiException if the remote call fails
1562+
*/
1563+
public final OperationFuture<Empty, DeleteFolderRecursiveMetadata> deleteFolderRecursiveAsync(
1564+
DeleteFolderRecursiveRequest request) {
1565+
return deleteFolderRecursiveOperationCallable().futureCall(request);
1566+
}
1567+
1568+
// AUTO-GENERATED DOCUMENTATION AND METHOD.
1569+
/**
1570+
* Deletes a folder recursively. This operation is only applicable to a hierarchical namespace
1571+
* enabled bucket.
1572+
*
1573+
* <p>Sample code:
1574+
*
1575+
* <pre>{@code
1576+
* // This snippet has been automatically generated and should be regarded as a code template only.
1577+
* // It will require modifications to work:
1578+
* // - It may require correct/in-range values for request initialization.
1579+
* // - It may require specifying regional endpoints when creating the service client as shown in
1580+
* // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
1581+
* try (StorageControlClient storageControlClient = StorageControlClient.create()) {
1582+
* DeleteFolderRecursiveRequest request =
1583+
* DeleteFolderRecursiveRequest.newBuilder()
1584+
* .setName(FolderName.of("[PROJECT]", "[BUCKET]", "[FOLDER]").toString())
1585+
* .setIfMetagenerationMatch(1043427781)
1586+
* .setIfMetagenerationNotMatch(1025430873)
1587+
* .setRequestId("requestId693933066")
1588+
* .build();
1589+
* OperationFuture<Empty, DeleteFolderRecursiveMetadata> future =
1590+
* storageControlClient.deleteFolderRecursiveOperationCallable().futureCall(request);
1591+
* // Do something.
1592+
* future.get();
1593+
* }
1594+
* }</pre>
1595+
*/
1596+
public final OperationCallable<DeleteFolderRecursiveRequest, Empty, DeleteFolderRecursiveMetadata>
1597+
deleteFolderRecursiveOperationCallable() {
1598+
return stub.deleteFolderRecursiveOperationCallable();
1599+
}
1600+
1601+
// AUTO-GENERATED DOCUMENTATION AND METHOD.
1602+
/**
1603+
* Deletes a folder recursively. This operation is only applicable to a hierarchical namespace
1604+
* enabled bucket.
1605+
*
1606+
* <p>Sample code:
1607+
*
1608+
* <pre>{@code
1609+
* // This snippet has been automatically generated and should be regarded as a code template only.
1610+
* // It will require modifications to work:
1611+
* // - It may require correct/in-range values for request initialization.
1612+
* // - It may require specifying regional endpoints when creating the service client as shown in
1613+
* // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
1614+
* try (StorageControlClient storageControlClient = StorageControlClient.create()) {
1615+
* DeleteFolderRecursiveRequest request =
1616+
* DeleteFolderRecursiveRequest.newBuilder()
1617+
* .setName(FolderName.of("[PROJECT]", "[BUCKET]", "[FOLDER]").toString())
1618+
* .setIfMetagenerationMatch(1043427781)
1619+
* .setIfMetagenerationNotMatch(1025430873)
1620+
* .setRequestId("requestId693933066")
1621+
* .build();
1622+
* ApiFuture<Operation> future =
1623+
* storageControlClient.deleteFolderRecursiveCallable().futureCall(request);
1624+
* // Do something.
1625+
* future.get();
1626+
* }
1627+
* }</pre>
1628+
*/
1629+
public final UnaryCallable<DeleteFolderRecursiveRequest, Operation>
1630+
deleteFolderRecursiveCallable() {
1631+
return stub.deleteFolderRecursiveCallable();
1632+
}
1633+
14531634
// AUTO-GENERATED DOCUMENTATION AND METHOD.
14541635
/**
14551636
* Returns the storage layout configuration for a given bucket.

google-cloud-storage-control/src/main/java/com/google/storage/control/v2/StorageControlSettings.java

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,19 @@ public UnaryCallSettings<RenameFolderRequest, Operation> renameFolderSettings()
156156
return ((StorageControlStubSettings) getStubSettings()).renameFolderOperationSettings();
157157
}
158158

159+
/** Returns the object with the settings used for calls to deleteFolderRecursive. */
160+
public UnaryCallSettings<DeleteFolderRecursiveRequest, Operation>
161+
deleteFolderRecursiveSettings() {
162+
return ((StorageControlStubSettings) getStubSettings()).deleteFolderRecursiveSettings();
163+
}
164+
165+
/** Returns the object with the settings used for calls to deleteFolderRecursive. */
166+
public OperationCallSettings<DeleteFolderRecursiveRequest, Empty, DeleteFolderRecursiveMetadata>
167+
deleteFolderRecursiveOperationSettings() {
168+
return ((StorageControlStubSettings) getStubSettings())
169+
.deleteFolderRecursiveOperationSettings();
170+
}
171+
159172
/** Returns the object with the settings used for calls to getStorageLayout. */
160173
public UnaryCallSettings<GetStorageLayoutRequest, StorageLayout> getStorageLayoutSettings() {
161174
return ((StorageControlStubSettings) getStubSettings()).getStorageLayoutSettings();
@@ -440,6 +453,19 @@ public UnaryCallSettings.Builder<RenameFolderRequest, Operation> renameFolderSet
440453
return getStubSettingsBuilder().renameFolderOperationSettings();
441454
}
442455

456+
/** Returns the builder for the settings used for calls to deleteFolderRecursive. */
457+
public UnaryCallSettings.Builder<DeleteFolderRecursiveRequest, Operation>
458+
deleteFolderRecursiveSettings() {
459+
return getStubSettingsBuilder().deleteFolderRecursiveSettings();
460+
}
461+
462+
/** Returns the builder for the settings used for calls to deleteFolderRecursive. */
463+
public OperationCallSettings.Builder<
464+
DeleteFolderRecursiveRequest, Empty, DeleteFolderRecursiveMetadata>
465+
deleteFolderRecursiveOperationSettings() {
466+
return getStubSettingsBuilder().deleteFolderRecursiveOperationSettings();
467+
}
468+
443469
/** Returns the builder for the settings used for calls to getStorageLayout. */
444470
public UnaryCallSettings.Builder<GetStorageLayoutRequest, StorageLayout>
445471
getStorageLayoutSettings() {

0 commit comments

Comments
 (0)