diff --git a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageClient.java b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageClient.java index 3200f505c..e65845b85 100644 --- a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageClient.java +++ b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageClient.java @@ -771,7 +771,7 @@ public final Bucket lockBucketRetentionPolicy(LockBucketRetentionPolicyRequest r // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Gets the IAM policy for a specified bucket. + * Gets the IAM policy for a specified bucket or object. * *

Sample code: * @@ -799,7 +799,7 @@ public final Policy getIamPolicy(ResourceName resource) { // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Gets the IAM policy for a specified bucket. + * Gets the IAM policy for a specified bucket or object. * *

Sample code: * @@ -824,7 +824,7 @@ public final Policy getIamPolicy(String resource) { // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Gets the IAM policy for a specified bucket. + * Gets the IAM policy for a specified bucket or object. * *

Sample code: * @@ -852,7 +852,7 @@ public final Policy getIamPolicy(GetIamPolicyRequest request) { // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Gets the IAM policy for a specified bucket. + * Gets the IAM policy for a specified bucket or object. * *

Sample code: * @@ -879,7 +879,7 @@ public final UnaryCallable getIamPolicyCallable() { // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Updates an IAM policy for the specified bucket. + * Updates an IAM policy for the specified bucket or object. * *

Sample code: * @@ -912,7 +912,7 @@ public final Policy setIamPolicy(ResourceName resource, Policy policy) { // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Updates an IAM policy for the specified bucket. + * Updates an IAM policy for the specified bucket or object. * *

Sample code: * @@ -942,7 +942,7 @@ public final Policy setIamPolicy(String resource, Policy policy) { // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Updates an IAM policy for the specified bucket. + * Updates an IAM policy for the specified bucket or object. * *

Sample code: * @@ -971,7 +971,7 @@ public final Policy setIamPolicy(SetIamPolicyRequest request) { // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Updates an IAM policy for the specified bucket. + * Updates an IAM policy for the specified bucket or object. * *

Sample code: * @@ -999,7 +999,8 @@ public final UnaryCallable setIamPolicyCallable() { // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Tests a set of permissions on the given bucket to see which, if any, are held by the caller. + * Tests a set of permissions on the given bucket or object to see which, if any, are held by the + * caller. * *

Sample code: * @@ -1033,7 +1034,8 @@ public final TestIamPermissionsResponse testIamPermissions( // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Tests a set of permissions on the given bucket to see which, if any, are held by the caller. + * Tests a set of permissions on the given bucket or object to see which, if any, are held by the + * caller. * *

Sample code: * @@ -1067,7 +1069,8 @@ public final TestIamPermissionsResponse testIamPermissions( // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Tests a set of permissions on the given bucket to see which, if any, are held by the caller. + * Tests a set of permissions on the given bucket or object to see which, if any, are held by the + * caller. * *

Sample code: * @@ -1095,7 +1098,8 @@ public final TestIamPermissionsResponse testIamPermissions(TestIamPermissionsReq // AUTO-GENERATED DOCUMENTATION AND METHOD. /** - * Tests a set of permissions on the given bucket to see which, if any, are held by the caller. + * Tests a set of permissions on the given bucket or object to see which, if any, are held by the + * caller. * *

Sample code: * @@ -1820,7 +1824,6 @@ public final void deleteObject(String bucket, String object, long generation) { * DeleteObjectRequest.newBuilder() * .setBucket("bucket-1378203158") * .setObject("object-1023368385") - * .setUploadId("uploadId1563990780") * .setGeneration(305703192) * .setIfGenerationMatch(-1086241088) * .setIfGenerationNotMatch(1475720404) @@ -1854,7 +1857,6 @@ public final void deleteObject(DeleteObjectRequest request) { * DeleteObjectRequest.newBuilder() * .setBucket("bucket-1378203158") * .setObject("object-1023368385") - * .setUploadId("uploadId1563990780") * .setGeneration(305703192) * .setIfGenerationMatch(-1086241088) * .setIfGenerationNotMatch(1475720404) @@ -1872,6 +1874,79 @@ public final UnaryCallable deleteObjectCallable() { return stub.deleteObjectCallable(); } + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Cancels an in-progress resumable upload. + * + *

Sample code: + * + *

{@code
+   * // This snippet has been automatically generated for illustrative purposes only.
+   * // It may require modifications to work in your environment.
+   * try (StorageClient storageClient = StorageClient.create()) {
+   *   String uploadId = "uploadId1563990780";
+   *   CancelResumableWriteResponse response = storageClient.cancelResumableWrite(uploadId);
+   * }
+   * }
+ * + * @param uploadId Required. The upload_id of the resumable upload to cancel. This should be + * copied from the `upload_id` field of `StartResumableWriteResponse`. + * @throws com.google.api.gax.rpc.ApiException if the remote call fails + */ + public final CancelResumableWriteResponse cancelResumableWrite(String uploadId) { + CancelResumableWriteRequest request = + CancelResumableWriteRequest.newBuilder().setUploadId(uploadId).build(); + return cancelResumableWrite(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Cancels an in-progress resumable upload. + * + *

Sample code: + * + *

{@code
+   * // This snippet has been automatically generated for illustrative purposes only.
+   * // It may require modifications to work in your environment.
+   * try (StorageClient storageClient = StorageClient.create()) {
+   *   CancelResumableWriteRequest request =
+   *       CancelResumableWriteRequest.newBuilder().setUploadId("uploadId1563990780").build();
+   *   CancelResumableWriteResponse response = storageClient.cancelResumableWrite(request);
+   * }
+   * }
+ * + * @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 CancelResumableWriteResponse cancelResumableWrite( + CancelResumableWriteRequest request) { + return cancelResumableWriteCallable().call(request); + } + + // AUTO-GENERATED DOCUMENTATION AND METHOD. + /** + * Cancels an in-progress resumable upload. + * + *

Sample code: + * + *

{@code
+   * // This snippet has been automatically generated for illustrative purposes only.
+   * // It may require modifications to work in your environment.
+   * try (StorageClient storageClient = StorageClient.create()) {
+   *   CancelResumableWriteRequest request =
+   *       CancelResumableWriteRequest.newBuilder().setUploadId("uploadId1563990780").build();
+   *   ApiFuture future =
+   *       storageClient.cancelResumableWriteCallable().futureCall(request);
+   *   // Do something.
+   *   CancelResumableWriteResponse response = future.get();
+   * }
+   * }
+ */ + public final UnaryCallable + cancelResumableWriteCallable() { + return stub.cancelResumableWriteCallable(); + } + // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Retrieves an object's metadata. @@ -2653,7 +2728,8 @@ public final QueryWriteStatusResponse queryWriteStatus(QueryWriteStatusRequest r * } * } * - * @param project Required. Project ID. + * @param project Required. Project ID, in the format of "projects/<projectIdentifier>". + * <projectIdentifier> can be the project ID or project number. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ServiceAccount getServiceAccount(ProjectName project) { @@ -2679,7 +2755,8 @@ public final ServiceAccount getServiceAccount(ProjectName project) { * } * } * - * @param project Required. Project ID. + * @param project Required. Project ID, in the format of "projects/<projectIdentifier>". + * <projectIdentifier> can be the project ID or project number. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ServiceAccount getServiceAccount(String project) { @@ -2754,7 +2831,9 @@ public final UnaryCallable getServiceA * } * } * - * @param project Required. The project that the HMAC-owning service account lives in. + * @param project Required. The project that the HMAC-owning service account lives in, in the + * format of "projects/<projectIdentifier>". <projectIdentifier> can be the + * project ID or project number. * @param serviceAccountEmail Required. The service account to create the HMAC for. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ @@ -2784,7 +2863,9 @@ public final CreateHmacKeyResponse createHmacKey( * } * } * - * @param project Required. The project that the HMAC-owning service account lives in. + * @param project Required. The project that the HMAC-owning service account lives in, in the + * format of "projects/<projectIdentifier>". <projectIdentifier> can be the + * project ID or project number. * @param serviceAccountEmail Required. The service account to create the HMAC for. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ @@ -2866,7 +2947,9 @@ public final UnaryCallable createHm * } * * @param accessId Required. The identifying key for the HMAC to delete. - * @param project Required. The project id the HMAC key lies in. + * @param project Required. The project that owns the HMAC key, in the format of + * "projects/<projectIdentifier>". <projectIdentifier> can be the project ID or + * project number. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final void deleteHmacKey(String accessId, ProjectName project) { @@ -2895,7 +2978,9 @@ public final void deleteHmacKey(String accessId, ProjectName project) { * } * * @param accessId Required. The identifying key for the HMAC to delete. - * @param project Required. The project id the HMAC key lies in. + * @param project Required. The project that owns the HMAC key, in the format of + * "projects/<projectIdentifier>". <projectIdentifier> can be the project ID or + * project number. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final void deleteHmacKey(String accessId, String project) { @@ -2972,7 +3057,9 @@ public final UnaryCallable deleteHmacKeyCallable() * } * * @param accessId Required. The identifying key for the HMAC to delete. - * @param project Required. The project id the HMAC key lies in. + * @param project Required. The project the HMAC key lies in, in the format of + * "projects/<projectIdentifier>". <projectIdentifier> can be the project ID or + * project number. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final HmacKeyMetadata getHmacKey(String accessId, ProjectName project) { @@ -3001,7 +3088,9 @@ public final HmacKeyMetadata getHmacKey(String accessId, ProjectName project) { * } * * @param accessId Required. The identifying key for the HMAC to delete. - * @param project Required. The project id the HMAC key lies in. + * @param project Required. The project the HMAC key lies in, in the format of + * "projects/<projectIdentifier>". <projectIdentifier> can be the project ID or + * project number. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final HmacKeyMetadata getHmacKey(String accessId, String project) { @@ -3078,7 +3167,9 @@ public final UnaryCallable getHmacKeyCallabl * } * } * - * @param project Required. The project id to list HMAC keys for. + * @param project Required. The project to list HMAC keys for, in the format of + * "projects/<projectIdentifier>". <projectIdentifier> can be the project ID or + * project number. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ListHmacKeysPagedResponse listHmacKeys(ProjectName project) { @@ -3106,7 +3197,9 @@ public final ListHmacKeysPagedResponse listHmacKeys(ProjectName project) { * } * } * - * @param project Required. The project id to list HMAC keys for. + * @param project Required. The project to list HMAC keys for, in the format of + * "projects/<projectIdentifier>". <projectIdentifier> can be the project ID or + * project number. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ListHmacKeysPagedResponse listHmacKeys(String project) { @@ -3233,7 +3326,8 @@ public final UnaryCallable listHmacKe * @param hmacKey Required. The HMAC key to update. If present, the hmac_key's `id` field will be * used to identify the key. Otherwise, the hmac_key's access_id and project fields will be * used to identify the key. - * @param updateMask Update mask for hmac_key. + * @param updateMask Update mask for hmac_key. Not specifying any fields will mean only the + * `state` field is updated to the value specified in `hmac_key`. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final HmacKeyMetadata updateHmacKey(HmacKeyMetadata hmacKey, FieldMask updateMask) { diff --git a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageSettings.java b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageSettings.java index 3800fce4b..43c6e8552 100644 --- a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageSettings.java +++ b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageSettings.java @@ -162,6 +162,12 @@ public UnaryCallSettings deleteObjectSettings() { return ((StorageStubSettings) getStubSettings()).deleteObjectSettings(); } + /** Returns the object with the settings used for calls to cancelResumableWrite. */ + public UnaryCallSettings + cancelResumableWriteSettings() { + return ((StorageStubSettings) getStubSettings()).cancelResumableWriteSettings(); + } + /** Returns the object with the settings used for calls to getObject. */ public UnaryCallSettings getObjectSettings() { return ((StorageStubSettings) getStubSettings()).getObjectSettings(); @@ -434,6 +440,12 @@ public UnaryCallSettings.Builder deleteObjectSetting return getStubSettingsBuilder().deleteObjectSettings(); } + /** Returns the builder for the settings used for calls to cancelResumableWrite. */ + public UnaryCallSettings.Builder + cancelResumableWriteSettings() { + return getStubSettingsBuilder().cancelResumableWriteSettings(); + } + /** Returns the builder for the settings used for calls to getObject. */ public UnaryCallSettings.Builder getObjectSettings() { return getStubSettingsBuilder().getObjectSettings(); diff --git a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/GrpcStorageStub.java b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/GrpcStorageStub.java index 2239a2ae9..403ce80f3 100644 --- a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/GrpcStorageStub.java +++ b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/GrpcStorageStub.java @@ -27,8 +27,10 @@ import com.google.api.gax.grpc.GrpcStubCallableFactory; import com.google.api.gax.rpc.ClientContext; import com.google.api.gax.rpc.ClientStreamingCallable; +import com.google.api.gax.rpc.RequestParamsBuilder; import com.google.api.gax.rpc.ServerStreamingCallable; import com.google.api.gax.rpc.UnaryCallable; +import com.google.api.pathtemplate.PathTemplate; import com.google.iam.v1.GetIamPolicyRequest; import com.google.iam.v1.Policy; import com.google.iam.v1.SetIamPolicyRequest; @@ -37,6 +39,8 @@ import com.google.longrunning.stub.GrpcOperationsStub; import com.google.protobuf.Empty; import com.google.storage.v2.Bucket; +import com.google.storage.v2.CancelResumableWriteRequest; +import com.google.storage.v2.CancelResumableWriteResponse; import com.google.storage.v2.ComposeObjectRequest; import com.google.storage.v2.CreateBucketRequest; import com.google.storage.v2.CreateHmacKeyRequest; @@ -229,6 +233,17 @@ public class GrpcStorageStub extends StorageStub { .setResponseMarshaller(ProtoUtils.marshaller(Empty.getDefaultInstance())) .build(); + private static final MethodDescriptor + cancelResumableWriteMethodDescriptor = + MethodDescriptor.newBuilder() + .setType(MethodDescriptor.MethodType.UNARY) + .setFullMethodName("google.storage.v2.Storage/CancelResumableWrite") + .setRequestMarshaller( + ProtoUtils.marshaller(CancelResumableWriteRequest.getDefaultInstance())) + .setResponseMarshaller( + ProtoUtils.marshaller(CancelResumableWriteResponse.getDefaultInstance())) + .build(); + private static final MethodDescriptor getObjectMethodDescriptor = MethodDescriptor.newBuilder() .setType(MethodDescriptor.MethodType.UNARY) @@ -386,6 +401,8 @@ public class GrpcStorageStub extends StorageStub { listNotificationsPagedCallable; private final UnaryCallable composeObjectCallable; private final UnaryCallable deleteObjectCallable; + private final UnaryCallable + cancelResumableWriteCallable; private final UnaryCallable getObjectCallable; private final ServerStreamingCallable readObjectCallable; private final UnaryCallable updateObjectCallable; @@ -412,6 +429,59 @@ public class GrpcStorageStub extends StorageStub { private final GrpcOperationsStub operationsStub; private final GrpcStubCallableFactory callableFactory; + private static final PathTemplate DELETE_BUCKET_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate GET_BUCKET_0_PATH_TEMPLATE = PathTemplate.create("{bucket=**}"); + private static final PathTemplate LOCK_BUCKET_RETENTION_POLICY_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate GET_IAM_POLICY_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate GET_IAM_POLICY_1_PATH_TEMPLATE = + PathTemplate.create("{bucket=projects/*/buckets/*}/objects/**"); + private static final PathTemplate SET_IAM_POLICY_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate SET_IAM_POLICY_1_PATH_TEMPLATE = + PathTemplate.create("{bucket=projects/*/buckets/*}/objects/**"); + private static final PathTemplate TEST_IAM_PERMISSIONS_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate TEST_IAM_PERMISSIONS_1_PATH_TEMPLATE = + PathTemplate.create("{bucket=projects/*/buckets/*}/objects/**"); + private static final PathTemplate UPDATE_BUCKET_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate DELETE_NOTIFICATION_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=projects/*/buckets/*}/**"); + private static final PathTemplate GET_NOTIFICATION_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=projects/*/buckets/*}/**"); + private static final PathTemplate CREATE_NOTIFICATION_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate LIST_NOTIFICATIONS_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate COMPOSE_OBJECT_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate DELETE_OBJECT_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate CANCEL_RESUMABLE_WRITE_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=projects/*/buckets/*}/**"); + private static final PathTemplate GET_OBJECT_0_PATH_TEMPLATE = PathTemplate.create("{bucket=**}"); + private static final PathTemplate READ_OBJECT_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate UPDATE_OBJECT_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate WRITE_OBJECT_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate WRITE_OBJECT_1_PATH_TEMPLATE = + PathTemplate.create("{bucket=projects/*/buckets/*}/**"); + private static final PathTemplate LIST_OBJECTS_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate REWRITE_OBJECT_0_PATH_TEMPLATE = + PathTemplate.create("{source_bucket=**}"); + private static final PathTemplate REWRITE_OBJECT_1_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate START_RESUMABLE_WRITE_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=**}"); + private static final PathTemplate QUERY_WRITE_STATUS_0_PATH_TEMPLATE = + PathTemplate.create("{bucket=projects/*/buckets/*}/**"); + public static final GrpcStorageStub create(StorageStubSettings settings) throws IOException { return new GrpcStorageStub(settings, ClientContext.create(settings)); } @@ -450,10 +520,22 @@ protected GrpcStorageStub( GrpcCallSettings deleteBucketTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(deleteBucketMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add(request.getName(), "bucket", DELETE_BUCKET_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings getBucketTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(getBucketMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add(request.getName(), "bucket", GET_BUCKET_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings createBucketTransportSettings = GrpcCallSettings.newBuilder() @@ -467,82 +549,245 @@ protected GrpcStorageStub( lockBucketRetentionPolicyTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(lockBucketRetentionPolicyMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add( + request.getBucket(), + "bucket", + LOCK_BUCKET_RETENTION_POLICY_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings getIamPolicyTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(getIamPolicyMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add(request.getResource(), "bucket", GET_IAM_POLICY_0_PATH_TEMPLATE); + builder.add(request.getResource(), "bucket", GET_IAM_POLICY_1_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings setIamPolicyTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(setIamPolicyMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add(request.getResource(), "bucket", SET_IAM_POLICY_0_PATH_TEMPLATE); + builder.add(request.getResource(), "bucket", SET_IAM_POLICY_1_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings testIamPermissionsTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(testIamPermissionsMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add( + request.getResource(), "bucket", TEST_IAM_PERMISSIONS_0_PATH_TEMPLATE); + builder.add( + request.getResource(), "bucket", TEST_IAM_PERMISSIONS_1_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings updateBucketTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(updateBucketMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + if (request.getBucket() != null) { + builder.add( + request.getBucket().getName(), "bucket", UPDATE_BUCKET_0_PATH_TEMPLATE); + } + return builder.build(); + }) .build(); GrpcCallSettings deleteNotificationTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(deleteNotificationMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add(request.getName(), "bucket", DELETE_NOTIFICATION_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings getNotificationTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(getNotificationMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add(request.getName(), "bucket", GET_NOTIFICATION_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings createNotificationTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(createNotificationMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add(request.getParent(), "bucket", CREATE_NOTIFICATION_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings listNotificationsTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(listNotificationsMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add( + request.getParent(), "bucket", LIST_NOTIFICATIONS_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings composeObjectTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(composeObjectMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + if (request.getDestination() != null) { + builder.add( + request.getDestination().getBucket(), + "bucket", + COMPOSE_OBJECT_0_PATH_TEMPLATE); + } + return builder.build(); + }) .build(); GrpcCallSettings deleteObjectTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(deleteObjectMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add(request.getBucket(), "bucket", DELETE_OBJECT_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); + GrpcCallSettings + cancelResumableWriteTransportSettings = + GrpcCallSettings.newBuilder() + .setMethodDescriptor(cancelResumableWriteMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add( + request.getUploadId(), "bucket", CANCEL_RESUMABLE_WRITE_0_PATH_TEMPLATE); + return builder.build(); + }) + .build(); GrpcCallSettings getObjectTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(getObjectMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add(request.getBucket(), "bucket", GET_OBJECT_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings readObjectTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(readObjectMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add(request.getBucket(), "bucket", READ_OBJECT_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings updateObjectTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(updateObjectMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + if (request.getObject() != null) { + builder.add( + request.getObject().getBucket(), "bucket", UPDATE_OBJECT_0_PATH_TEMPLATE); + } + return builder.build(); + }) .build(); GrpcCallSettings writeObjectTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(writeObjectMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + if (request.getWriteObjectSpec() != null + && request.getWriteObjectSpec().getResource() != null) { + builder.add( + request.getWriteObjectSpec().getResource().getBucket(), + "bucket", + WRITE_OBJECT_0_PATH_TEMPLATE); + } + builder.add(request.getUploadId(), "bucket", WRITE_OBJECT_1_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings listObjectsTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(listObjectsMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add(request.getParent(), "bucket", LIST_OBJECTS_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings rewriteObjectTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(rewriteObjectMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add( + request.getSourceBucket(), "source_bucket", REWRITE_OBJECT_0_PATH_TEMPLATE); + builder.add( + request.getDestinationBucket(), "bucket", REWRITE_OBJECT_1_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings startResumableWriteTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(startResumableWriteMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + if (request.getWriteObjectSpec() != null + && request.getWriteObjectSpec().getResource() != null) { + builder.add( + request.getWriteObjectSpec().getResource().getBucket(), + "bucket", + START_RESUMABLE_WRITE_0_PATH_TEMPLATE); + } + return builder.build(); + }) .build(); GrpcCallSettings queryWriteStatusTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(queryWriteStatusMethodDescriptor) + .setParamsExtractor( + request -> { + RequestParamsBuilder builder = RequestParamsBuilder.create(); + builder.add( + request.getUploadId(), "bucket", QUERY_WRITE_STATUS_0_PATH_TEMPLATE); + return builder.build(); + }) .build(); GrpcCallSettings getServiceAccountTransportSettings = GrpcCallSettings.newBuilder() @@ -632,6 +877,11 @@ protected GrpcStorageStub( this.deleteObjectCallable = callableFactory.createUnaryCallable( deleteObjectTransportSettings, settings.deleteObjectSettings(), clientContext); + this.cancelResumableWriteCallable = + callableFactory.createUnaryCallable( + cancelResumableWriteTransportSettings, + settings.cancelResumableWriteSettings(), + clientContext); this.getObjectCallable = callableFactory.createUnaryCallable( getObjectTransportSettings, settings.getObjectSettings(), clientContext); @@ -782,6 +1032,12 @@ public UnaryCallable deleteObjectCallable() { return deleteObjectCallable; } + @Override + public UnaryCallable + cancelResumableWriteCallable() { + return cancelResumableWriteCallable; + } + @Override public UnaryCallable getObjectCallable() { return getObjectCallable; diff --git a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/StorageStub.java b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/StorageStub.java index 04ac9d3ba..c9562ed98 100644 --- a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/StorageStub.java +++ b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/StorageStub.java @@ -32,6 +32,8 @@ import com.google.iam.v1.TestIamPermissionsResponse; import com.google.protobuf.Empty; import com.google.storage.v2.Bucket; +import com.google.storage.v2.CancelResumableWriteRequest; +import com.google.storage.v2.CancelResumableWriteResponse; import com.google.storage.v2.ComposeObjectRequest; import com.google.storage.v2.CreateBucketRequest; import com.google.storage.v2.CreateHmacKeyRequest; @@ -155,6 +157,11 @@ public UnaryCallable deleteObjectCallable() { throw new UnsupportedOperationException("Not implemented: deleteObjectCallable()"); } + public UnaryCallable + cancelResumableWriteCallable() { + throw new UnsupportedOperationException("Not implemented: cancelResumableWriteCallable()"); + } + public UnaryCallable getObjectCallable() { throw new UnsupportedOperationException("Not implemented: getObjectCallable()"); } diff --git a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/StorageStubSettings.java b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/StorageStubSettings.java index 78d8bae91..c49a9d89a 100644 --- a/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/StorageStubSettings.java +++ b/gapic-google-cloud-storage-v2/src/main/java/com/google/storage/v2/stub/StorageStubSettings.java @@ -59,6 +59,8 @@ import com.google.iam.v1.TestIamPermissionsResponse; import com.google.protobuf.Empty; import com.google.storage.v2.Bucket; +import com.google.storage.v2.CancelResumableWriteRequest; +import com.google.storage.v2.CancelResumableWriteResponse; import com.google.storage.v2.ComposeObjectRequest; import com.google.storage.v2.CreateBucketRequest; import com.google.storage.v2.CreateHmacKeyRequest; @@ -170,6 +172,8 @@ public class StorageStubSettings extends StubSettings { listNotificationsSettings; private final UnaryCallSettings composeObjectSettings; private final UnaryCallSettings deleteObjectSettings; + private final UnaryCallSettings + cancelResumableWriteSettings; private final UnaryCallSettings getObjectSettings; private final ServerStreamingCallSettings readObjectSettings; @@ -494,6 +498,12 @@ public UnaryCallSettings deleteObjectSettings() { return deleteObjectSettings; } + /** Returns the object with the settings used for calls to cancelResumableWrite. */ + public UnaryCallSettings + cancelResumableWriteSettings() { + return cancelResumableWriteSettings; + } + /** Returns the object with the settings used for calls to getObject. */ public UnaryCallSettings getObjectSettings() { return getObjectSettings; @@ -687,6 +697,7 @@ protected StorageStubSettings(Builder settingsBuilder) throws IOException { listNotificationsSettings = settingsBuilder.listNotificationsSettings().build(); composeObjectSettings = settingsBuilder.composeObjectSettings().build(); deleteObjectSettings = settingsBuilder.deleteObjectSettings().build(); + cancelResumableWriteSettings = settingsBuilder.cancelResumableWriteSettings().build(); getObjectSettings = settingsBuilder.getObjectSettings().build(); readObjectSettings = settingsBuilder.readObjectSettings().build(); updateObjectSettings = settingsBuilder.updateObjectSettings().build(); @@ -730,6 +741,9 @@ public static class Builder extends StubSettings.Builder composeObjectSettings; private final UnaryCallSettings.Builder deleteObjectSettings; + private final UnaryCallSettings.Builder< + CancelResumableWriteRequest, CancelResumableWriteResponse> + cancelResumableWriteSettings; private final UnaryCallSettings.Builder getObjectSettings; private final ServerStreamingCallSettings.Builder readObjectSettings; @@ -811,6 +825,7 @@ protected Builder(ClientContext clientContext) { listNotificationsSettings = PagedCallSettings.newBuilder(LIST_NOTIFICATIONS_PAGE_STR_FACT); composeObjectSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); deleteObjectSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); + cancelResumableWriteSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); getObjectSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); readObjectSettings = ServerStreamingCallSettings.newBuilder(); updateObjectSettings = UnaryCallSettings.newUnaryCallSettingsBuilder(); @@ -843,6 +858,7 @@ protected Builder(ClientContext clientContext) { listNotificationsSettings, composeObjectSettings, deleteObjectSettings, + cancelResumableWriteSettings, getObjectSettings, updateObjectSettings, listObjectsSettings, @@ -876,6 +892,7 @@ protected Builder(StorageStubSettings settings) { listNotificationsSettings = settings.listNotificationsSettings.toBuilder(); composeObjectSettings = settings.composeObjectSettings.toBuilder(); deleteObjectSettings = settings.deleteObjectSettings.toBuilder(); + cancelResumableWriteSettings = settings.cancelResumableWriteSettings.toBuilder(); getObjectSettings = settings.getObjectSettings.toBuilder(); readObjectSettings = settings.readObjectSettings.toBuilder(); updateObjectSettings = settings.updateObjectSettings.toBuilder(); @@ -908,6 +925,7 @@ protected Builder(StorageStubSettings settings) { listNotificationsSettings, composeObjectSettings, deleteObjectSettings, + cancelResumableWriteSettings, getObjectSettings, updateObjectSettings, listObjectsSettings, @@ -1024,6 +1042,11 @@ private static Builder initDefaults(Builder builder) { .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_0_codes")) .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_0_params")); + builder + .cancelResumableWriteSettings() + .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_0_codes")) + .setRetrySettings(RETRY_PARAM_DEFINITIONS.get("retry_policy_0_params")); + builder .getObjectSettings() .setRetryableCodes(RETRYABLE_CODE_DEFINITIONS.get("retry_policy_0_codes")) @@ -1191,6 +1214,12 @@ public UnaryCallSettings.Builder deleteObjectSetting return deleteObjectSettings; } + /** Returns the builder for the settings used for calls to cancelResumableWrite. */ + public UnaryCallSettings.Builder + cancelResumableWriteSettings() { + return cancelResumableWriteSettings; + } + /** Returns the builder for the settings used for calls to getObject. */ public UnaryCallSettings.Builder getObjectSettings() { return getObjectSettings; diff --git a/gapic-google-cloud-storage-v2/src/main/resources/com/google/storage/v2/gapic_metadata.json b/gapic-google-cloud-storage-v2/src/main/resources/com/google/storage/v2/gapic_metadata.json index 5d16f3131..9442f7115 100644 --- a/gapic-google-cloud-storage-v2/src/main/resources/com/google/storage/v2/gapic_metadata.json +++ b/gapic-google-cloud-storage-v2/src/main/resources/com/google/storage/v2/gapic_metadata.json @@ -10,6 +10,9 @@ "grpc": { "libraryClient": "StorageClient", "rpcs": { + "CancelResumableWrite": { + "methods": ["cancelResumableWrite", "cancelResumableWrite", "cancelResumableWriteCallable"] + }, "ComposeObject": { "methods": ["composeObject", "composeObjectCallable"] }, diff --git a/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/MockStorageImpl.java b/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/MockStorageImpl.java index ba41a020a..f9781c107 100644 --- a/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/MockStorageImpl.java +++ b/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/MockStorageImpl.java @@ -373,6 +373,28 @@ public void deleteObject(DeleteObjectRequest request, StreamObserver resp } } + @Override + public void cancelResumableWrite( + CancelResumableWriteRequest request, + StreamObserver responseObserver) { + java.lang.Object response = responses.poll(); + if (response instanceof CancelResumableWriteResponse) { + requests.add(request); + responseObserver.onNext(((CancelResumableWriteResponse) response)); + responseObserver.onCompleted(); + } else if (response instanceof Exception) { + responseObserver.onError(((Exception) response)); + } else { + responseObserver.onError( + new IllegalArgumentException( + String.format( + "Unrecognized response type %s for method CancelResumableWrite, expected %s or %s", + response == null ? "null" : response.getClass().getName(), + CancelResumableWriteResponse.class.getName(), + Exception.class.getName()))); + } + } + @Override public void getObject(GetObjectRequest request, StreamObserver responseObserver) { java.lang.Object response = responses.poll(); diff --git a/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientHttpJsonTest.java b/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientHttpJsonTest.java index 8ccc5a0f4..5b599f062 100644 --- a/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientHttpJsonTest.java +++ b/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientHttpJsonTest.java @@ -151,6 +151,12 @@ public void deleteObjectUnsupportedMethodTest() throws Exception { // This empty test is generated for technical reasons. } + @Test + public void cancelResumableWriteUnsupportedMethodTest() throws Exception { + // The cancelResumableWrite() method is not supported in REST transport. + // This empty test is generated for technical reasons. + } + @Test public void getObjectUnsupportedMethodTest() throws Exception { // The getObject() method is not supported in REST transport. diff --git a/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientTest.java b/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientTest.java index 5d8bd4159..b4a7c6ddf 100644 --- a/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientTest.java +++ b/gapic-google-cloud-storage-v2/src/test/java/com/google/storage/v2/StorageClientTest.java @@ -1495,6 +1495,43 @@ public void deleteObjectExceptionTest2() throws Exception { } } + @Test + public void cancelResumableWriteTest() throws Exception { + CancelResumableWriteResponse expectedResponse = + CancelResumableWriteResponse.newBuilder().build(); + mockStorage.addResponse(expectedResponse); + + String uploadId = "uploadId1563990780"; + + CancelResumableWriteResponse actualResponse = client.cancelResumableWrite(uploadId); + Assert.assertEquals(expectedResponse, actualResponse); + + List actualRequests = mockStorage.getRequests(); + Assert.assertEquals(1, actualRequests.size()); + CancelResumableWriteRequest actualRequest = + ((CancelResumableWriteRequest) actualRequests.get(0)); + + Assert.assertEquals(uploadId, actualRequest.getUploadId()); + Assert.assertTrue( + channelProvider.isHeaderSent( + ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), + GaxGrpcProperties.getDefaultApiClientHeaderPattern())); + } + + @Test + public void cancelResumableWriteExceptionTest() throws Exception { + StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); + mockStorage.addException(exception); + + try { + String uploadId = "uploadId1563990780"; + client.cancelResumableWrite(uploadId); + Assert.fail("No exception raised"); + } catch (InvalidArgumentException e) { + // Expected exception. + } + } + @Test public void getObjectTest() throws Exception { Object expectedResponse = diff --git a/grpc-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageGrpc.java b/grpc-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageGrpc.java index 9ad354991..74422ea15 100644 --- a/grpc-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageGrpc.java +++ b/grpc-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageGrpc.java @@ -663,6 +663,54 @@ private StorageGrpc() {} return getDeleteObjectMethod; } + private static volatile io.grpc.MethodDescriptor< + com.google.storage.v2.CancelResumableWriteRequest, + com.google.storage.v2.CancelResumableWriteResponse> + getCancelResumableWriteMethod; + + @io.grpc.stub.annotations.RpcMethod( + fullMethodName = SERVICE_NAME + '/' + "CancelResumableWrite", + requestType = com.google.storage.v2.CancelResumableWriteRequest.class, + responseType = com.google.storage.v2.CancelResumableWriteResponse.class, + methodType = io.grpc.MethodDescriptor.MethodType.UNARY) + public static io.grpc.MethodDescriptor< + com.google.storage.v2.CancelResumableWriteRequest, + com.google.storage.v2.CancelResumableWriteResponse> + getCancelResumableWriteMethod() { + io.grpc.MethodDescriptor< + com.google.storage.v2.CancelResumableWriteRequest, + com.google.storage.v2.CancelResumableWriteResponse> + getCancelResumableWriteMethod; + if ((getCancelResumableWriteMethod = StorageGrpc.getCancelResumableWriteMethod) == null) { + synchronized (StorageGrpc.class) { + if ((getCancelResumableWriteMethod = StorageGrpc.getCancelResumableWriteMethod) == null) { + StorageGrpc.getCancelResumableWriteMethod = + getCancelResumableWriteMethod = + io.grpc.MethodDescriptor + . + newBuilder() + .setType(io.grpc.MethodDescriptor.MethodType.UNARY) + .setFullMethodName( + generateFullMethodName(SERVICE_NAME, "CancelResumableWrite")) + .setSampledToLocalTracing(true) + .setRequestMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.storage.v2.CancelResumableWriteRequest + .getDefaultInstance())) + .setResponseMarshaller( + io.grpc.protobuf.ProtoUtils.marshaller( + com.google.storage.v2.CancelResumableWriteResponse + .getDefaultInstance())) + .setSchemaDescriptor( + new StorageMethodDescriptorSupplier("CancelResumableWrite")) + .build(); + } + } + } + return getCancelResumableWriteMethod; + } + private static volatile io.grpc.MethodDescriptor< com.google.storage.v2.GetObjectRequest, com.google.storage.v2.Object> getGetObjectMethod; @@ -1381,7 +1429,7 @@ public void lockBucketRetentionPolicy( * * *
-     * Gets the IAM policy for a specified bucket.
+     * Gets the IAM policy for a specified bucket or object.
      * 
*/ public void getIamPolicy( @@ -1395,7 +1443,7 @@ public void getIamPolicy( * * *
-     * Updates an IAM policy for the specified bucket.
+     * Updates an IAM policy for the specified bucket or object.
      * 
*/ public void setIamPolicy( @@ -1409,7 +1457,7 @@ public void setIamPolicy( * * *
-     * Tests a set of permissions on the given bucket to see which, if
+     * Tests a set of permissions on the given bucket or object to see which, if
      * any, are held by the caller.
      * 
*/ @@ -1515,8 +1563,7 @@ public void composeObject( * *
      * Deletes an object and its metadata. Deletions are permanent if versioning
-     * is not enabled for the bucket, or if the `generation` parameter
-     * is used.
+     * is not enabled for the bucket, or if the `generation` parameter is used.
      * 
*/ public void deleteObject( @@ -1526,6 +1573,21 @@ public void deleteObject( getDeleteObjectMethod(), responseObserver); } + /** + * + * + *
+     * Cancels an in-progress resumable upload.
+     * 
+ */ + public void cancelResumableWrite( + com.google.storage.v2.CancelResumableWriteRequest request, + io.grpc.stub.StreamObserver + responseObserver) { + io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall( + getCancelResumableWriteMethod(), responseObserver); + } + /** * * @@ -1876,6 +1938,13 @@ public final io.grpc.ServerServiceDefinition bindService() { new MethodHandlers< com.google.storage.v2.DeleteObjectRequest, com.google.protobuf.Empty>( this, METHODID_DELETE_OBJECT))) + .addMethod( + getCancelResumableWriteMethod(), + io.grpc.stub.ServerCalls.asyncUnaryCall( + new MethodHandlers< + com.google.storage.v2.CancelResumableWriteRequest, + com.google.storage.v2.CancelResumableWriteResponse>( + this, METHODID_CANCEL_RESUMABLE_WRITE))) .addMethod( getGetObjectMethod(), io.grpc.stub.ServerCalls.asyncUnaryCall( @@ -2082,7 +2151,7 @@ public void lockBucketRetentionPolicy( * * *
-     * Gets the IAM policy for a specified bucket.
+     * Gets the IAM policy for a specified bucket or object.
      * 
*/ public void getIamPolicy( @@ -2098,7 +2167,7 @@ public void getIamPolicy( * * *
-     * Updates an IAM policy for the specified bucket.
+     * Updates an IAM policy for the specified bucket or object.
      * 
*/ public void setIamPolicy( @@ -2114,7 +2183,7 @@ public void setIamPolicy( * * *
-     * Tests a set of permissions on the given bucket to see which, if
+     * Tests a set of permissions on the given bucket or object to see which, if
      * any, are held by the caller.
      * 
*/ @@ -2234,8 +2303,7 @@ public void composeObject( * *
      * Deletes an object and its metadata. Deletions are permanent if versioning
-     * is not enabled for the bucket, or if the `generation` parameter
-     * is used.
+     * is not enabled for the bucket, or if the `generation` parameter is used.
      * 
*/ public void deleteObject( @@ -2247,6 +2315,23 @@ public void deleteObject( responseObserver); } + /** + * + * + *
+     * Cancels an in-progress resumable upload.
+     * 
+ */ + public void cancelResumableWrite( + com.google.storage.v2.CancelResumableWriteRequest request, + io.grpc.stub.StreamObserver + responseObserver) { + io.grpc.stub.ClientCalls.asyncUnaryCall( + getChannel().newCall(getCancelResumableWriteMethod(), getCallOptions()), + request, + responseObserver); + } + /** * * @@ -2629,7 +2714,7 @@ public com.google.storage.v2.Bucket lockBucketRetentionPolicy( * * *
-     * Gets the IAM policy for a specified bucket.
+     * Gets the IAM policy for a specified bucket or object.
      * 
*/ public com.google.iam.v1.Policy getIamPolicy(com.google.iam.v1.GetIamPolicyRequest request) { @@ -2641,7 +2726,7 @@ public com.google.iam.v1.Policy getIamPolicy(com.google.iam.v1.GetIamPolicyReque * * *
-     * Updates an IAM policy for the specified bucket.
+     * Updates an IAM policy for the specified bucket or object.
      * 
*/ public com.google.iam.v1.Policy setIamPolicy(com.google.iam.v1.SetIamPolicyRequest request) { @@ -2653,7 +2738,7 @@ public com.google.iam.v1.Policy setIamPolicy(com.google.iam.v1.SetIamPolicyReque * * *
-     * Tests a set of permissions on the given bucket to see which, if
+     * Tests a set of permissions on the given bucket or object to see which, if
      * any, are held by the caller.
      * 
*/ @@ -2750,8 +2835,7 @@ public com.google.storage.v2.Object composeObject( * *
      * Deletes an object and its metadata. Deletions are permanent if versioning
-     * is not enabled for the bucket, or if the `generation` parameter
-     * is used.
+     * is not enabled for the bucket, or if the `generation` parameter is used.
      * 
*/ public com.google.protobuf.Empty deleteObject( @@ -2760,6 +2844,19 @@ public com.google.protobuf.Empty deleteObject( getChannel(), getDeleteObjectMethod(), getCallOptions(), request); } + /** + * + * + *
+     * Cancels an in-progress resumable upload.
+     * 
+ */ + public com.google.storage.v2.CancelResumableWriteResponse cancelResumableWrite( + com.google.storage.v2.CancelResumableWriteRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getCancelResumableWriteMethod(), getCallOptions(), request); + } + /** * * @@ -3048,7 +3145,7 @@ protected StorageFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions c * * *
-     * Gets the IAM policy for a specified bucket.
+     * Gets the IAM policy for a specified bucket or object.
      * 
*/ public com.google.common.util.concurrent.ListenableFuture @@ -3061,7 +3158,7 @@ protected StorageFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions c * * *
-     * Updates an IAM policy for the specified bucket.
+     * Updates an IAM policy for the specified bucket or object.
      * 
*/ public com.google.common.util.concurrent.ListenableFuture @@ -3074,7 +3171,7 @@ protected StorageFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions c * * *
-     * Tests a set of permissions on the given bucket to see which, if
+     * Tests a set of permissions on the given bucket or object to see which, if
      * any, are held by the caller.
      * 
*/ @@ -3173,8 +3270,7 @@ protected StorageFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions c * *
      * Deletes an object and its metadata. Deletions are permanent if versioning
-     * is not enabled for the bucket, or if the `generation` parameter
-     * is used.
+     * is not enabled for the bucket, or if the `generation` parameter is used.
      * 
*/ public com.google.common.util.concurrent.ListenableFuture @@ -3183,6 +3279,20 @@ protected StorageFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions c getChannel().newCall(getDeleteObjectMethod(), getCallOptions()), request); } + /** + * + * + *
+     * Cancels an in-progress resumable upload.
+     * 
+ */ + public com.google.common.util.concurrent.ListenableFuture< + com.google.storage.v2.CancelResumableWriteResponse> + cancelResumableWrite(com.google.storage.v2.CancelResumableWriteRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getCancelResumableWriteMethod(), getCallOptions()), request); + } + /** * * @@ -3374,20 +3484,21 @@ protected StorageFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions c private static final int METHODID_LIST_NOTIFICATIONS = 12; private static final int METHODID_COMPOSE_OBJECT = 13; private static final int METHODID_DELETE_OBJECT = 14; - private static final int METHODID_GET_OBJECT = 15; - private static final int METHODID_READ_OBJECT = 16; - private static final int METHODID_UPDATE_OBJECT = 17; - private static final int METHODID_LIST_OBJECTS = 18; - private static final int METHODID_REWRITE_OBJECT = 19; - private static final int METHODID_START_RESUMABLE_WRITE = 20; - private static final int METHODID_QUERY_WRITE_STATUS = 21; - private static final int METHODID_GET_SERVICE_ACCOUNT = 22; - private static final int METHODID_CREATE_HMAC_KEY = 23; - private static final int METHODID_DELETE_HMAC_KEY = 24; - private static final int METHODID_GET_HMAC_KEY = 25; - private static final int METHODID_LIST_HMAC_KEYS = 26; - private static final int METHODID_UPDATE_HMAC_KEY = 27; - private static final int METHODID_WRITE_OBJECT = 28; + private static final int METHODID_CANCEL_RESUMABLE_WRITE = 15; + private static final int METHODID_GET_OBJECT = 16; + private static final int METHODID_READ_OBJECT = 17; + private static final int METHODID_UPDATE_OBJECT = 18; + private static final int METHODID_LIST_OBJECTS = 19; + private static final int METHODID_REWRITE_OBJECT = 20; + private static final int METHODID_START_RESUMABLE_WRITE = 21; + private static final int METHODID_QUERY_WRITE_STATUS = 22; + private static final int METHODID_GET_SERVICE_ACCOUNT = 23; + private static final int METHODID_CREATE_HMAC_KEY = 24; + private static final int METHODID_DELETE_HMAC_KEY = 25; + private static final int METHODID_GET_HMAC_KEY = 26; + private static final int METHODID_LIST_HMAC_KEYS = 27; + private static final int METHODID_UPDATE_HMAC_KEY = 28; + private static final int METHODID_WRITE_OBJECT = 29; private static final class MethodHandlers implements io.grpc.stub.ServerCalls.UnaryMethod, @@ -3484,6 +3595,12 @@ public void invoke(Req request, io.grpc.stub.StreamObserver responseObserv (com.google.storage.v2.DeleteObjectRequest) request, (io.grpc.stub.StreamObserver) responseObserver); break; + case METHODID_CANCEL_RESUMABLE_WRITE: + serviceImpl.cancelResumableWrite( + (com.google.storage.v2.CancelResumableWriteRequest) request, + (io.grpc.stub.StreamObserver) + responseObserver); + break; case METHODID_GET_OBJECT: serviceImpl.getObject( (com.google.storage.v2.GetObjectRequest) request, @@ -3640,6 +3757,7 @@ public static io.grpc.ServiceDescriptor getServiceDescriptor() { .addMethod(getListNotificationsMethod()) .addMethod(getComposeObjectMethod()) .addMethod(getDeleteObjectMethod()) + .addMethod(getCancelResumableWriteMethod()) .addMethod(getGetObjectMethod()) .addMethod(getReadObjectMethod()) .addMethod(getUpdateObjectMethod()) diff --git a/proto-google-cloud-storage-v2/clirr-ignored-differences.xml b/proto-google-cloud-storage-v2/clirr-ignored-differences.xml index 4a3695b3b..01216f0bd 100644 --- a/proto-google-cloud-storage-v2/clirr-ignored-differences.xml +++ b/proto-google-cloud-storage-v2/clirr-ignored-differences.xml @@ -1,31 +1,23 @@ - - - 8001 - com/google/storage/v2/CommonRequestParams* - + 6011 - com/google/storage/v2/** - COMMON_REQUEST_PARAMS_FIELD_NUMBER + com/google/storage/v2/DeleteObjectRequest + UPLOAD_ID_FIELD_NUMBER 7002 com/google/storage/v2/** - * *CommonRequestParams*(*) + * *UploadId*(*) + 7012 - com/google/storage/v2/*OrBuilder - * *Etag*(*) - - - 7012 - com/google/storage/v2/*OrBuilder - * *CustomPlacementConfig*(*) + com/google/storage/v2/WriteObjectSpecOrBuilder + * *ObjectSize() diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Bucket.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Bucket.java index 1c12c9ddf..d6551a6fe 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Bucket.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Bucket.java @@ -16828,7 +16828,9 @@ public com.google.protobuf.ByteString getEtagBytes() { * * *
-   * Immutable. The project which owns this bucket.
+   * Immutable. The project which owns this bucket, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -16853,7 +16855,9 @@ public java.lang.String getProject() { * * *
-   * Immutable. The project which owns this bucket.
+   * Immutable. The project which owns this bucket, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -19559,7 +19563,9 @@ public Builder setEtagBytes(com.google.protobuf.ByteString value) { * * *
-     * Immutable. The project which owns this bucket.
+     * Immutable. The project which owns this bucket, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -19583,7 +19589,9 @@ public java.lang.String getProject() { * * *
-     * Immutable. The project which owns this bucket.
+     * Immutable. The project which owns this bucket, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -19607,7 +19615,9 @@ public com.google.protobuf.ByteString getProjectBytes() { * * *
-     * Immutable. The project which owns this bucket.
+     * Immutable. The project which owns this bucket, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -19630,7 +19640,9 @@ public Builder setProject(java.lang.String value) { * * *
-     * Immutable. The project which owns this bucket.
+     * Immutable. The project which owns this bucket, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -19649,7 +19661,9 @@ public Builder clearProject() { * * *
-     * Immutable. The project which owns this bucket.
+     * Immutable. The project which owns this bucket, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketOrBuilder.java index 50ec1b91d..26d659353 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/BucketOrBuilder.java @@ -110,7 +110,9 @@ public interface BucketOrBuilder * * *
-   * Immutable. The project which owns this bucket.
+   * Immutable. The project which owns this bucket, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -124,7 +126,9 @@ public interface BucketOrBuilder * * *
-   * Immutable. The project which owns this bucket.
+   * Immutable. The project which owns this bucket, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequest.java new file mode 100644 index 000000000..834ab56d6 --- /dev/null +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequest.java @@ -0,0 +1,647 @@ +/* + * Copyright 2020 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/storage/v2/storage.proto + +package com.google.storage.v2; + +/** + * + * + *
+ * Message for canceling an in-progress resumable upload.
+ * `upload_id` **must** be set.
+ * 
+ * + * Protobuf type {@code google.storage.v2.CancelResumableWriteRequest} + */ +public final class CancelResumableWriteRequest extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.storage.v2.CancelResumableWriteRequest) + CancelResumableWriteRequestOrBuilder { + private static final long serialVersionUID = 0L; + // Use CancelResumableWriteRequest.newBuilder() to construct. + private CancelResumableWriteRequest(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private CancelResumableWriteRequest() { + uploadId_ = ""; + } + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new CancelResumableWriteRequest(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet getUnknownFields() { + return this.unknownFields; + } + + private CancelResumableWriteRequest( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + java.lang.String s = input.readStringRequireUtf8(); + + uploadId_ = s; + break; + } + default: + { + if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_CancelResumableWriteRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_CancelResumableWriteRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.CancelResumableWriteRequest.class, + com.google.storage.v2.CancelResumableWriteRequest.Builder.class); + } + + public static final int UPLOAD_ID_FIELD_NUMBER = 1; + private volatile java.lang.Object uploadId_; + /** + * + * + *
+   * Required. The upload_id of the resumable upload to cancel. This should be copied
+   * from the `upload_id` field of `StartResumableWriteResponse`.
+   * 
+ * + * string upload_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The uploadId. + */ + @java.lang.Override + public java.lang.String getUploadId() { + java.lang.Object ref = uploadId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + uploadId_ = s; + return s; + } + } + /** + * + * + *
+   * Required. The upload_id of the resumable upload to cancel. This should be copied
+   * from the `upload_id` field of `StartResumableWriteResponse`.
+   * 
+ * + * string upload_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for uploadId. + */ + @java.lang.Override + public com.google.protobuf.ByteString getUploadIdBytes() { + java.lang.Object ref = uploadId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uploadId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uploadId_)) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, uploadId_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uploadId_)) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, uploadId_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.storage.v2.CancelResumableWriteRequest)) { + return super.equals(obj); + } + com.google.storage.v2.CancelResumableWriteRequest other = + (com.google.storage.v2.CancelResumableWriteRequest) obj; + + if (!getUploadId().equals(other.getUploadId())) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + UPLOAD_ID_FIELD_NUMBER; + hash = (53 * hash) + getUploadId().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.CancelResumableWriteRequest parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.storage.v2.CancelResumableWriteRequest prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Message for canceling an in-progress resumable upload.
+   * `upload_id` **must** be set.
+   * 
+ * + * Protobuf type {@code google.storage.v2.CancelResumableWriteRequest} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.storage.v2.CancelResumableWriteRequest) + com.google.storage.v2.CancelResumableWriteRequestOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_CancelResumableWriteRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_CancelResumableWriteRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.CancelResumableWriteRequest.class, + com.google.storage.v2.CancelResumableWriteRequest.Builder.class); + } + + // Construct using com.google.storage.v2.CancelResumableWriteRequest.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) {} + } + + @java.lang.Override + public Builder clear() { + super.clear(); + uploadId_ = ""; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_CancelResumableWriteRequest_descriptor; + } + + @java.lang.Override + public com.google.storage.v2.CancelResumableWriteRequest getDefaultInstanceForType() { + return com.google.storage.v2.CancelResumableWriteRequest.getDefaultInstance(); + } + + @java.lang.Override + public com.google.storage.v2.CancelResumableWriteRequest build() { + com.google.storage.v2.CancelResumableWriteRequest result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.storage.v2.CancelResumableWriteRequest buildPartial() { + com.google.storage.v2.CancelResumableWriteRequest result = + new com.google.storage.v2.CancelResumableWriteRequest(this); + result.uploadId_ = uploadId_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.storage.v2.CancelResumableWriteRequest) { + return mergeFrom((com.google.storage.v2.CancelResumableWriteRequest) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.storage.v2.CancelResumableWriteRequest other) { + if (other == com.google.storage.v2.CancelResumableWriteRequest.getDefaultInstance()) + return this; + if (!other.getUploadId().isEmpty()) { + uploadId_ = other.uploadId_; + onChanged(); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + com.google.storage.v2.CancelResumableWriteRequest parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = + (com.google.storage.v2.CancelResumableWriteRequest) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private java.lang.Object uploadId_ = ""; + /** + * + * + *
+     * Required. The upload_id of the resumable upload to cancel. This should be copied
+     * from the `upload_id` field of `StartResumableWriteResponse`.
+     * 
+ * + * string upload_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The uploadId. + */ + public java.lang.String getUploadId() { + java.lang.Object ref = uploadId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + uploadId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Required. The upload_id of the resumable upload to cancel. This should be copied
+     * from the `upload_id` field of `StartResumableWriteResponse`.
+     * 
+ * + * string upload_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for uploadId. + */ + public com.google.protobuf.ByteString getUploadIdBytes() { + java.lang.Object ref = uploadId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + uploadId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Required. The upload_id of the resumable upload to cancel. This should be copied
+     * from the `upload_id` field of `StartResumableWriteResponse`.
+     * 
+ * + * string upload_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The uploadId to set. + * @return This builder for chaining. + */ + public Builder setUploadId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + uploadId_ = value; + onChanged(); + return this; + } + /** + * + * + *
+     * Required. The upload_id of the resumable upload to cancel. This should be copied
+     * from the `upload_id` field of `StartResumableWriteResponse`.
+     * 
+ * + * string upload_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return This builder for chaining. + */ + public Builder clearUploadId() { + + uploadId_ = getDefaultInstance().getUploadId(); + onChanged(); + return this; + } + /** + * + * + *
+     * Required. The upload_id of the resumable upload to cancel. This should be copied
+     * from the `upload_id` field of `StartResumableWriteResponse`.
+     * 
+ * + * string upload_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @param value The bytes for uploadId to set. + * @return This builder for chaining. + */ + public Builder setUploadIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + uploadId_ = value; + onChanged(); + return this; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.storage.v2.CancelResumableWriteRequest) + } + + // @@protoc_insertion_point(class_scope:google.storage.v2.CancelResumableWriteRequest) + private static final com.google.storage.v2.CancelResumableWriteRequest DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.storage.v2.CancelResumableWriteRequest(); + } + + public static com.google.storage.v2.CancelResumableWriteRequest getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CancelResumableWriteRequest parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new CancelResumableWriteRequest(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.storage.v2.CancelResumableWriteRequest getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequestOrBuilder.java new file mode 100644 index 000000000..764914329 --- /dev/null +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteRequestOrBuilder.java @@ -0,0 +1,52 @@ +/* + * Copyright 2020 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/storage/v2/storage.proto + +package com.google.storage.v2; + +public interface CancelResumableWriteRequestOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.storage.v2.CancelResumableWriteRequest) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Required. The upload_id of the resumable upload to cancel. This should be copied
+   * from the `upload_id` field of `StartResumableWriteResponse`.
+   * 
+ * + * string upload_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The uploadId. + */ + java.lang.String getUploadId(); + /** + * + * + *
+   * Required. The upload_id of the resumable upload to cancel. This should be copied
+   * from the `upload_id` field of `StartResumableWriteResponse`.
+   * 
+ * + * string upload_id = 1 [(.google.api.field_behavior) = REQUIRED]; + * + * @return The bytes for uploadId. + */ + com.google.protobuf.ByteString getUploadIdBytes(); +} diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponse.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponse.java new file mode 100644 index 000000000..b201b329c --- /dev/null +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponse.java @@ -0,0 +1,460 @@ +/* + * Copyright 2020 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/storage/v2/storage.proto + +package com.google.storage.v2; + +/** + * + * + *
+ * Empty response message for canceling an in-progress resumable upload, will be
+ * extended as needed.
+ * 
+ * + * Protobuf type {@code google.storage.v2.CancelResumableWriteResponse} + */ +public final class CancelResumableWriteResponse extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.storage.v2.CancelResumableWriteResponse) + CancelResumableWriteResponseOrBuilder { + private static final long serialVersionUID = 0L; + // Use CancelResumableWriteResponse.newBuilder() to construct. + private CancelResumableWriteResponse(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private CancelResumableWriteResponse() {} + + @java.lang.Override + @SuppressWarnings({"unused"}) + protected java.lang.Object newInstance(UnusedPrivateParameter unused) { + return new CancelResumableWriteResponse(); + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet getUnknownFields() { + return this.unknownFields; + } + + private CancelResumableWriteResponse( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + default: + { + if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_CancelResumableWriteResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_CancelResumableWriteResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.CancelResumableWriteResponse.class, + com.google.storage.v2.CancelResumableWriteResponse.Builder.class); + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.storage.v2.CancelResumableWriteResponse)) { + return super.equals(obj); + } + com.google.storage.v2.CancelResumableWriteResponse other = + (com.google.storage.v2.CancelResumableWriteResponse) obj; + + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseFrom( + java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.storage.v2.CancelResumableWriteResponse parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.storage.v2.CancelResumableWriteResponse prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Empty response message for canceling an in-progress resumable upload, will be
+   * extended as needed.
+   * 
+ * + * Protobuf type {@code google.storage.v2.CancelResumableWriteResponse} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.storage.v2.CancelResumableWriteResponse) + com.google.storage.v2.CancelResumableWriteResponseOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_CancelResumableWriteResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_CancelResumableWriteResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.storage.v2.CancelResumableWriteResponse.class, + com.google.storage.v2.CancelResumableWriteResponse.Builder.class); + } + + // Construct using com.google.storage.v2.CancelResumableWriteResponse.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) {} + } + + @java.lang.Override + public Builder clear() { + super.clear(); + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.storage.v2.StorageProto + .internal_static_google_storage_v2_CancelResumableWriteResponse_descriptor; + } + + @java.lang.Override + public com.google.storage.v2.CancelResumableWriteResponse getDefaultInstanceForType() { + return com.google.storage.v2.CancelResumableWriteResponse.getDefaultInstance(); + } + + @java.lang.Override + public com.google.storage.v2.CancelResumableWriteResponse build() { + com.google.storage.v2.CancelResumableWriteResponse result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.storage.v2.CancelResumableWriteResponse buildPartial() { + com.google.storage.v2.CancelResumableWriteResponse result = + new com.google.storage.v2.CancelResumableWriteResponse(this); + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.storage.v2.CancelResumableWriteResponse) { + return mergeFrom((com.google.storage.v2.CancelResumableWriteResponse) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.storage.v2.CancelResumableWriteResponse other) { + if (other == com.google.storage.v2.CancelResumableWriteResponse.getDefaultInstance()) + return this; + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + com.google.storage.v2.CancelResumableWriteResponse parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = + (com.google.storage.v2.CancelResumableWriteResponse) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.storage.v2.CancelResumableWriteResponse) + } + + // @@protoc_insertion_point(class_scope:google.storage.v2.CancelResumableWriteResponse) + private static final com.google.storage.v2.CancelResumableWriteResponse DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.storage.v2.CancelResumableWriteResponse(); + } + + public static com.google.storage.v2.CancelResumableWriteResponse getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public CancelResumableWriteResponse parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new CancelResumableWriteResponse(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.storage.v2.CancelResumableWriteResponse getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponseOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponseOrBuilder.java new file mode 100644 index 000000000..f192ac86a --- /dev/null +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CancelResumableWriteResponseOrBuilder.java @@ -0,0 +1,24 @@ +/* + * Copyright 2020 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/storage/v2/storage.proto + +package com.google.storage.v2; + +public interface CancelResumableWriteResponseOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.storage.v2.CancelResumableWriteResponse) + com.google.protobuf.MessageOrBuilder {} diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateHmacKeyRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateHmacKeyRequest.java index cd6b44f1e..312be21c1 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateHmacKeyRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateHmacKeyRequest.java @@ -127,7 +127,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
-   * Required. The project that the HMAC-owning service account lives in.
+   * Required. The project that the HMAC-owning service account lives in, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -152,7 +154,9 @@ public java.lang.String getProject() { * * *
-   * Required. The project that the HMAC-owning service account lives in.
+   * Required. The project that the HMAC-owning service account lives in, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -560,7 +564,9 @@ public Builder mergeFrom( * * *
-     * Required. The project that the HMAC-owning service account lives in.
+     * Required. The project that the HMAC-owning service account lives in, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -584,7 +590,9 @@ public java.lang.String getProject() { * * *
-     * Required. The project that the HMAC-owning service account lives in.
+     * Required. The project that the HMAC-owning service account lives in, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -608,7 +616,9 @@ public com.google.protobuf.ByteString getProjectBytes() { * * *
-     * Required. The project that the HMAC-owning service account lives in.
+     * Required. The project that the HMAC-owning service account lives in, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -631,7 +641,9 @@ public Builder setProject(java.lang.String value) { * * *
-     * Required. The project that the HMAC-owning service account lives in.
+     * Required. The project that the HMAC-owning service account lives in, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -650,7 +662,9 @@ public Builder clearProject() { * * *
-     * Required. The project that the HMAC-owning service account lives in.
+     * Required. The project that the HMAC-owning service account lives in, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateHmacKeyRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateHmacKeyRequestOrBuilder.java index 2acfcdda7..a1b9cdc32 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateHmacKeyRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/CreateHmacKeyRequestOrBuilder.java @@ -27,7 +27,9 @@ public interface CreateHmacKeyRequestOrBuilder * * *
-   * Required. The project that the HMAC-owning service account lives in.
+   * Required. The project that the HMAC-owning service account lives in, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -41,7 +43,9 @@ public interface CreateHmacKeyRequestOrBuilder * * *
-   * Required. The project that the HMAC-owning service account lives in.
+   * Required. The project that the HMAC-owning service account lives in, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteHmacKeyRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteHmacKeyRequest.java index 9843d7b65..3349d054e 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteHmacKeyRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteHmacKeyRequest.java @@ -176,7 +176,9 @@ public com.google.protobuf.ByteString getAccessIdBytes() { * * *
-   * Required. The project id the HMAC key lies in.
+   * Required. The project that owns the HMAC key, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -201,7 +203,9 @@ public java.lang.String getProject() { * * *
-   * Required. The project id the HMAC key lies in.
+   * Required. The project that owns the HMAC key, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -666,7 +670,9 @@ public Builder setAccessIdBytes(com.google.protobuf.ByteString value) { * * *
-     * Required. The project id the HMAC key lies in.
+     * Required. The project that owns the HMAC key, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -690,7 +696,9 @@ public java.lang.String getProject() { * * *
-     * Required. The project id the HMAC key lies in.
+     * Required. The project that owns the HMAC key, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -714,7 +722,9 @@ public com.google.protobuf.ByteString getProjectBytes() { * * *
-     * Required. The project id the HMAC key lies in.
+     * Required. The project that owns the HMAC key, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -737,7 +747,9 @@ public Builder setProject(java.lang.String value) { * * *
-     * Required. The project id the HMAC key lies in.
+     * Required. The project that owns the HMAC key, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -756,7 +768,9 @@ public Builder clearProject() { * * *
-     * Required. The project id the HMAC key lies in.
+     * Required. The project that owns the HMAC key, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteHmacKeyRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteHmacKeyRequestOrBuilder.java index 75c0bb1a8..6a3a8308b 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteHmacKeyRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteHmacKeyRequestOrBuilder.java @@ -52,7 +52,9 @@ public interface DeleteHmacKeyRequestOrBuilder * * *
-   * Required. The project id the HMAC key lies in.
+   * Required. The project that owns the HMAC key, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -66,7 +68,9 @@ public interface DeleteHmacKeyRequestOrBuilder * * *
-   * Required. The project id the HMAC key lies in.
+   * Required. The project that owns the HMAC key, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequest.java index 38dfd2042..97cb3a0db 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequest.java @@ -23,7 +23,7 @@ * *
  * Message for deleting an object.
- * Either `bucket` and `object` *or* `upload_id` **must** be set (but not both).
+ * `bucket` and `object` **must** be set.
  * 
* * Protobuf type {@code google.storage.v2.DeleteObjectRequest} @@ -41,7 +41,6 @@ private DeleteObjectRequest(com.google.protobuf.GeneratedMessageV3.Builder bu private DeleteObjectRequest() { bucket_ = ""; object_ = ""; - uploadId_ = ""; } @java.lang.Override @@ -88,13 +87,6 @@ private DeleteObjectRequest( object_ = s; break; } - case 26: - { - java.lang.String s = input.readStringRequireUtf8(); - - uploadId_ = s; - break; - } case 32: { generation_ = input.readInt64(); @@ -275,59 +267,6 @@ public com.google.protobuf.ByteString getObjectBytes() { } } - public static final int UPLOAD_ID_FIELD_NUMBER = 3; - private volatile java.lang.Object uploadId_; - /** - * - * - *
-   * The resumable upload_id of the object to delete (when deleting an
-   * in-progress resumable write). This should be copied from the `upload_id`
-   * field of `StartResumableWriteResponse`.
-   * 
- * - * string upload_id = 3; - * - * @return The uploadId. - */ - @java.lang.Override - public java.lang.String getUploadId() { - java.lang.Object ref = uploadId_; - if (ref instanceof java.lang.String) { - return (java.lang.String) ref; - } else { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - uploadId_ = s; - return s; - } - } - /** - * - * - *
-   * The resumable upload_id of the object to delete (when deleting an
-   * in-progress resumable write). This should be copied from the `upload_id`
-   * field of `StartResumableWriteResponse`.
-   * 
- * - * string upload_id = 3; - * - * @return The bytes for uploadId. - */ - @java.lang.Override - public com.google.protobuf.ByteString getUploadIdBytes() { - java.lang.Object ref = uploadId_; - if (ref instanceof java.lang.String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uploadId_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - public static final int GENERATION_FIELD_NUMBER = 4; private long generation_; /** @@ -562,9 +501,6 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(object_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, object_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uploadId_)) { - com.google.protobuf.GeneratedMessageV3.writeString(output, 3, uploadId_); - } if (generation_ != 0L) { output.writeInt64(4, generation_); } @@ -598,9 +534,6 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(object_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, object_); } - if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(uploadId_)) { - size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, uploadId_); - } if (generation_ != 0L) { size += com.google.protobuf.CodedOutputStream.computeInt64Size(4, generation_); } @@ -639,7 +572,6 @@ public boolean equals(final java.lang.Object obj) { if (!getBucket().equals(other.getBucket())) return false; if (!getObject().equals(other.getObject())) return false; - if (!getUploadId().equals(other.getUploadId())) return false; if (getGeneration() != other.getGeneration()) return false; if (hasIfGenerationMatch() != other.hasIfGenerationMatch()) return false; if (hasIfGenerationMatch()) { @@ -677,8 +609,6 @@ public int hashCode() { hash = (53 * hash) + getBucket().hashCode(); hash = (37 * hash) + OBJECT_FIELD_NUMBER; hash = (53 * hash) + getObject().hashCode(); - hash = (37 * hash) + UPLOAD_ID_FIELD_NUMBER; - hash = (53 * hash) + getUploadId().hashCode(); hash = (37 * hash) + GENERATION_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getGeneration()); if (hasIfGenerationMatch()) { @@ -806,7 +736,7 @@ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.Build * *
    * Message for deleting an object.
-   * Either `bucket` and `object` *or* `upload_id` **must** be set (but not both).
+   * `bucket` and `object` **must** be set.
    * 
* * Protobuf type {@code google.storage.v2.DeleteObjectRequest} @@ -851,8 +781,6 @@ public Builder clear() { object_ = ""; - uploadId_ = ""; - generation_ = 0L; ifGenerationMatch_ = 0L; @@ -900,7 +828,6 @@ public com.google.storage.v2.DeleteObjectRequest buildPartial() { int to_bitField0_ = 0; result.bucket_ = bucket_; result.object_ = object_; - result.uploadId_ = uploadId_; result.generation_ = generation_; if (((from_bitField0_ & 0x00000001) != 0)) { result.ifGenerationMatch_ = ifGenerationMatch_; @@ -981,10 +908,6 @@ public Builder mergeFrom(com.google.storage.v2.DeleteObjectRequest other) { object_ = other.object_; onChanged(); } - if (!other.getUploadId().isEmpty()) { - uploadId_ = other.uploadId_; - onChanged(); - } if (other.getGeneration() != 0L) { setGeneration(other.getGeneration()); } @@ -1246,122 +1169,6 @@ public Builder setObjectBytes(com.google.protobuf.ByteString value) { return this; } - private java.lang.Object uploadId_ = ""; - /** - * - * - *
-     * The resumable upload_id of the object to delete (when deleting an
-     * in-progress resumable write). This should be copied from the `upload_id`
-     * field of `StartResumableWriteResponse`.
-     * 
- * - * string upload_id = 3; - * - * @return The uploadId. - */ - public java.lang.String getUploadId() { - java.lang.Object ref = uploadId_; - if (!(ref instanceof java.lang.String)) { - com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; - java.lang.String s = bs.toStringUtf8(); - uploadId_ = s; - return s; - } else { - return (java.lang.String) ref; - } - } - /** - * - * - *
-     * The resumable upload_id of the object to delete (when deleting an
-     * in-progress resumable write). This should be copied from the `upload_id`
-     * field of `StartResumableWriteResponse`.
-     * 
- * - * string upload_id = 3; - * - * @return The bytes for uploadId. - */ - public com.google.protobuf.ByteString getUploadIdBytes() { - java.lang.Object ref = uploadId_; - if (ref instanceof String) { - com.google.protobuf.ByteString b = - com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); - uploadId_ = b; - return b; - } else { - return (com.google.protobuf.ByteString) ref; - } - } - /** - * - * - *
-     * The resumable upload_id of the object to delete (when deleting an
-     * in-progress resumable write). This should be copied from the `upload_id`
-     * field of `StartResumableWriteResponse`.
-     * 
- * - * string upload_id = 3; - * - * @param value The uploadId to set. - * @return This builder for chaining. - */ - public Builder setUploadId(java.lang.String value) { - if (value == null) { - throw new NullPointerException(); - } - - uploadId_ = value; - onChanged(); - return this; - } - /** - * - * - *
-     * The resumable upload_id of the object to delete (when deleting an
-     * in-progress resumable write). This should be copied from the `upload_id`
-     * field of `StartResumableWriteResponse`.
-     * 
- * - * string upload_id = 3; - * - * @return This builder for chaining. - */ - public Builder clearUploadId() { - - uploadId_ = getDefaultInstance().getUploadId(); - onChanged(); - return this; - } - /** - * - * - *
-     * The resumable upload_id of the object to delete (when deleting an
-     * in-progress resumable write). This should be copied from the `upload_id`
-     * field of `StartResumableWriteResponse`.
-     * 
- * - * string upload_id = 3; - * - * @param value The bytes for uploadId to set. - * @return This builder for chaining. - */ - public Builder setUploadIdBytes(com.google.protobuf.ByteString value) { - if (value == null) { - throw new NullPointerException(); - } - checkByteStringIsUtf8(value); - - uploadId_ = value; - onChanged(); - return this; - } - private long generation_; /** * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequestOrBuilder.java index dfd8e1f80..e0f4d1220 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/DeleteObjectRequestOrBuilder.java @@ -73,35 +73,6 @@ public interface DeleteObjectRequestOrBuilder */ com.google.protobuf.ByteString getObjectBytes(); - /** - * - * - *
-   * The resumable upload_id of the object to delete (when deleting an
-   * in-progress resumable write). This should be copied from the `upload_id`
-   * field of `StartResumableWriteResponse`.
-   * 
- * - * string upload_id = 3; - * - * @return The uploadId. - */ - java.lang.String getUploadId(); - /** - * - * - *
-   * The resumable upload_id of the object to delete (when deleting an
-   * in-progress resumable write). This should be copied from the `upload_id`
-   * field of `StartResumableWriteResponse`.
-   * 
- * - * string upload_id = 3; - * - * @return The bytes for uploadId. - */ - com.google.protobuf.ByteString getUploadIdBytes(); - /** * * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetHmacKeyRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetHmacKeyRequest.java index e004e926f..b31b10c91 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetHmacKeyRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetHmacKeyRequest.java @@ -176,7 +176,9 @@ public com.google.protobuf.ByteString getAccessIdBytes() { * * *
-   * Required. The project id the HMAC key lies in.
+   * Required. The project the HMAC key lies in, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -201,7 +203,9 @@ public java.lang.String getProject() { * * *
-   * Required. The project id the HMAC key lies in.
+   * Required. The project the HMAC key lies in, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -665,7 +669,9 @@ public Builder setAccessIdBytes(com.google.protobuf.ByteString value) { * * *
-     * Required. The project id the HMAC key lies in.
+     * Required. The project the HMAC key lies in, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -689,7 +695,9 @@ public java.lang.String getProject() { * * *
-     * Required. The project id the HMAC key lies in.
+     * Required. The project the HMAC key lies in, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -713,7 +721,9 @@ public com.google.protobuf.ByteString getProjectBytes() { * * *
-     * Required. The project id the HMAC key lies in.
+     * Required. The project the HMAC key lies in, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -736,7 +746,9 @@ public Builder setProject(java.lang.String value) { * * *
-     * Required. The project id the HMAC key lies in.
+     * Required. The project the HMAC key lies in, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -755,7 +767,9 @@ public Builder clearProject() { * * *
-     * Required. The project id the HMAC key lies in.
+     * Required. The project the HMAC key lies in, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetHmacKeyRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetHmacKeyRequestOrBuilder.java index de9648046..dd96127a2 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetHmacKeyRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetHmacKeyRequestOrBuilder.java @@ -52,7 +52,9 @@ public interface GetHmacKeyRequestOrBuilder * * *
-   * Required. The project id the HMAC key lies in.
+   * Required. The project the HMAC key lies in, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -66,7 +68,9 @@ public interface GetHmacKeyRequestOrBuilder * * *
-   * Required. The project id the HMAC key lies in.
+   * Required. The project the HMAC key lies in, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetServiceAccountRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetServiceAccountRequest.java index be1da8e75..661c5ebcd 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetServiceAccountRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetServiceAccountRequest.java @@ -119,7 +119,8 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
-   * Required. Project ID.
+   * Required. Project ID, in the format of "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -144,7 +145,8 @@ public java.lang.String getProject() { * * *
-   * Required. Project ID.
+   * Required. Project ID, in the format of "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -487,7 +489,8 @@ public Builder mergeFrom( * * *
-     * Required. Project ID.
+     * Required. Project ID, in the format of "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -511,7 +514,8 @@ public java.lang.String getProject() { * * *
-     * Required. Project ID.
+     * Required. Project ID, in the format of "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -535,7 +539,8 @@ public com.google.protobuf.ByteString getProjectBytes() { * * *
-     * Required. Project ID.
+     * Required. Project ID, in the format of "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -558,7 +563,8 @@ public Builder setProject(java.lang.String value) { * * *
-     * Required. Project ID.
+     * Required. Project ID, in the format of "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -577,7 +583,8 @@ public Builder clearProject() { * * *
-     * Required. Project ID.
+     * Required. Project ID, in the format of "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetServiceAccountRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetServiceAccountRequestOrBuilder.java index 1b0cca0e9..c3a7fc00e 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetServiceAccountRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/GetServiceAccountRequestOrBuilder.java @@ -27,7 +27,8 @@ public interface GetServiceAccountRequestOrBuilder * * *
-   * Required. Project ID.
+   * Required. Project ID, in the format of "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -41,7 +42,8 @@ public interface GetServiceAccountRequestOrBuilder * * *
-   * Required. Project ID.
+   * Required. Project ID, in the format of "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/HmacKeyMetadata.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/HmacKeyMetadata.java index dc54e5902..8ed9fbe18 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/HmacKeyMetadata.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/HmacKeyMetadata.java @@ -189,10 +189,12 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
-   * Resource name ID of the key in the format <projectId>/<accessId>.
+   * Immutable. Resource name ID of the key in the format
+   * <projectIdentifier>/<accessId>.
+   * <projectIdentifier> can be the project ID or project number.
    * 
* - * string id = 1; + * string id = 1 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The id. */ @@ -212,10 +214,12 @@ public java.lang.String getId() { * * *
-   * Resource name ID of the key in the format <projectId>/<accessId>.
+   * Immutable. Resource name ID of the key in the format
+   * <projectIdentifier>/<accessId>.
+   * <projectIdentifier> can be the project ID or project number.
    * 
* - * string id = 1; + * string id = 1 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The bytes for id. */ @@ -238,10 +242,10 @@ public com.google.protobuf.ByteString getIdBytes() { * * *
-   * Globally unique id for keys.
+   * Immutable. Globally unique id for keys.
    * 
* - * string access_id = 2; + * string access_id = 2 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The accessId. */ @@ -261,10 +265,10 @@ public java.lang.String getAccessId() { * * *
-   * Globally unique id for keys.
+   * Immutable. Globally unique id for keys.
    * 
* - * string access_id = 2; + * string access_id = 2 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The bytes for accessId. */ @@ -287,10 +291,14 @@ public com.google.protobuf.ByteString getAccessIdBytes() { * * *
-   * The project ID that the hmac key is contained in.
+   * Immutable. Identifies the project that owns the service account of the specified HMAC
+   * key, in the format "projects/<projectIdentifier>". <projectIdentifier> can
+   * be the project ID or project number.
    * 
* - * string project = 3 [(.google.api.resource_reference) = { ... } + * + * string project = 3 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } + * * * @return The project. */ @@ -310,10 +318,14 @@ public java.lang.String getProject() { * * *
-   * The project ID that the hmac key is contained in.
+   * Immutable. Identifies the project that owns the service account of the specified HMAC
+   * key, in the format "projects/<projectIdentifier>". <projectIdentifier> can
+   * be the project ID or project number.
    * 
* - * string project = 3 [(.google.api.resource_reference) = { ... } + * + * string project = 3 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } + * * * @return The bytes for project. */ @@ -336,10 +348,10 @@ public com.google.protobuf.ByteString getProjectBytes() { * * *
-   * Email of the service account the key authenticates as.
+   * Output only. Email of the service account the key authenticates as.
    * 
* - * string service_account_email = 4; + * string service_account_email = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The serviceAccountEmail. */ @@ -359,10 +371,10 @@ public java.lang.String getServiceAccountEmail() { * * *
-   * Email of the service account the key authenticates as.
+   * Output only. Email of the service account the key authenticates as.
    * 
* - * string service_account_email = 4; + * string service_account_email = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for serviceAccountEmail. */ @@ -386,6 +398,7 @@ public com.google.protobuf.ByteString getServiceAccountEmailBytes() { * *
    * State of the key. One of ACTIVE, INACTIVE, or DELETED.
+   * Writable, can be updated by UpdateHmacKey operation.
    * 
* * string state = 5; @@ -409,6 +422,7 @@ public java.lang.String getState() { * *
    * State of the key. One of ACTIVE, INACTIVE, or DELETED.
+   * Writable, can be updated by UpdateHmacKey operation.
    * 
* * string state = 5; @@ -434,10 +448,11 @@ public com.google.protobuf.ByteString getStateBytes() { * * *
-   * The creation time of the HMAC key.
+   * Output only. The creation time of the HMAC key.
    * 
* - * .google.protobuf.Timestamp create_time = 6; + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return Whether the createTime field is set. */ @@ -449,10 +464,11 @@ public boolean hasCreateTime() { * * *
-   * The creation time of the HMAC key.
+   * Output only. The creation time of the HMAC key.
    * 
* - * .google.protobuf.Timestamp create_time = 6; + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The createTime. */ @@ -464,10 +480,11 @@ public com.google.protobuf.Timestamp getCreateTime() { * * *
-   * The creation time of the HMAC key.
+   * Output only. The creation time of the HMAC key.
    * 
* - * .google.protobuf.Timestamp create_time = 6; + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ @java.lang.Override public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { @@ -480,10 +497,11 @@ public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { * * *
-   * The last modification time of the HMAC key metadata.
+   * Output only. The last modification time of the HMAC key metadata.
    * 
* - * .google.protobuf.Timestamp update_time = 7; + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return Whether the updateTime field is set. */ @@ -495,10 +513,11 @@ public boolean hasUpdateTime() { * * *
-   * The last modification time of the HMAC key metadata.
+   * Output only. The last modification time of the HMAC key metadata.
    * 
* - * .google.protobuf.Timestamp update_time = 7; + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The updateTime. */ @@ -510,10 +529,11 @@ public com.google.protobuf.Timestamp getUpdateTime() { * * *
-   * The last modification time of the HMAC key metadata.
+   * Output only. The last modification time of the HMAC key metadata.
    * 
* - * .google.protobuf.Timestamp update_time = 7; + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ @java.lang.Override public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { @@ -1024,10 +1044,12 @@ public Builder mergeFrom( * * *
-     * Resource name ID of the key in the format <projectId>/<accessId>.
+     * Immutable. Resource name ID of the key in the format
+     * <projectIdentifier>/<accessId>.
+     * <projectIdentifier> can be the project ID or project number.
      * 
* - * string id = 1; + * string id = 1 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The id. */ @@ -1046,10 +1068,12 @@ public java.lang.String getId() { * * *
-     * Resource name ID of the key in the format <projectId>/<accessId>.
+     * Immutable. Resource name ID of the key in the format
+     * <projectIdentifier>/<accessId>.
+     * <projectIdentifier> can be the project ID or project number.
      * 
* - * string id = 1; + * string id = 1 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The bytes for id. */ @@ -1068,10 +1092,12 @@ public com.google.protobuf.ByteString getIdBytes() { * * *
-     * Resource name ID of the key in the format <projectId>/<accessId>.
+     * Immutable. Resource name ID of the key in the format
+     * <projectIdentifier>/<accessId>.
+     * <projectIdentifier> can be the project ID or project number.
      * 
* - * string id = 1; + * string id = 1 [(.google.api.field_behavior) = IMMUTABLE]; * * @param value The id to set. * @return This builder for chaining. @@ -1089,10 +1115,12 @@ public Builder setId(java.lang.String value) { * * *
-     * Resource name ID of the key in the format <projectId>/<accessId>.
+     * Immutable. Resource name ID of the key in the format
+     * <projectIdentifier>/<accessId>.
+     * <projectIdentifier> can be the project ID or project number.
      * 
* - * string id = 1; + * string id = 1 [(.google.api.field_behavior) = IMMUTABLE]; * * @return This builder for chaining. */ @@ -1106,10 +1134,12 @@ public Builder clearId() { * * *
-     * Resource name ID of the key in the format <projectId>/<accessId>.
+     * Immutable. Resource name ID of the key in the format
+     * <projectIdentifier>/<accessId>.
+     * <projectIdentifier> can be the project ID or project number.
      * 
* - * string id = 1; + * string id = 1 [(.google.api.field_behavior) = IMMUTABLE]; * * @param value The bytes for id to set. * @return This builder for chaining. @@ -1130,10 +1160,10 @@ public Builder setIdBytes(com.google.protobuf.ByteString value) { * * *
-     * Globally unique id for keys.
+     * Immutable. Globally unique id for keys.
      * 
* - * string access_id = 2; + * string access_id = 2 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The accessId. */ @@ -1152,10 +1182,10 @@ public java.lang.String getAccessId() { * * *
-     * Globally unique id for keys.
+     * Immutable. Globally unique id for keys.
      * 
* - * string access_id = 2; + * string access_id = 2 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The bytes for accessId. */ @@ -1174,10 +1204,10 @@ public com.google.protobuf.ByteString getAccessIdBytes() { * * *
-     * Globally unique id for keys.
+     * Immutable. Globally unique id for keys.
      * 
* - * string access_id = 2; + * string access_id = 2 [(.google.api.field_behavior) = IMMUTABLE]; * * @param value The accessId to set. * @return This builder for chaining. @@ -1195,10 +1225,10 @@ public Builder setAccessId(java.lang.String value) { * * *
-     * Globally unique id for keys.
+     * Immutable. Globally unique id for keys.
      * 
* - * string access_id = 2; + * string access_id = 2 [(.google.api.field_behavior) = IMMUTABLE]; * * @return This builder for chaining. */ @@ -1212,10 +1242,10 @@ public Builder clearAccessId() { * * *
-     * Globally unique id for keys.
+     * Immutable. Globally unique id for keys.
      * 
* - * string access_id = 2; + * string access_id = 2 [(.google.api.field_behavior) = IMMUTABLE]; * * @param value The bytes for accessId to set. * @return This builder for chaining. @@ -1236,10 +1266,14 @@ public Builder setAccessIdBytes(com.google.protobuf.ByteString value) { * * *
-     * The project ID that the hmac key is contained in.
+     * Immutable. Identifies the project that owns the service account of the specified HMAC
+     * key, in the format "projects/<projectIdentifier>". <projectIdentifier> can
+     * be the project ID or project number.
      * 
* - * string project = 3 [(.google.api.resource_reference) = { ... } + * + * string project = 3 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } + * * * @return The project. */ @@ -1258,10 +1292,14 @@ public java.lang.String getProject() { * * *
-     * The project ID that the hmac key is contained in.
+     * Immutable. Identifies the project that owns the service account of the specified HMAC
+     * key, in the format "projects/<projectIdentifier>". <projectIdentifier> can
+     * be the project ID or project number.
      * 
* - * string project = 3 [(.google.api.resource_reference) = { ... } + * + * string project = 3 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } + * * * @return The bytes for project. */ @@ -1280,10 +1318,14 @@ public com.google.protobuf.ByteString getProjectBytes() { * * *
-     * The project ID that the hmac key is contained in.
+     * Immutable. Identifies the project that owns the service account of the specified HMAC
+     * key, in the format "projects/<projectIdentifier>". <projectIdentifier> can
+     * be the project ID or project number.
      * 
* - * string project = 3 [(.google.api.resource_reference) = { ... } + * + * string project = 3 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } + * * * @param value The project to set. * @return This builder for chaining. @@ -1301,10 +1343,14 @@ public Builder setProject(java.lang.String value) { * * *
-     * The project ID that the hmac key is contained in.
+     * Immutable. Identifies the project that owns the service account of the specified HMAC
+     * key, in the format "projects/<projectIdentifier>". <projectIdentifier> can
+     * be the project ID or project number.
      * 
* - * string project = 3 [(.google.api.resource_reference) = { ... } + * + * string project = 3 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } + * * * @return This builder for chaining. */ @@ -1318,10 +1364,14 @@ public Builder clearProject() { * * *
-     * The project ID that the hmac key is contained in.
+     * Immutable. Identifies the project that owns the service account of the specified HMAC
+     * key, in the format "projects/<projectIdentifier>". <projectIdentifier> can
+     * be the project ID or project number.
      * 
* - * string project = 3 [(.google.api.resource_reference) = { ... } + * + * string project = 3 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } + * * * @param value The bytes for project to set. * @return This builder for chaining. @@ -1342,10 +1392,10 @@ public Builder setProjectBytes(com.google.protobuf.ByteString value) { * * *
-     * Email of the service account the key authenticates as.
+     * Output only. Email of the service account the key authenticates as.
      * 
* - * string service_account_email = 4; + * string service_account_email = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The serviceAccountEmail. */ @@ -1364,10 +1414,10 @@ public java.lang.String getServiceAccountEmail() { * * *
-     * Email of the service account the key authenticates as.
+     * Output only. Email of the service account the key authenticates as.
      * 
* - * string service_account_email = 4; + * string service_account_email = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for serviceAccountEmail. */ @@ -1386,10 +1436,10 @@ public com.google.protobuf.ByteString getServiceAccountEmailBytes() { * * *
-     * Email of the service account the key authenticates as.
+     * Output only. Email of the service account the key authenticates as.
      * 
* - * string service_account_email = 4; + * string service_account_email = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The serviceAccountEmail to set. * @return This builder for chaining. @@ -1407,10 +1457,10 @@ public Builder setServiceAccountEmail(java.lang.String value) { * * *
-     * Email of the service account the key authenticates as.
+     * Output only. Email of the service account the key authenticates as.
      * 
* - * string service_account_email = 4; + * string service_account_email = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return This builder for chaining. */ @@ -1424,10 +1474,10 @@ public Builder clearServiceAccountEmail() { * * *
-     * Email of the service account the key authenticates as.
+     * Output only. Email of the service account the key authenticates as.
      * 
* - * string service_account_email = 4; + * string service_account_email = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @param value The bytes for serviceAccountEmail to set. * @return This builder for chaining. @@ -1449,6 +1499,7 @@ public Builder setServiceAccountEmailBytes(com.google.protobuf.ByteString value) * *
      * State of the key. One of ACTIVE, INACTIVE, or DELETED.
+     * Writable, can be updated by UpdateHmacKey operation.
      * 
* * string state = 5; @@ -1471,6 +1522,7 @@ public java.lang.String getState() { * *
      * State of the key. One of ACTIVE, INACTIVE, or DELETED.
+     * Writable, can be updated by UpdateHmacKey operation.
      * 
* * string state = 5; @@ -1493,6 +1545,7 @@ public com.google.protobuf.ByteString getStateBytes() { * *
      * State of the key. One of ACTIVE, INACTIVE, or DELETED.
+     * Writable, can be updated by UpdateHmacKey operation.
      * 
* * string state = 5; @@ -1514,6 +1567,7 @@ public Builder setState(java.lang.String value) { * *
      * State of the key. One of ACTIVE, INACTIVE, or DELETED.
+     * Writable, can be updated by UpdateHmacKey operation.
      * 
* * string state = 5; @@ -1531,6 +1585,7 @@ public Builder clearState() { * *
      * State of the key. One of ACTIVE, INACTIVE, or DELETED.
+     * Writable, can be updated by UpdateHmacKey operation.
      * 
* * string state = 5; @@ -1559,10 +1614,12 @@ public Builder setStateBytes(com.google.protobuf.ByteString value) { * * *
-     * The creation time of the HMAC key.
+     * Output only. The creation time of the HMAC key.
      * 
* - * .google.protobuf.Timestamp create_time = 6; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return Whether the createTime field is set. */ @@ -1573,10 +1630,12 @@ public boolean hasCreateTime() { * * *
-     * The creation time of the HMAC key.
+     * Output only. The creation time of the HMAC key.
      * 
* - * .google.protobuf.Timestamp create_time = 6; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The createTime. */ @@ -1593,10 +1652,12 @@ public com.google.protobuf.Timestamp getCreateTime() { * * *
-     * The creation time of the HMAC key.
+     * Output only. The creation time of the HMAC key.
      * 
* - * .google.protobuf.Timestamp create_time = 6; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public Builder setCreateTime(com.google.protobuf.Timestamp value) { if (createTimeBuilder_ == null) { @@ -1615,10 +1676,12 @@ public Builder setCreateTime(com.google.protobuf.Timestamp value) { * * *
-     * The creation time of the HMAC key.
+     * Output only. The creation time of the HMAC key.
      * 
* - * .google.protobuf.Timestamp create_time = 6; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForValue) { if (createTimeBuilder_ == null) { @@ -1634,10 +1697,12 @@ public Builder setCreateTime(com.google.protobuf.Timestamp.Builder builderForVal * * *
-     * The creation time of the HMAC key.
+     * Output only. The creation time of the HMAC key.
      * 
* - * .google.protobuf.Timestamp create_time = 6; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { if (createTimeBuilder_ == null) { @@ -1658,10 +1723,12 @@ public Builder mergeCreateTime(com.google.protobuf.Timestamp value) { * * *
-     * The creation time of the HMAC key.
+     * Output only. The creation time of the HMAC key.
      * 
* - * .google.protobuf.Timestamp create_time = 6; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public Builder clearCreateTime() { if (createTimeBuilder_ == null) { @@ -1678,10 +1745,12 @@ public Builder clearCreateTime() { * * *
-     * The creation time of the HMAC key.
+     * Output only. The creation time of the HMAC key.
      * 
* - * .google.protobuf.Timestamp create_time = 6; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { @@ -1692,10 +1761,12 @@ public com.google.protobuf.Timestamp.Builder getCreateTimeBuilder() { * * *
-     * The creation time of the HMAC key.
+     * Output only. The creation time of the HMAC key.
      * 
* - * .google.protobuf.Timestamp create_time = 6; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { if (createTimeBuilder_ != null) { @@ -1710,10 +1781,12 @@ public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { * * *
-     * The creation time of the HMAC key.
+     * Output only. The creation time of the HMAC key.
      * 
* - * .google.protobuf.Timestamp create_time = 6; + * + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Timestamp, @@ -1742,10 +1815,12 @@ public com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder() { * * *
-     * The last modification time of the HMAC key metadata.
+     * Output only. The last modification time of the HMAC key metadata.
      * 
* - * .google.protobuf.Timestamp update_time = 7; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return Whether the updateTime field is set. */ @@ -1756,10 +1831,12 @@ public boolean hasUpdateTime() { * * *
-     * The last modification time of the HMAC key metadata.
+     * Output only. The last modification time of the HMAC key metadata.
      * 
* - * .google.protobuf.Timestamp update_time = 7; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The updateTime. */ @@ -1776,10 +1853,12 @@ public com.google.protobuf.Timestamp getUpdateTime() { * * *
-     * The last modification time of the HMAC key metadata.
+     * Output only. The last modification time of the HMAC key metadata.
      * 
* - * .google.protobuf.Timestamp update_time = 7; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public Builder setUpdateTime(com.google.protobuf.Timestamp value) { if (updateTimeBuilder_ == null) { @@ -1798,10 +1877,12 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp value) { * * *
-     * The last modification time of the HMAC key metadata.
+     * Output only. The last modification time of the HMAC key metadata.
      * 
* - * .google.protobuf.Timestamp update_time = 7; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { if (updateTimeBuilder_ == null) { @@ -1817,10 +1898,12 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForVal * * *
-     * The last modification time of the HMAC key metadata.
+     * Output only. The last modification time of the HMAC key metadata.
      * 
* - * .google.protobuf.Timestamp update_time = 7; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { if (updateTimeBuilder_ == null) { @@ -1841,10 +1924,12 @@ public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { * * *
-     * The last modification time of the HMAC key metadata.
+     * Output only. The last modification time of the HMAC key metadata.
      * 
* - * .google.protobuf.Timestamp update_time = 7; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public Builder clearUpdateTime() { if (updateTimeBuilder_ == null) { @@ -1861,10 +1946,12 @@ public Builder clearUpdateTime() { * * *
-     * The last modification time of the HMAC key metadata.
+     * Output only. The last modification time of the HMAC key metadata.
      * 
* - * .google.protobuf.Timestamp update_time = 7; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { @@ -1875,10 +1962,12 @@ public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { * * *
-     * The last modification time of the HMAC key metadata.
+     * Output only. The last modification time of the HMAC key metadata.
      * 
* - * .google.protobuf.Timestamp update_time = 7; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { if (updateTimeBuilder_ != null) { @@ -1893,10 +1982,12 @@ public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { * * *
-     * The last modification time of the HMAC key metadata.
+     * Output only. The last modification time of the HMAC key metadata.
      * 
* - * .google.protobuf.Timestamp update_time = 7; + * + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Timestamp, diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/HmacKeyMetadataOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/HmacKeyMetadataOrBuilder.java index 3e7bc4e83..a3ab3e0e7 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/HmacKeyMetadataOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/HmacKeyMetadataOrBuilder.java @@ -27,10 +27,12 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * Resource name ID of the key in the format <projectId>/<accessId>.
+   * Immutable. Resource name ID of the key in the format
+   * <projectIdentifier>/<accessId>.
+   * <projectIdentifier> can be the project ID or project number.
    * 
* - * string id = 1; + * string id = 1 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The id. */ @@ -39,10 +41,12 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * Resource name ID of the key in the format <projectId>/<accessId>.
+   * Immutable. Resource name ID of the key in the format
+   * <projectIdentifier>/<accessId>.
+   * <projectIdentifier> can be the project ID or project number.
    * 
* - * string id = 1; + * string id = 1 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The bytes for id. */ @@ -52,10 +56,10 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * Globally unique id for keys.
+   * Immutable. Globally unique id for keys.
    * 
* - * string access_id = 2; + * string access_id = 2 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The accessId. */ @@ -64,10 +68,10 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * Globally unique id for keys.
+   * Immutable. Globally unique id for keys.
    * 
* - * string access_id = 2; + * string access_id = 2 [(.google.api.field_behavior) = IMMUTABLE]; * * @return The bytes for accessId. */ @@ -77,10 +81,14 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * The project ID that the hmac key is contained in.
+   * Immutable. Identifies the project that owns the service account of the specified HMAC
+   * key, in the format "projects/<projectIdentifier>". <projectIdentifier> can
+   * be the project ID or project number.
    * 
* - * string project = 3 [(.google.api.resource_reference) = { ... } + * + * string project = 3 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } + * * * @return The project. */ @@ -89,10 +97,14 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * The project ID that the hmac key is contained in.
+   * Immutable. Identifies the project that owns the service account of the specified HMAC
+   * key, in the format "projects/<projectIdentifier>". <projectIdentifier> can
+   * be the project ID or project number.
    * 
* - * string project = 3 [(.google.api.resource_reference) = { ... } + * + * string project = 3 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.resource_reference) = { ... } + * * * @return The bytes for project. */ @@ -102,10 +114,10 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * Email of the service account the key authenticates as.
+   * Output only. Email of the service account the key authenticates as.
    * 
* - * string service_account_email = 4; + * string service_account_email = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The serviceAccountEmail. */ @@ -114,10 +126,10 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * Email of the service account the key authenticates as.
+   * Output only. Email of the service account the key authenticates as.
    * 
* - * string service_account_email = 4; + * string service_account_email = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; * * @return The bytes for serviceAccountEmail. */ @@ -128,6 +140,7 @@ public interface HmacKeyMetadataOrBuilder * *
    * State of the key. One of ACTIVE, INACTIVE, or DELETED.
+   * Writable, can be updated by UpdateHmacKey operation.
    * 
* * string state = 5; @@ -140,6 +153,7 @@ public interface HmacKeyMetadataOrBuilder * *
    * State of the key. One of ACTIVE, INACTIVE, or DELETED.
+   * Writable, can be updated by UpdateHmacKey operation.
    * 
* * string state = 5; @@ -152,10 +166,11 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * The creation time of the HMAC key.
+   * Output only. The creation time of the HMAC key.
    * 
* - * .google.protobuf.Timestamp create_time = 6; + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return Whether the createTime field is set. */ @@ -164,10 +179,11 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * The creation time of the HMAC key.
+   * Output only. The creation time of the HMAC key.
    * 
* - * .google.protobuf.Timestamp create_time = 6; + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The createTime. */ @@ -176,10 +192,11 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * The creation time of the HMAC key.
+   * Output only. The creation time of the HMAC key.
    * 
* - * .google.protobuf.Timestamp create_time = 6; + * .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ com.google.protobuf.TimestampOrBuilder getCreateTimeOrBuilder(); @@ -187,10 +204,11 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * The last modification time of the HMAC key metadata.
+   * Output only. The last modification time of the HMAC key metadata.
    * 
* - * .google.protobuf.Timestamp update_time = 7; + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return Whether the updateTime field is set. */ @@ -199,10 +217,11 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * The last modification time of the HMAC key metadata.
+   * Output only. The last modification time of the HMAC key metadata.
    * 
* - * .google.protobuf.Timestamp update_time = 7; + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * * * @return The updateTime. */ @@ -211,10 +230,11 @@ public interface HmacKeyMetadataOrBuilder * * *
-   * The last modification time of the HMAC key metadata.
+   * Output only. The last modification time of the HMAC key metadata.
    * 
* - * .google.protobuf.Timestamp update_time = 7; + * .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * */ com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder(); diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListHmacKeysRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListHmacKeysRequest.java index f230cdbdb..a812b6e9e 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListHmacKeysRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListHmacKeysRequest.java @@ -145,7 +145,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
-   * Required. The project id to list HMAC keys for.
+   * Required. The project to list HMAC keys for, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -170,7 +172,9 @@ public java.lang.String getProject() { * * *
-   * Required. The project id to list HMAC keys for.
+   * Required. The project to list HMAC keys for, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -709,7 +713,9 @@ public Builder mergeFrom( * * *
-     * Required. The project id to list HMAC keys for.
+     * Required. The project to list HMAC keys for, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -733,7 +739,9 @@ public java.lang.String getProject() { * * *
-     * Required. The project id to list HMAC keys for.
+     * Required. The project to list HMAC keys for, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -757,7 +765,9 @@ public com.google.protobuf.ByteString getProjectBytes() { * * *
-     * Required. The project id to list HMAC keys for.
+     * Required. The project to list HMAC keys for, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -780,7 +790,9 @@ public Builder setProject(java.lang.String value) { * * *
-     * Required. The project id to list HMAC keys for.
+     * Required. The project to list HMAC keys for, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * @@ -799,7 +811,9 @@ public Builder clearProject() { * * *
-     * Required. The project id to list HMAC keys for.
+     * Required. The project to list HMAC keys for, in the format of
+     * "projects/<projectIdentifier>".
+     * <projectIdentifier> can be the project ID or project number.
      * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListHmacKeysRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListHmacKeysRequestOrBuilder.java index 23895d5c4..0f4bdd317 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListHmacKeysRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ListHmacKeysRequestOrBuilder.java @@ -27,7 +27,9 @@ public interface ListHmacKeysRequestOrBuilder * * *
-   * Required. The project id to list HMAC keys for.
+   * Required. The project to list HMAC keys for, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * @@ -41,7 +43,9 @@ public interface ListHmacKeysRequestOrBuilder * * *
-   * Required. The project id to list HMAC keys for.
+   * Required. The project to list HMAC keys for, in the format of
+   * "projects/<projectIdentifier>".
+   * <projectIdentifier> can be the project ID or project number.
    * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Object.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Object.java index 6b4d9c5ba..b1cc47ce9 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Object.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/Object.java @@ -1212,6 +1212,11 @@ public com.google.storage.v2.ObjectChecksumsOrBuilder getChecksumsOrBuilder() { * *
    * Output only. The modification time of the object metadata.
+   * Set initially to object creation time and then updated whenever any
+   * metadata of the object changes. This includes changes made by a requester,
+   * such as modifying custom metadata, as well as changes made by Cloud Storage
+   * on behalf of a requester, such as changing the storage class based on an
+   * Object Lifecycle Configuration.
    * Attempting to set or update this field will result in a
    * [FieldViolation][google.rpc.BadRequest.FieldViolation].
    * 
@@ -1230,6 +1235,11 @@ public boolean hasUpdateTime() { * *
    * Output only. The modification time of the object metadata.
+   * Set initially to object creation time and then updated whenever any
+   * metadata of the object changes. This includes changes made by a requester,
+   * such as modifying custom metadata, as well as changes made by Cloud Storage
+   * on behalf of a requester, such as changing the storage class based on an
+   * Object Lifecycle Configuration.
    * Attempting to set or update this field will result in a
    * [FieldViolation][google.rpc.BadRequest.FieldViolation].
    * 
@@ -1248,6 +1258,11 @@ public com.google.protobuf.Timestamp getUpdateTime() { * *
    * Output only. The modification time of the object metadata.
+   * Set initially to object creation time and then updated whenever any
+   * metadata of the object changes. This includes changes made by a requester,
+   * such as modifying custom metadata, as well as changes made by Cloud Storage
+   * on behalf of a requester, such as changing the storage class based on an
+   * Object Lifecycle Configuration.
    * Attempting to set or update this field will result in a
    * [FieldViolation][google.rpc.BadRequest.FieldViolation].
    * 
@@ -5014,6 +5029,11 @@ public com.google.storage.v2.ObjectChecksumsOrBuilder getChecksumsOrBuilder() { * *
      * Output only. The modification time of the object metadata.
+     * Set initially to object creation time and then updated whenever any
+     * metadata of the object changes. This includes changes made by a requester,
+     * such as modifying custom metadata, as well as changes made by Cloud Storage
+     * on behalf of a requester, such as changing the storage class based on an
+     * Object Lifecycle Configuration.
      * Attempting to set or update this field will result in a
      * [FieldViolation][google.rpc.BadRequest.FieldViolation].
      * 
@@ -5032,6 +5052,11 @@ public boolean hasUpdateTime() { * *
      * Output only. The modification time of the object metadata.
+     * Set initially to object creation time and then updated whenever any
+     * metadata of the object changes. This includes changes made by a requester,
+     * such as modifying custom metadata, as well as changes made by Cloud Storage
+     * on behalf of a requester, such as changing the storage class based on an
+     * Object Lifecycle Configuration.
      * Attempting to set or update this field will result in a
      * [FieldViolation][google.rpc.BadRequest.FieldViolation].
      * 
@@ -5056,6 +5081,11 @@ public com.google.protobuf.Timestamp getUpdateTime() { * *
      * Output only. The modification time of the object metadata.
+     * Set initially to object creation time and then updated whenever any
+     * metadata of the object changes. This includes changes made by a requester,
+     * such as modifying custom metadata, as well as changes made by Cloud Storage
+     * on behalf of a requester, such as changing the storage class based on an
+     * Object Lifecycle Configuration.
      * Attempting to set or update this field will result in a
      * [FieldViolation][google.rpc.BadRequest.FieldViolation].
      * 
@@ -5082,6 +5112,11 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp value) { * *
      * Output only. The modification time of the object metadata.
+     * Set initially to object creation time and then updated whenever any
+     * metadata of the object changes. This includes changes made by a requester,
+     * such as modifying custom metadata, as well as changes made by Cloud Storage
+     * on behalf of a requester, such as changing the storage class based on an
+     * Object Lifecycle Configuration.
      * Attempting to set or update this field will result in a
      * [FieldViolation][google.rpc.BadRequest.FieldViolation].
      * 
@@ -5105,6 +5140,11 @@ public Builder setUpdateTime(com.google.protobuf.Timestamp.Builder builderForVal * *
      * Output only. The modification time of the object metadata.
+     * Set initially to object creation time and then updated whenever any
+     * metadata of the object changes. This includes changes made by a requester,
+     * such as modifying custom metadata, as well as changes made by Cloud Storage
+     * on behalf of a requester, such as changing the storage class based on an
+     * Object Lifecycle Configuration.
      * Attempting to set or update this field will result in a
      * [FieldViolation][google.rpc.BadRequest.FieldViolation].
      * 
@@ -5133,6 +5173,11 @@ public Builder mergeUpdateTime(com.google.protobuf.Timestamp value) { * *
      * Output only. The modification time of the object metadata.
+     * Set initially to object creation time and then updated whenever any
+     * metadata of the object changes. This includes changes made by a requester,
+     * such as modifying custom metadata, as well as changes made by Cloud Storage
+     * on behalf of a requester, such as changing the storage class based on an
+     * Object Lifecycle Configuration.
      * Attempting to set or update this field will result in a
      * [FieldViolation][google.rpc.BadRequest.FieldViolation].
      * 
@@ -5157,6 +5202,11 @@ public Builder clearUpdateTime() { * *
      * Output only. The modification time of the object metadata.
+     * Set initially to object creation time and then updated whenever any
+     * metadata of the object changes. This includes changes made by a requester,
+     * such as modifying custom metadata, as well as changes made by Cloud Storage
+     * on behalf of a requester, such as changing the storage class based on an
+     * Object Lifecycle Configuration.
      * Attempting to set or update this field will result in a
      * [FieldViolation][google.rpc.BadRequest.FieldViolation].
      * 
@@ -5175,6 +5225,11 @@ public com.google.protobuf.Timestamp.Builder getUpdateTimeBuilder() { * *
      * Output only. The modification time of the object metadata.
+     * Set initially to object creation time and then updated whenever any
+     * metadata of the object changes. This includes changes made by a requester,
+     * such as modifying custom metadata, as well as changes made by Cloud Storage
+     * on behalf of a requester, such as changing the storage class based on an
+     * Object Lifecycle Configuration.
      * Attempting to set or update this field will result in a
      * [FieldViolation][google.rpc.BadRequest.FieldViolation].
      * 
@@ -5197,6 +5252,11 @@ public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder() { * *
      * Output only. The modification time of the object metadata.
+     * Set initially to object creation time and then updated whenever any
+     * metadata of the object changes. This includes changes made by a requester,
+     * such as modifying custom metadata, as well as changes made by Cloud Storage
+     * on behalf of a requester, such as changing the storage class based on an
+     * Object Lifecycle Configuration.
      * Attempting to set or update this field will result in a
      * [FieldViolation][google.rpc.BadRequest.FieldViolation].
      * 
diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectOrBuilder.java index bd6aa32c6..4546815fe 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/ObjectOrBuilder.java @@ -552,6 +552,11 @@ public interface ObjectOrBuilder * *
    * Output only. The modification time of the object metadata.
+   * Set initially to object creation time and then updated whenever any
+   * metadata of the object changes. This includes changes made by a requester,
+   * such as modifying custom metadata, as well as changes made by Cloud Storage
+   * on behalf of a requester, such as changing the storage class based on an
+   * Object Lifecycle Configuration.
    * Attempting to set or update this field will result in a
    * [FieldViolation][google.rpc.BadRequest.FieldViolation].
    * 
@@ -567,6 +572,11 @@ public interface ObjectOrBuilder * *
    * Output only. The modification time of the object metadata.
+   * Set initially to object creation time and then updated whenever any
+   * metadata of the object changes. This includes changes made by a requester,
+   * such as modifying custom metadata, as well as changes made by Cloud Storage
+   * on behalf of a requester, such as changing the storage class based on an
+   * Object Lifecycle Configuration.
    * Attempting to set or update this field will result in a
    * [FieldViolation][google.rpc.BadRequest.FieldViolation].
    * 
@@ -582,6 +592,11 @@ public interface ObjectOrBuilder * *
    * Output only. The modification time of the object metadata.
+   * Set initially to object creation time and then updated whenever any
+   * metadata of the object changes. This includes changes made by a requester,
+   * such as modifying custom metadata, as well as changes made by Cloud Storage
+   * on behalf of a requester, such as changing the storage class based on an
+   * Object Lifecycle Configuration.
    * Attempting to set or update this field will result in a
    * [FieldViolation][google.rpc.BadRequest.FieldViolation].
    * 
diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequest.java index 3bf7f794d..507dc4d72 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequest.java @@ -285,9 +285,9 @@ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { * * *
-   * Immutable. The name of the destination object. Nearly any sequence of unicode
-   * characters is valid. See
-   * [Guidelines](https://cloud.google.com/storage/docs/naming-objects).
+   * Immutable. The name of the destination object.
+   * See the
+   * [Naming Guidelines](https://cloud.google.com/storage/docs/naming-objects).
    * Example: `test.txt`
    * The `name` field by itself does not uniquely identify a Cloud Storage
    * object. A Cloud Storage object is uniquely identified by the tuple of
@@ -314,9 +314,9 @@ public java.lang.String getDestinationName() {
    *
    *
    * 
-   * Immutable. The name of the destination object. Nearly any sequence of unicode
-   * characters is valid. See
-   * [Guidelines](https://cloud.google.com/storage/docs/naming-objects).
+   * Immutable. The name of the destination object.
+   * See the
+   * [Naming Guidelines](https://cloud.google.com/storage/docs/naming-objects).
    * Example: `test.txt`
    * The `name` field by itself does not uniquely identify a Cloud Storage
    * object. A Cloud Storage object is uniquely identified by the tuple of
@@ -346,7 +346,7 @@ public com.google.protobuf.ByteString getDestinationNameBytes() {
    *
    *
    * 
-   * Immutable. The name of the bucket containing The name of the destination object.
+   * Immutable. The name of the bucket containing the destination object.
    * 
* * @@ -371,7 +371,7 @@ public java.lang.String getDestinationBucket() { * * *
-   * Immutable. The name of the bucket containing The name of the destination object.
+   * Immutable. The name of the bucket containing the destination object.
    * 
* * @@ -1957,9 +1957,9 @@ public Builder mergeFrom( * * *
-     * Immutable. The name of the destination object. Nearly any sequence of unicode
-     * characters is valid. See
-     * [Guidelines](https://cloud.google.com/storage/docs/naming-objects).
+     * Immutable. The name of the destination object.
+     * See the
+     * [Naming Guidelines](https://cloud.google.com/storage/docs/naming-objects).
      * Example: `test.txt`
      * The `name` field by itself does not uniquely identify a Cloud Storage
      * object. A Cloud Storage object is uniquely identified by the tuple of
@@ -1985,9 +1985,9 @@ public java.lang.String getDestinationName() {
      *
      *
      * 
-     * Immutable. The name of the destination object. Nearly any sequence of unicode
-     * characters is valid. See
-     * [Guidelines](https://cloud.google.com/storage/docs/naming-objects).
+     * Immutable. The name of the destination object.
+     * See the
+     * [Naming Guidelines](https://cloud.google.com/storage/docs/naming-objects).
      * Example: `test.txt`
      * The `name` field by itself does not uniquely identify a Cloud Storage
      * object. A Cloud Storage object is uniquely identified by the tuple of
@@ -2013,9 +2013,9 @@ public com.google.protobuf.ByteString getDestinationNameBytes() {
      *
      *
      * 
-     * Immutable. The name of the destination object. Nearly any sequence of unicode
-     * characters is valid. See
-     * [Guidelines](https://cloud.google.com/storage/docs/naming-objects).
+     * Immutable. The name of the destination object.
+     * See the
+     * [Naming Guidelines](https://cloud.google.com/storage/docs/naming-objects).
      * Example: `test.txt`
      * The `name` field by itself does not uniquely identify a Cloud Storage
      * object. A Cloud Storage object is uniquely identified by the tuple of
@@ -2040,9 +2040,9 @@ public Builder setDestinationName(java.lang.String value) {
      *
      *
      * 
-     * Immutable. The name of the destination object. Nearly any sequence of unicode
-     * characters is valid. See
-     * [Guidelines](https://cloud.google.com/storage/docs/naming-objects).
+     * Immutable. The name of the destination object.
+     * See the
+     * [Naming Guidelines](https://cloud.google.com/storage/docs/naming-objects).
      * Example: `test.txt`
      * The `name` field by itself does not uniquely identify a Cloud Storage
      * object. A Cloud Storage object is uniquely identified by the tuple of
@@ -2063,9 +2063,9 @@ public Builder clearDestinationName() {
      *
      *
      * 
-     * Immutable. The name of the destination object. Nearly any sequence of unicode
-     * characters is valid. See
-     * [Guidelines](https://cloud.google.com/storage/docs/naming-objects).
+     * Immutable. The name of the destination object.
+     * See the
+     * [Naming Guidelines](https://cloud.google.com/storage/docs/naming-objects).
      * Example: `test.txt`
      * The `name` field by itself does not uniquely identify a Cloud Storage
      * object. A Cloud Storage object is uniquely identified by the tuple of
@@ -2093,7 +2093,7 @@ public Builder setDestinationNameBytes(com.google.protobuf.ByteString value) {
      *
      *
      * 
-     * Immutable. The name of the bucket containing The name of the destination object.
+     * Immutable. The name of the bucket containing the destination object.
      * 
* * @@ -2117,7 +2117,7 @@ public java.lang.String getDestinationBucket() { * * *
-     * Immutable. The name of the bucket containing The name of the destination object.
+     * Immutable. The name of the bucket containing the destination object.
      * 
* * @@ -2141,7 +2141,7 @@ public com.google.protobuf.ByteString getDestinationBucketBytes() { * * *
-     * Immutable. The name of the bucket containing The name of the destination object.
+     * Immutable. The name of the bucket containing the destination object.
      * 
* * @@ -2164,7 +2164,7 @@ public Builder setDestinationBucket(java.lang.String value) { * * *
-     * Immutable. The name of the bucket containing The name of the destination object.
+     * Immutable. The name of the bucket containing the destination object.
      * 
* * @@ -2183,7 +2183,7 @@ public Builder clearDestinationBucket() { * * *
-     * Immutable. The name of the bucket containing The name of the destination object.
+     * Immutable. The name of the bucket containing the destination object.
      * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequestOrBuilder.java index 41ffda22f..cd22bb5a1 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/RewriteObjectRequestOrBuilder.java @@ -27,9 +27,9 @@ public interface RewriteObjectRequestOrBuilder * * *
-   * Immutable. The name of the destination object. Nearly any sequence of unicode
-   * characters is valid. See
-   * [Guidelines](https://cloud.google.com/storage/docs/naming-objects).
+   * Immutable. The name of the destination object.
+   * See the
+   * [Naming Guidelines](https://cloud.google.com/storage/docs/naming-objects).
    * Example: `test.txt`
    * The `name` field by itself does not uniquely identify a Cloud Storage
    * object. A Cloud Storage object is uniquely identified by the tuple of
@@ -45,9 +45,9 @@ public interface RewriteObjectRequestOrBuilder
    *
    *
    * 
-   * Immutable. The name of the destination object. Nearly any sequence of unicode
-   * characters is valid. See
-   * [Guidelines](https://cloud.google.com/storage/docs/naming-objects).
+   * Immutable. The name of the destination object.
+   * See the
+   * [Naming Guidelines](https://cloud.google.com/storage/docs/naming-objects).
    * Example: `test.txt`
    * The `name` field by itself does not uniquely identify a Cloud Storage
    * object. A Cloud Storage object is uniquely identified by the tuple of
@@ -64,7 +64,7 @@ public interface RewriteObjectRequestOrBuilder
    *
    *
    * 
-   * Immutable. The name of the bucket containing The name of the destination object.
+   * Immutable. The name of the bucket containing the destination object.
    * 
* * @@ -78,7 +78,7 @@ public interface RewriteObjectRequestOrBuilder * * *
-   * Immutable. The name of the bucket containing The name of the destination object.
+   * Immutable. The name of the bucket containing the destination object.
    * 
* * diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageProto.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageProto.java index 5c95c7fc2..109ea1da5 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageProto.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/StorageProto.java @@ -91,6 +91,14 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_storage_v2_DeleteObjectRequest_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_google_storage_v2_DeleteObjectRequest_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_storage_v2_CancelResumableWriteRequest_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_storage_v2_CancelResumableWriteRequest_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_storage_v2_CancelResumableWriteResponse_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_storage_v2_CancelResumableWriteResponse_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_storage_v2_ReadObjectRequest_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable @@ -327,494 +335,528 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "\n\037google/storage/v2/storage.proto\022\021googl" + "e.storage.v2\032\027google/api/client.proto\032\037g" + "oogle/api/field_behavior.proto\032\031google/a" - + "pi/resource.proto\032\036google/iam/v1/iam_pol" - + "icy.proto\032\032google/iam/v1/policy.proto\032\033g" - + "oogle/protobuf/empty.proto\032 google/proto" - + "buf/field_mask.proto\032\037google/protobuf/ti" - + "mestamp.proto\032\026google/type/date.proto\"\326\001" - + "\n\023DeleteBucketRequest\0223\n\004name\030\001 \001(\tB%\340A\002" + + "pi/resource.proto\032\030google/api/routing.pr" + + "oto\032\036google/iam/v1/iam_policy.proto\032\032goo" + + "gle/iam/v1/policy.proto\032\033google/protobuf" + + "/empty.proto\032 google/protobuf/field_mask" + + ".proto\032\037google/protobuf/timestamp.proto\032" + + "\026google/type/date.proto\"\326\001\n\023DeleteBucket" + + "Request\0223\n\004name\030\001 \001(\tB%\340A\002\372A\037\n\035storage.g" + + "oogleapis.com/Bucket\022$\n\027if_metageneratio" + + "n_match\030\002 \001(\003H\000\210\001\001\022(\n\033if_metageneration_" + + "not_match\030\003 \001(\003H\001\210\001\001B\032\n\030_if_metagenerati" + + "on_matchB\036\n\034_if_metageneration_not_match" + + "\"\225\002\n\020GetBucketRequest\0223\n\004name\030\001 \001(\tB%\340A\002" + "\372A\037\n\035storage.googleapis.com/Bucket\022$\n\027if" + "_metageneration_match\030\002 \001(\003H\000\210\001\001\022(\n\033if_m" - + "etageneration_not_match\030\003 \001(\003H\001\210\001\001B\032\n\030_i" + + "etageneration_not_match\030\003 \001(\003H\001\210\001\001\0222\n\tre" + + "ad_mask\030\005 \001(\0132\032.google.protobuf.FieldMas" + + "kH\002\210\001\001B\032\n\030_if_metageneration_matchB\036\n\034_i" + + "f_metageneration_not_matchB\014\n\n_read_mask" + + "\"\341\001\n\023CreateBucketRequest\022C\n\006parent\030\001 \001(\t" + + "B3\340A\002\372A-\n+cloudresourcemanager.googleapi" + + "s.com/Project\022.\n\006bucket\030\002 \001(\0132\031.google.s" + + "torage.v2.BucketB\003\340A\002\022\026\n\tbucket_id\030\003 \001(\t" + + "B\003\340A\002\022\026\n\016predefined_acl\030\006 \001(\t\022%\n\035predefi" + + "ned_default_object_acl\030\007 \001(\t\"\322\001\n\022ListBuc" + + "ketsRequest\022C\n\006parent\030\001 \001(\tB3\340A\002\372A-\n+clo" + + "udresourcemanager.googleapis.com/Project" + + "\022\021\n\tpage_size\030\002 \001(\005\022\022\n\npage_token\030\003 \001(\t\022" + + "\016\n\006prefix\030\004 \001(\t\0222\n\tread_mask\030\005 \001(\0132\032.goo" + + "gle.protobuf.FieldMaskH\000\210\001\001B\014\n\n_read_mas" + + "k\"Z\n\023ListBucketsResponse\022*\n\007buckets\030\001 \003(" + + "\0132\031.google.storage.v2.Bucket\022\027\n\017next_pag" + + "e_token\030\002 \001(\t\"z\n LockBucketRetentionPoli" + + "cyRequest\0225\n\006bucket\030\001 \001(\tB%\340A\002\372A\037\n\035stora" + + "ge.googleapis.com/Bucket\022\037\n\027if_metagener" + + "ation_match\030\002 \001(\003\"\274\002\n\023UpdateBucketReques" + + "t\022)\n\006bucket\030\001 \001(\0132\031.google.storage.v2.Bu" + + "cket\022$\n\027if_metageneration_match\030\002 \001(\003H\000\210" + + "\001\001\022(\n\033if_metageneration_not_match\030\003 \001(\003H" + + "\001\210\001\001\022\026\n\016predefined_acl\030\010 \001(\t\022%\n\035predefin" + + "ed_default_object_acl\030\t \001(\t\022/\n\013update_ma" + + "sk\030\006 \001(\0132\032.google.protobuf.FieldMaskB\032\n\030" + + "_if_metageneration_matchB\036\n\034_if_metagene" + + "ration_not_match\"V\n\031DeleteNotificationRe" + + "quest\0229\n\004name\030\001 \001(\tB+\340A\002\372A%\n#storage.goo" + + "gleapis.com/Notification\"M\n\026GetNotificat" + + "ionRequest\0223\n\004name\030\001 \001(\tB%\340A\002\372A\037\n\035storag" + + "e.googleapis.com/Bucket\"\216\001\n\031CreateNotifi" + + "cationRequest\0225\n\006parent\030\001 \001(\tB%\340A\002\372A\037\022\035s" + + "torage.googleapis.com/Bucket\022:\n\014notifica" + + "tion\030\002 \001(\0132\037.google.storage.v2.Notificat" + + "ionB\003\340A\002\"x\n\030ListNotificationsRequest\0225\n\006" + + "parent\030\001 \001(\tB%\340A\002\372A\037\022\035storage.googleapis" + + ".com/Bucket\022\021\n\tpage_size\030\002 \001(\005\022\022\n\npage_t" + + "oken\030\003 \001(\t\"l\n\031ListNotificationsResponse\022" + + "6\n\rnotifications\030\001 \003(\0132\037.google.storage." + + "v2.Notification\022\027\n\017next_page_token\030\002 \001(\t" + + "\"\267\005\n\024ComposeObjectRequest\0223\n\013destination" + + "\030\001 \001(\0132\031.google.storage.v2.ObjectB\003\340A\002\022L" + + "\n\016source_objects\030\002 \003(\01324.google.storage." + + "v2.ComposeObjectRequest.SourceObject\022\"\n\032" + + "destination_predefined_acl\030\t \001(\t\022 \n\023if_g" + + "eneration_match\030\004 \001(\003H\000\210\001\001\022$\n\027if_metagen" + + "eration_match\030\005 \001(\003H\001\210\001\001\0227\n\007kms_key\030\006 \001(" + + "\tB&\372A#\n!cloudkms.googleapis.com/CryptoKe" + + "y\022R\n\034common_object_request_params\030\007 \001(\0132" + + ",.google.storage.v2.CommonObjectRequestP" + + "arams\032\356\001\n\014SourceObject\022\021\n\004name\030\001 \001(\tB\003\340A" + + "\002\022\022\n\ngeneration\030\002 \001(\003\022f\n\024object_precondi" + + "tions\030\003 \001(\0132H.google.storage.v2.ComposeO" + + "bjectRequest.SourceObject.ObjectPrecondi" + + "tions\032O\n\023ObjectPreconditions\022 \n\023if_gener" + + "ation_match\030\001 \001(\003H\000\210\001\001B\026\n\024_if_generation" + + "_matchB\026\n\024_if_generation_matchB\032\n\030_if_me" + + "tageneration_match\"\257\003\n\023DeleteObjectReque" + + "st\022\023\n\006bucket\030\001 \001(\tB\003\340A\002\022\023\n\006object\030\002 \001(\tB" + + "\003\340A\002\022\022\n\ngeneration\030\004 \001(\003\022 \n\023if_generatio" + + "n_match\030\005 \001(\003H\000\210\001\001\022$\n\027if_generation_not_" + + "match\030\006 \001(\003H\001\210\001\001\022$\n\027if_metageneration_ma" + + "tch\030\007 \001(\003H\002\210\001\001\022(\n\033if_metageneration_not_" + + "match\030\010 \001(\003H\003\210\001\001\022R\n\034common_object_reques" + + "t_params\030\n \001(\0132,.google.storage.v2.Commo" + + "nObjectRequestParamsB\026\n\024_if_generation_m" + + "atchB\032\n\030_if_generation_not_matchB\032\n\030_if_" + + "metageneration_matchB\036\n\034_if_metagenerati" + + "on_not_match\"5\n\033CancelResumableWriteRequ" + + "est\022\026\n\tupload_id\030\001 \001(\tB\003\340A\002\"\036\n\034CancelRes" + + "umableWriteResponse\"\216\004\n\021ReadObjectReques" + + "t\022\016\n\006bucket\030\001 \001(\t\022\016\n\006object\030\002 \001(\t\022\022\n\ngen" + + "eration\030\003 \001(\003\022\023\n\013read_offset\030\004 \001(\003\022\022\n\nre" + + "ad_limit\030\005 \001(\003\022 \n\023if_generation_match\030\006 " + + "\001(\003H\000\210\001\001\022$\n\027if_generation_not_match\030\007 \001(" + + "\003H\001\210\001\001\022$\n\027if_metageneration_match\030\010 \001(\003H" + + "\002\210\001\001\022(\n\033if_metageneration_not_match\030\t \001(" + + "\003H\003\210\001\001\022R\n\034common_object_request_params\030\n" + + " \001(\0132,.google.storage.v2.CommonObjectReq" + + "uestParams\0222\n\tread_mask\030\014 \001(\0132\032.google.p" + + "rotobuf.FieldMaskH\004\210\001\001B\026\n\024_if_generation" + + "_matchB\032\n\030_if_generation_not_matchB\032\n\030_i" + "f_metageneration_matchB\036\n\034_if_metagenera" - + "tion_not_match\"\225\002\n\020GetBucketRequest\0223\n\004n" - + "ame\030\001 \001(\tB%\340A\002\372A\037\n\035storage.googleapis.co" - + "m/Bucket\022$\n\027if_metageneration_match\030\002 \001(" - + "\003H\000\210\001\001\022(\n\033if_metageneration_not_match\030\003 " - + "\001(\003H\001\210\001\001\0222\n\tread_mask\030\005 \001(\0132\032.google.pro" - + "tobuf.FieldMaskH\002\210\001\001B\032\n\030_if_metagenerati" - + "on_matchB\036\n\034_if_metageneration_not_match" - + "B\014\n\n_read_mask\"\341\001\n\023CreateBucketRequest\022C" - + "\n\006parent\030\001 \001(\tB3\340A\002\372A-\n+cloudresourceman" - + "ager.googleapis.com/Project\022.\n\006bucket\030\002 " - + "\001(\0132\031.google.storage.v2.BucketB\003\340A\002\022\026\n\tb" - + "ucket_id\030\003 \001(\tB\003\340A\002\022\026\n\016predefined_acl\030\006 " - + "\001(\t\022%\n\035predefined_default_object_acl\030\007 \001" - + "(\t\"\322\001\n\022ListBucketsRequest\022C\n\006parent\030\001 \001(" - + "\tB3\340A\002\372A-\n+cloudresourcemanager.googleap" - + "is.com/Project\022\021\n\tpage_size\030\002 \001(\005\022\022\n\npag" - + "e_token\030\003 \001(\t\022\016\n\006prefix\030\004 \001(\t\0222\n\tread_ma" - + "sk\030\005 \001(\0132\032.google.protobuf.FieldMaskH\000\210\001" - + "\001B\014\n\n_read_mask\"Z\n\023ListBucketsResponse\022*" - + "\n\007buckets\030\001 \003(\0132\031.google.storage.v2.Buck" - + "et\022\027\n\017next_page_token\030\002 \001(\t\"z\n LockBucke" - + "tRetentionPolicyRequest\0225\n\006bucket\030\001 \001(\tB" - + "%\340A\002\372A\037\n\035storage.googleapis.com/Bucket\022\037" - + "\n\027if_metageneration_match\030\002 \001(\003\"\274\002\n\023Upda" - + "teBucketRequest\022)\n\006bucket\030\001 \001(\0132\031.google" - + ".storage.v2.Bucket\022$\n\027if_metageneration_" - + "match\030\002 \001(\003H\000\210\001\001\022(\n\033if_metageneration_no" - + "t_match\030\003 \001(\003H\001\210\001\001\022\026\n\016predefined_acl\030\010 \001" - + "(\t\022%\n\035predefined_default_object_acl\030\t \001(" - + "\t\022/\n\013update_mask\030\006 \001(\0132\032.google.protobuf" - + ".FieldMaskB\032\n\030_if_metageneration_matchB\036" - + "\n\034_if_metageneration_not_match\"V\n\031Delete" - + "NotificationRequest\0229\n\004name\030\001 \001(\tB+\340A\002\372A" - + "%\n#storage.googleapis.com/Notification\"M" - + "\n\026GetNotificationRequest\0223\n\004name\030\001 \001(\tB%" - + "\340A\002\372A\037\n\035storage.googleapis.com/Bucket\"\216\001" - + "\n\031CreateNotificationRequest\0225\n\006parent\030\001 " - + "\001(\tB%\340A\002\372A\037\022\035storage.googleapis.com/Buck" - + "et\022:\n\014notification\030\002 \001(\0132\037.google.storag" - + "e.v2.NotificationB\003\340A\002\"x\n\030ListNotificati" - + "onsRequest\0225\n\006parent\030\001 \001(\tB%\340A\002\372A\037\022\035stor" - + "age.googleapis.com/Bucket\022\021\n\tpage_size\030\002" - + " \001(\005\022\022\n\npage_token\030\003 \001(\t\"l\n\031ListNotifica" - + "tionsResponse\0226\n\rnotifications\030\001 \003(\0132\037.g" - + "oogle.storage.v2.Notification\022\027\n\017next_pa" - + "ge_token\030\002 \001(\t\"\267\005\n\024ComposeObjectRequest\022" - + "3\n\013destination\030\001 \001(\0132\031.google.storage.v2" - + ".ObjectB\003\340A\002\022L\n\016source_objects\030\002 \003(\01324.g" - + "oogle.storage.v2.ComposeObjectRequest.So" - + "urceObject\022\"\n\032destination_predefined_acl" - + "\030\t \001(\t\022 \n\023if_generation_match\030\004 \001(\003H\000\210\001\001" - + "\022$\n\027if_metageneration_match\030\005 \001(\003H\001\210\001\001\0227" - + "\n\007kms_key\030\006 \001(\tB&\372A#\n!cloudkms.googleapi" - + "s.com/CryptoKey\022R\n\034common_object_request" - + "_params\030\007 \001(\0132,.google.storage.v2.Common" - + "ObjectRequestParams\032\356\001\n\014SourceObject\022\021\n\004" - + "name\030\001 \001(\tB\003\340A\002\022\022\n\ngeneration\030\002 \001(\003\022f\n\024o" - + "bject_preconditions\030\003 \001(\0132H.google.stora" - + "ge.v2.ComposeObjectRequest.SourceObject." - + "ObjectPreconditions\032O\n\023ObjectPreconditio" - + "ns\022 \n\023if_generation_match\030\001 \001(\003H\000\210\001\001B\026\n\024" - + "_if_generation_matchB\026\n\024_if_generation_m" - + "atchB\032\n\030_if_metageneration_match\"\302\003\n\023Del" - + "eteObjectRequest\022\023\n\006bucket\030\001 \001(\tB\003\340A\002\022\023\n" - + "\006object\030\002 \001(\tB\003\340A\002\022\021\n\tupload_id\030\003 \001(\t\022\022\n" - + "\ngeneration\030\004 \001(\003\022 \n\023if_generation_match" - + "\030\005 \001(\003H\000\210\001\001\022$\n\027if_generation_not_match\030\006" - + " \001(\003H\001\210\001\001\022$\n\027if_metageneration_match\030\007 \001" - + "(\003H\002\210\001\001\022(\n\033if_metageneration_not_match\030\010" - + " \001(\003H\003\210\001\001\022R\n\034common_object_request_param" - + "s\030\n \001(\0132,.google.storage.v2.CommonObject" - + "RequestParamsB\026\n\024_if_generation_matchB\032\n" - + "\030_if_generation_not_matchB\032\n\030_if_metagen" - + "eration_matchB\036\n\034_if_metageneration_not_" - + "match\"\216\004\n\021ReadObjectRequest\022\016\n\006bucket\030\001 " - + "\001(\t\022\016\n\006object\030\002 \001(\t\022\022\n\ngeneration\030\003 \001(\003\022" - + "\023\n\013read_offset\030\004 \001(\003\022\022\n\nread_limit\030\005 \001(\003" - + "\022 \n\023if_generation_match\030\006 \001(\003H\000\210\001\001\022$\n\027if" - + "_generation_not_match\030\007 \001(\003H\001\210\001\001\022$\n\027if_m" - + "etageneration_match\030\010 \001(\003H\002\210\001\001\022(\n\033if_met" - + "ageneration_not_match\030\t \001(\003H\003\210\001\001\022R\n\034comm" - + "on_object_request_params\030\n \001(\0132,.google." - + "storage.v2.CommonObjectRequestParams\0222\n\t" - + "read_mask\030\014 \001(\0132\032.google.protobuf.FieldM" - + "askH\004\210\001\001B\026\n\024_if_generation_matchB\032\n\030_if_" - + "generation_not_matchB\032\n\030_if_metagenerati" - + "on_matchB\036\n\034_if_metageneration_not_match" - + "B\014\n\n_read_mask\"\356\003\n\020GetObjectRequest\022\023\n\006b" - + "ucket\030\001 \001(\tB\003\340A\002\022\023\n\006object\030\002 \001(\tB\003\340A\002\022\022\n" - + "\ngeneration\030\003 \001(\003\022 \n\023if_generation_match" - + "\030\004 \001(\003H\000\210\001\001\022$\n\027if_generation_not_match\030\005" - + " \001(\003H\001\210\001\001\022$\n\027if_metageneration_match\030\006 \001" - + "(\003H\002\210\001\001\022(\n\033if_metageneration_not_match\030\007" - + " \001(\003H\003\210\001\001\022R\n\034common_object_request_param" - + "s\030\010 \001(\0132,.google.storage.v2.CommonObject" - + "RequestParams\0222\n\tread_mask\030\n \001(\0132\032.googl" - + "e.protobuf.FieldMaskH\004\210\001\001B\026\n\024_if_generat" - + "ion_matchB\032\n\030_if_generation_not_matchB\032\n" - + "\030_if_metageneration_matchB\036\n\034_if_metagen" - + "eration_not_matchB\014\n\n_read_mask\"\365\001\n\022Read" - + "ObjectResponse\022<\n\020checksummed_data\030\001 \001(\013" - + "2\".google.storage.v2.ChecksummedData\022<\n\020" - + "object_checksums\030\002 \001(\0132\".google.storage." - + "v2.ObjectChecksums\0226\n\rcontent_range\030\003 \001(" - + "\0132\037.google.storage.v2.ContentRange\022+\n\010me" - + "tadata\030\004 \001(\0132\031.google.storage.v2.Object\"" - + "\336\002\n\017WriteObjectSpec\022+\n\010resource\030\001 \001(\0132\031." - + "google.storage.v2.Object\022\026\n\016predefined_a" - + "cl\030\007 \001(\t\022 \n\023if_generation_match\030\003 \001(\003H\000\210" - + "\001\001\022$\n\027if_generation_not_match\030\004 \001(\003H\001\210\001\001" - + "\022$\n\027if_metageneration_match\030\005 \001(\003H\002\210\001\001\022(" - + "\n\033if_metageneration_not_match\030\006 \001(\003H\003\210\001\001" + + "tion_not_matchB\014\n\n_read_mask\"\356\003\n\020GetObje" + + "ctRequest\022\023\n\006bucket\030\001 \001(\tB\003\340A\002\022\023\n\006object" + + "\030\002 \001(\tB\003\340A\002\022\022\n\ngeneration\030\003 \001(\003\022 \n\023if_ge" + + "neration_match\030\004 \001(\003H\000\210\001\001\022$\n\027if_generati" + + "on_not_match\030\005 \001(\003H\001\210\001\001\022$\n\027if_metagenera" + + "tion_match\030\006 \001(\003H\002\210\001\001\022(\n\033if_metagenerati" + + "on_not_match\030\007 \001(\003H\003\210\001\001\022R\n\034common_object" + + "_request_params\030\010 \001(\0132,.google.storage.v" + + "2.CommonObjectRequestParams\0222\n\tread_mask" + + "\030\n \001(\0132\032.google.protobuf.FieldMaskH\004\210\001\001B" + + "\026\n\024_if_generation_matchB\032\n\030_if_generatio" + + "n_not_matchB\032\n\030_if_metageneration_matchB" + + "\036\n\034_if_metageneration_not_matchB\014\n\n_read" + + "_mask\"\365\001\n\022ReadObjectResponse\022<\n\020checksum" + + "med_data\030\001 \001(\0132\".google.storage.v2.Check" + + "summedData\022<\n\020object_checksums\030\002 \001(\0132\".g" + + "oogle.storage.v2.ObjectChecksums\0226\n\rcont" + + "ent_range\030\003 \001(\0132\037.google.storage.v2.Cont" + + "entRange\022+\n\010metadata\030\004 \001(\0132\031.google.stor" + + "age.v2.Object\"\210\003\n\017WriteObjectSpec\022+\n\010res" + + "ource\030\001 \001(\0132\031.google.storage.v2.Object\022\026" + + "\n\016predefined_acl\030\007 \001(\t\022 \n\023if_generation_" + + "match\030\003 \001(\003H\000\210\001\001\022$\n\027if_generation_not_ma" + + "tch\030\004 \001(\003H\001\210\001\001\022$\n\027if_metageneration_matc" + + "h\030\005 \001(\003H\002\210\001\001\022(\n\033if_metageneration_not_ma" + + "tch\030\006 \001(\003H\003\210\001\001\022\030\n\013object_size\030\010 \001(\003H\004\210\001\001" + "B\026\n\024_if_generation_matchB\032\n\030_if_generati" + "on_not_matchB\032\n\030_if_metageneration_match" - + "B\036\n\034_if_metageneration_not_match\"\206\003\n\022Wri" - + "teObjectRequest\022\023\n\tupload_id\030\001 \001(\tH\000\022?\n\021" - + "write_object_spec\030\002 \001(\0132\".google.storage" - + ".v2.WriteObjectSpecH\000\022\031\n\014write_offset\030\003 " - + "\001(\003B\003\340A\002\022>\n\020checksummed_data\030\004 \001(\0132\".goo" - + "gle.storage.v2.ChecksummedDataH\001\022<\n\020obje" - + "ct_checksums\030\006 \001(\0132\".google.storage.v2.O" - + "bjectChecksums\022\024\n\014finish_write\030\007 \001(\010\022R\n\034" - + "common_object_request_params\030\010 \001(\0132,.goo" - + "gle.storage.v2.CommonObjectRequestParams" - + "B\017\n\rfirst_messageB\006\n\004data\"n\n\023WriteObject" - + "Response\022\030\n\016persisted_size\030\001 \001(\003H\000\022-\n\010re" - + "source\030\002 \001(\0132\031.google.storage.v2.ObjectH" - + "\000B\016\n\014write_status\"\305\002\n\022ListObjectsRequest" - + "\0225\n\006parent\030\001 \001(\tB%\340A\002\372A\037\022\035storage.google" - + "apis.com/Bucket\022\021\n\tpage_size\030\002 \001(\005\022\022\n\npa" - + "ge_token\030\003 \001(\t\022\021\n\tdelimiter\030\004 \001(\t\022\"\n\032inc" - + "lude_trailing_delimiter\030\005 \001(\010\022\016\n\006prefix\030" - + "\006 \001(\t\022\020\n\010versions\030\007 \001(\010\0222\n\tread_mask\030\010 \001" - + "(\0132\032.google.protobuf.FieldMaskH\000\210\001\001\022\033\n\023l" - + "exicographic_start\030\n \001(\t\022\031\n\021lexicographi" - + "c_end\030\013 \001(\tB\014\n\n_read_mask\"\205\001\n\027QueryWrite" - + "StatusRequest\022\026\n\tupload_id\030\001 \001(\tB\003\340A\002\022R\n" - + "\034common_object_request_params\030\002 \001(\0132,.go" - + "ogle.storage.v2.CommonObjectRequestParam" - + "s\"s\n\030QueryWriteStatusResponse\022\030\n\016persist" - + "ed_size\030\001 \001(\003H\000\022-\n\010resource\030\002 \001(\0132\031.goog" - + "le.storage.v2.ObjectH\000B\016\n\014write_status\"\302" - + "\t\n\024RewriteObjectRequest\022\035\n\020destination_n" - + "ame\030\030 \001(\tB\003\340A\005\022A\n\022destination_bucket\030\031 \001" - + "(\tB%\340A\005\372A\037\n\035storage.googleapis.com/Bucke" - + "t\022C\n\023destination_kms_key\030\033 \001(\tB&\372A#\n!clo" - + "udkms.googleapis.com/CryptoKey\022.\n\013destin" - + "ation\030\001 \001(\0132\031.google.storage.v2.Object\022\032" - + "\n\rsource_bucket\030\002 \001(\tB\003\340A\002\022\032\n\rsource_obj" - + "ect\030\003 \001(\tB\003\340A\002\022\031\n\021source_generation\030\004 \001(" - + "\003\022\025\n\rrewrite_token\030\005 \001(\t\022\"\n\032destination_" - + "predefined_acl\030\034 \001(\t\022 \n\023if_generation_ma" - + "tch\030\007 \001(\003H\000\210\001\001\022$\n\027if_generation_not_matc" - + "h\030\010 \001(\003H\001\210\001\001\022$\n\027if_metageneration_match\030" - + "\t \001(\003H\002\210\001\001\022(\n\033if_metageneration_not_matc" - + "h\030\n \001(\003H\003\210\001\001\022\'\n\032if_source_generation_mat" - + "ch\030\013 \001(\003H\004\210\001\001\022+\n\036if_source_generation_no" - + "t_match\030\014 \001(\003H\005\210\001\001\022+\n\036if_source_metagene" - + "ration_match\030\r \001(\003H\006\210\001\001\022/\n\"if_source_met" - + "ageneration_not_match\030\016 \001(\003H\007\210\001\001\022$\n\034max_" - + "bytes_rewritten_per_call\030\017 \001(\003\022(\n copy_s" - + "ource_encryption_algorithm\030\020 \001(\t\022(\n copy" - + "_source_encryption_key_bytes\030\025 \001(\014\022/\n\'co" - + "py_source_encryption_key_sha256_bytes\030\026 " - + "\001(\014\022R\n\034common_object_request_params\030\023 \001(" + + "B\036\n\034_if_metageneration_not_matchB\016\n\014_obj" + + "ect_size\"\206\003\n\022WriteObjectRequest\022\023\n\tuploa" + + "d_id\030\001 \001(\tH\000\022?\n\021write_object_spec\030\002 \001(\0132" + + "\".google.storage.v2.WriteObjectSpecH\000\022\031\n" + + "\014write_offset\030\003 \001(\003B\003\340A\002\022>\n\020checksummed_" + + "data\030\004 \001(\0132\".google.storage.v2.Checksumm" + + "edDataH\001\022<\n\020object_checksums\030\006 \001(\0132\".goo" + + "gle.storage.v2.ObjectChecksums\022\024\n\014finish" + + "_write\030\007 \001(\010\022R\n\034common_object_request_pa" + + "rams\030\010 \001(\0132,.google.storage.v2.CommonObj" + + "ectRequestParamsB\017\n\rfirst_messageB\006\n\004dat" + + "a\"n\n\023WriteObjectResponse\022\030\n\016persisted_si" + + "ze\030\001 \001(\003H\000\022-\n\010resource\030\002 \001(\0132\031.google.st" + + "orage.v2.ObjectH\000B\016\n\014write_status\"\305\002\n\022Li" + + "stObjectsRequest\0225\n\006parent\030\001 \001(\tB%\340A\002\372A\037" + + "\022\035storage.googleapis.com/Bucket\022\021\n\tpage_" + + "size\030\002 \001(\005\022\022\n\npage_token\030\003 \001(\t\022\021\n\tdelimi" + + "ter\030\004 \001(\t\022\"\n\032include_trailing_delimiter\030" + + "\005 \001(\010\022\016\n\006prefix\030\006 \001(\t\022\020\n\010versions\030\007 \001(\010\022" + + "2\n\tread_mask\030\010 \001(\0132\032.google.protobuf.Fie" + + "ldMaskH\000\210\001\001\022\033\n\023lexicographic_start\030\n \001(\t" + + "\022\031\n\021lexicographic_end\030\013 \001(\tB\014\n\n_read_mas" + + "k\"\205\001\n\027QueryWriteStatusRequest\022\026\n\tupload_" + + "id\030\001 \001(\tB\003\340A\002\022R\n\034common_object_request_p" + + "arams\030\002 \001(\0132,.google.storage.v2.CommonOb" + + "jectRequestParams\"s\n\030QueryWriteStatusRes" + + "ponse\022\030\n\016persisted_size\030\001 \001(\003H\000\022-\n\010resou" + + "rce\030\002 \001(\0132\031.google.storage.v2.ObjectH\000B\016" + + "\n\014write_status\"\302\t\n\024RewriteObjectRequest\022" + + "\035\n\020destination_name\030\030 \001(\tB\003\340A\005\022A\n\022destin" + + "ation_bucket\030\031 \001(\tB%\340A\005\372A\037\n\035storage.goog" + + "leapis.com/Bucket\022C\n\023destination_kms_key" + + "\030\033 \001(\tB&\372A#\n!cloudkms.googleapis.com/Cry" + + "ptoKey\022.\n\013destination\030\001 \001(\0132\031.google.sto" + + "rage.v2.Object\022\032\n\rsource_bucket\030\002 \001(\tB\003\340" + + "A\002\022\032\n\rsource_object\030\003 \001(\tB\003\340A\002\022\031\n\021source" + + "_generation\030\004 \001(\003\022\025\n\rrewrite_token\030\005 \001(\t" + + "\022\"\n\032destination_predefined_acl\030\034 \001(\t\022 \n\023" + + "if_generation_match\030\007 \001(\003H\000\210\001\001\022$\n\027if_gen" + + "eration_not_match\030\010 \001(\003H\001\210\001\001\022$\n\027if_metag" + + "eneration_match\030\t \001(\003H\002\210\001\001\022(\n\033if_metagen" + + "eration_not_match\030\n \001(\003H\003\210\001\001\022\'\n\032if_sourc" + + "e_generation_match\030\013 \001(\003H\004\210\001\001\022+\n\036if_sour" + + "ce_generation_not_match\030\014 \001(\003H\005\210\001\001\022+\n\036if" + + "_source_metageneration_match\030\r \001(\003H\006\210\001\001\022" + + "/\n\"if_source_metageneration_not_match\030\016 " + + "\001(\003H\007\210\001\001\022$\n\034max_bytes_rewritten_per_call" + + "\030\017 \001(\003\022(\n copy_source_encryption_algorit" + + "hm\030\020 \001(\t\022(\n copy_source_encryption_key_b" + + "ytes\030\025 \001(\014\022/\n\'copy_source_encryption_key" + + "_sha256_bytes\030\026 \001(\014\022R\n\034common_object_req" + + "uest_params\030\023 \001(\0132,.google.storage.v2.Co" + + "mmonObjectRequestParamsB\026\n\024_if_generatio" + + "n_matchB\032\n\030_if_generation_not_matchB\032\n\030_" + + "if_metageneration_matchB\036\n\034_if_metagener" + + "ation_not_matchB\035\n\033_if_source_generation" + + "_matchB!\n\037_if_source_generation_not_matc" + + "hB!\n\037_if_source_metageneration_matchB%\n#" + + "_if_source_metageneration_not_match\"\227\001\n\017" + + "RewriteResponse\022\035\n\025total_bytes_rewritten" + + "\030\001 \001(\003\022\023\n\013object_size\030\002 \001(\003\022\014\n\004done\030\003 \001(" + + "\010\022\025\n\rrewrite_token\030\004 \001(\t\022+\n\010resource\030\005 \001" + + "(\0132\031.google.storage.v2.Object\"\257\001\n\032StartR" + + "esumableWriteRequest\022=\n\021write_object_spe" + + "c\030\001 \001(\0132\".google.storage.v2.WriteObjectS" + + "pec\022R\n\034common_object_request_params\030\003 \001(" + "\0132,.google.storage.v2.CommonObjectReques" - + "tParamsB\026\n\024_if_generation_matchB\032\n\030_if_g" - + "eneration_not_matchB\032\n\030_if_metageneratio" - + "n_matchB\036\n\034_if_metageneration_not_matchB" - + "\035\n\033_if_source_generation_matchB!\n\037_if_so" - + "urce_generation_not_matchB!\n\037_if_source_" - + "metageneration_matchB%\n#_if_source_metag" - + "eneration_not_match\"\227\001\n\017RewriteResponse\022" - + "\035\n\025total_bytes_rewritten\030\001 \001(\003\022\023\n\013object" - + "_size\030\002 \001(\003\022\014\n\004done\030\003 \001(\010\022\025\n\rrewrite_tok" - + "en\030\004 \001(\t\022+\n\010resource\030\005 \001(\0132\031.google.stor" - + "age.v2.Object\"\257\001\n\032StartResumableWriteReq" - + "uest\022=\n\021write_object_spec\030\001 \001(\0132\".google" - + ".storage.v2.WriteObjectSpec\022R\n\034common_ob" - + "ject_request_params\030\003 \001(\0132,.google.stora" - + "ge.v2.CommonObjectRequestParams\"0\n\033Start" - + "ResumableWriteResponse\022\021\n\tupload_id\030\001 \001(" - + "\t\"\345\003\n\023UpdateObjectRequest\022)\n\006object\030\001 \001(" - + "\0132\031.google.storage.v2.Object\022 \n\023if_gener" - + "ation_match\030\002 \001(\003H\000\210\001\001\022$\n\027if_generation_" - + "not_match\030\003 \001(\003H\001\210\001\001\022$\n\027if_metageneratio" - + "n_match\030\004 \001(\003H\002\210\001\001\022(\n\033if_metageneration_" - + "not_match\030\005 \001(\003H\003\210\001\001\022\026\n\016predefined_acl\030\n" - + " \001(\t\022/\n\013update_mask\030\007 \001(\0132\032.google.proto" - + "buf.FieldMask\022R\n\034common_object_request_p" - + "arams\030\010 \001(\0132,.google.storage.v2.CommonOb" - + "jectRequestParamsB\026\n\024_if_generation_matc" - + "hB\032\n\030_if_generation_not_matchB\032\n\030_if_met" - + "ageneration_matchB\036\n\034_if_metageneration_" - + "not_match\"`\n\030GetServiceAccountRequest\022D\n" - + "\007project\030\001 \001(\tB3\340A\002\372A-\n+cloudresourceman" - + "ager.googleapis.com/Project\"\200\001\n\024CreateHm" - + "acKeyRequest\022D\n\007project\030\001 \001(\tB3\340A\002\372A-\n+c" - + "loudresourcemanager.googleapis.com/Proje" - + "ct\022\"\n\025service_account_email\030\002 \001(\tB\003\340A\002\"g" - + "\n\025CreateHmacKeyResponse\0224\n\010metadata\030\001 \001(" - + "\0132\".google.storage.v2.HmacKeyMetadata\022\030\n" - + "\020secret_key_bytes\030\003 \001(\014\"t\n\024DeleteHmacKey" - + "Request\022\026\n\taccess_id\030\001 \001(\tB\003\340A\002\022D\n\007proje" - + "ct\030\002 \001(\tB3\340A\002\372A-\n+cloudresourcemanager.g" - + "oogleapis.com/Project\"q\n\021GetHmacKeyReque" - + "st\022\026\n\taccess_id\030\001 \001(\tB\003\340A\002\022D\n\007project\030\002 " - + "\001(\tB3\340A\002\372A-\n+cloudresourcemanager.google" - + "apis.com/Project\"\320\001\n\023ListHmacKeysRequest" - + "\022D\n\007project\030\001 \001(\tB3\340A\002\372A-\n+cloudresource" - + "manager.googleapis.com/Project\022\026\n\tpage_s" - + "ize\030\002 \001(\005B\003\340A\001\022\027\n\npage_token\030\003 \001(\tB\003\340A\001\022" - + "\"\n\025service_account_email\030\004 \001(\tB\003\340A\001\022\036\n\021s" - + "how_deleted_keys\030\005 \001(\010B\003\340A\001\"f\n\024ListHmacK" - + "eysResponse\0225\n\thmac_keys\030\001 \003(\0132\".google." - + "storage.v2.HmacKeyMetadata\022\027\n\017next_page_" - + "token\030\002 \001(\t\"\202\001\n\024UpdateHmacKeyRequest\0229\n\010" - + "hmac_key\030\001 \001(\0132\".google.storage.v2.HmacK" - + "eyMetadataB\003\340A\002\022/\n\013update_mask\030\003 \001(\0132\032.g" - + "oogle.protobuf.FieldMask\"|\n\031CommonObject" - + "RequestParams\022\034\n\024encryption_algorithm\030\001 " - + "\001(\t\022\034\n\024encryption_key_bytes\030\004 \001(\014\022#\n\033enc" - + "ryption_key_sha256_bytes\030\005 \001(\014\"\312\005\n\020Servi" - + "ceConstants\"\265\005\n\006Values\022\026\n\022VALUES_UNSPECI" - + "FIED\020\000\022\033\n\024MAX_READ_CHUNK_BYTES\020\200\200\200\001\022\034\n\025M" - + "AX_WRITE_CHUNK_BYTES\020\200\200\200\001\022\031\n\022MAX_OBJECT_" - + "SIZE_MB\020\200\200\300\002\022)\n$MAX_CUSTOM_METADATA_FIEL" - + "D_NAME_BYTES\020\200\010\022*\n%MAX_CUSTOM_METADATA_F" - + "IELD_VALUE_BYTES\020\200 \022)\n$MAX_CUSTOM_METADA" - + "TA_TOTAL_SIZE_BYTES\020\200@\022*\n$MAX_BUCKET_MET" - + "ADATA_TOTAL_SIZE_BYTES\020\200\240\001\022\'\n#MAX_NOTIFI" - + "CATION_CONFIGS_PER_BUCKET\020d\022\"\n\036MAX_LIFEC" - + "YCLE_RULES_PER_BUCKET\020d\022&\n\"MAX_NOTIFICAT" - + "ION_CUSTOM_ATTRIBUTES\020\005\0221\n,MAX_NOTIFICAT" - + "ION_CUSTOM_ATTRIBUTE_KEY_LENGTH\020\200\002\0223\n.MA" - + "X_NOTIFICATION_CUSTOM_ATTRIBUTE_VALUE_LE" - + "NGTH\020\200\010\022\034\n\030MAX_LABELS_ENTRIES_COUNT\020@\022\037\n" - + "\033MAX_LABELS_KEY_VALUE_LENGTH\020?\022\037\n\032MAX_LA" - + "BELS_KEY_VALUE_BYTES\020\200\001\022.\n)MAX_OBJECT_ID" - + "S_PER_DELETE_OBJECTS_REQUEST\020\350\007\022\036\n\032SPLIT" - + "_TOKEN_MAX_VALID_DAYS\020\016\032\002\020\001\"\264\027\n\006Bucket\022\021" - + "\n\004name\030\001 \001(\tB\003\340A\005\022\026\n\tbucket_id\030\002 \001(\tB\003\340A" - + "\003\022\014\n\004etag\030\035 \001(\t\022D\n\007project\030\003 \001(\tB3\340A\005\372A-" - + "\n+cloudresourcemanager.googleapis.com/Pr" - + "oject\022\033\n\016metageneration\030\004 \001(\003B\003\340A\003\022\025\n\010lo" - + "cation\030\005 \001(\tB\003\340A\005\022\032\n\rlocation_type\030\006 \001(\t" - + "B\003\340A\003\022\025\n\rstorage_class\030\007 \001(\t\022\013\n\003rpo\030\033 \001(" - + "\t\0223\n\003acl\030\010 \003(\0132&.google.storage.v2.Bucke" - + "tAccessControl\022B\n\022default_object_acl\030\t \003" - + "(\0132&.google.storage.v2.ObjectAccessContr" - + "ol\0226\n\tlifecycle\030\n \001(\0132#.google.storage.v" - + "2.Bucket.Lifecycle\0224\n\013create_time\030\013 \001(\0132" - + "\032.google.protobuf.TimestampB\003\340A\003\022,\n\004cors" - + "\030\014 \003(\0132\036.google.storage.v2.Bucket.Cors\0224" - + "\n\013update_time\030\r \001(\0132\032.google.protobuf.Ti" - + "mestampB\003\340A\003\022 \n\030default_event_based_hold" - + "\030\016 \001(\010\0225\n\006labels\030\017 \003(\0132%.google.storage." - + "v2.Bucket.LabelsEntry\0222\n\007website\030\020 \001(\0132!" - + ".google.storage.v2.Bucket.Website\0228\n\nver" - + "sioning\030\021 \001(\0132$.google.storage.v2.Bucket" - + ".Versioning\0222\n\007logging\030\022 \001(\0132!.google.st" - + "orage.v2.Bucket.Logging\022,\n\005owner\030\023 \001(\0132\030" - + ".google.storage.v2.OwnerB\003\340A\003\0228\n\nencrypt" - + "ion\030\024 \001(\0132$.google.storage.v2.Bucket.Enc" - + "ryption\0222\n\007billing\030\025 \001(\0132!.google.storag" - + "e.v2.Bucket.Billing\022C\n\020retention_policy\030" - + "\026 \001(\0132).google.storage.v2.Bucket.Retenti" - + "onPolicy\0227\n\niam_config\030\027 \001(\0132#.google.st" - + "orage.v2.Bucket.IamConfig\022\025\n\rsatisfies_p" - + "zs\030\031 \001(\010\022P\n\027custom_placement_config\030\032 \001(" - + "\0132/.google.storage.v2.Bucket.CustomPlace" - + "mentConfig\0226\n\tautoclass\030\034 \001(\0132#.google.s" - + "torage.v2.Bucket.Autoclass\032!\n\007Billing\022\026\n" - + "\016requester_pays\030\001 \001(\010\032X\n\004Cors\022\016\n\006origin\030" - + "\001 \003(\t\022\016\n\006method\030\002 \003(\t\022\027\n\017response_header" - + "\030\003 \003(\t\022\027\n\017max_age_seconds\030\004 \001(\005\032M\n\nEncry" - + "ption\022?\n\017default_kms_key\030\001 \001(\tB&\372A#\n!clo" - + "udkms.googleapis.com/CryptoKey\032\354\001\n\tIamCo" - + "nfig\022a\n\033uniform_bucket_level_access\030\001 \001(" - + "\0132<.google.storage.v2.Bucket.IamConfig.U" - + "niformBucketLevelAccess\022 \n\030public_access" - + "_prevention\030\003 \001(\t\032Z\n\030UniformBucketLevelA" - + "ccess\022\017\n\007enabled\030\001 \001(\010\022-\n\tlock_time\030\002 \001(" - + "\0132\032.google.protobuf.Timestamp\032\363\005\n\tLifecy" - + "cle\0226\n\004rule\030\001 \003(\0132(.google.storage.v2.Bu" - + "cket.Lifecycle.Rule\032\255\005\n\004Rule\022?\n\006action\030\001" - + " \001(\0132/.google.storage.v2.Bucket.Lifecycl" - + "e.Rule.Action\022E\n\tcondition\030\002 \001(\01322.googl" - + "e.storage.v2.Bucket.Lifecycle.Rule.Condi" - + "tion\032-\n\006Action\022\014\n\004type\030\001 \001(\t\022\025\n\rstorage_" - + "class\030\002 \001(\t\032\355\003\n\tCondition\022\025\n\010age_days\030\001 " - + "\001(\005H\000\210\001\001\022)\n\016created_before\030\002 \001(\0132\021.googl" - + "e.type.Date\022\024\n\007is_live\030\003 \001(\010H\001\210\001\001\022\037\n\022num" - + "_newer_versions\030\004 \001(\005H\002\210\001\001\022\035\n\025matches_st" - + "orage_class\030\005 \003(\t\022#\n\026days_since_custom_t" - + "ime\030\007 \001(\005H\003\210\001\001\022-\n\022custom_time_before\030\010 \001" - + "(\0132\021.google.type.Date\022\'\n\032days_since_nonc" - + "urrent_time\030\t \001(\005H\004\210\001\001\0221\n\026noncurrent_tim" - + "e_before\030\n \001(\0132\021.google.type.Date\022\026\n\016mat" - + "ches_prefix\030\013 \003(\t\022\026\n\016matches_suffix\030\014 \003(" - + "\tB\013\n\t_age_daysB\n\n\010_is_liveB\025\n\023_num_newer" - + "_versionsB\031\n\027_days_since_custom_timeB\035\n\033" - + "_days_since_noncurrent_time\0328\n\007Logging\022\022" - + "\n\nlog_bucket\030\001 \001(\t\022\031\n\021log_object_prefix\030" - + "\002 \001(\t\032r\n\017RetentionPolicy\0222\n\016effective_ti" - + "me\030\001 \001(\0132\032.google.protobuf.Timestamp\022\021\n\t" - + "is_locked\030\002 \001(\010\022\030\n\020retention_period\030\003 \001(" - + "\003\032\035\n\nVersioning\022\017\n\007enabled\030\001 \001(\010\032;\n\007Webs" - + "ite\022\030\n\020main_page_suffix\030\001 \001(\t\022\026\n\016not_fou" - + "nd_page\030\002 \001(\t\032/\n\025CustomPlacementConfig\022\026" - + "\n\016data_locations\030\001 \003(\t\032R\n\tAutoclass\022\017\n\007e" - + "nabled\030\001 \001(\010\0224\n\013toggle_time\030\002 \001(\0132\032.goog" - + "le.protobuf.TimestampB\003\340A\003\032-\n\013LabelsEntr" - + "y\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001:G\352AD\n\035" - + "storage.googleapis.com/Bucket\022#projects/" - + "{project}/buckets/{bucket}\"\265\001\n\023BucketAcc" - + "essControl\022\014\n\004role\030\001 \001(\t\022\n\n\002id\030\002 \001(\t\022\016\n\006" - + "entity\030\003 \001(\t\022\021\n\tentity_id\030\004 \001(\t\022\014\n\004etag\030" - + "\010 \001(\t\022\r\n\005email\030\005 \001(\t\022\016\n\006domain\030\006 \001(\t\0224\n\014" - + "project_team\030\007 \001(\0132\036.google.storage.v2.P" - + "rojectTeam\"B\n\017ChecksummedData\022\017\n\007content" - + "\030\001 \001(\014\022\023\n\006crc32c\030\002 \001(\007H\000\210\001\001B\t\n\007_crc32c\"C" - + "\n\017ObjectChecksums\022\023\n\006crc32c\030\001 \001(\007H\000\210\001\001\022\020" - + "\n\010md5_hash\030\002 \001(\014B\t\n\007_crc32c\"\221\002\n\017HmacKeyM" - + "etadata\022\n\n\002id\030\001 \001(\t\022\021\n\taccess_id\030\002 \001(\t\022A" - + "\n\007project\030\003 \001(\tB0\372A-\n+cloudresourcemanag" - + "er.googleapis.com/Project\022\035\n\025service_acc" - + "ount_email\030\004 \001(\t\022\r\n\005state\030\005 \001(\t\022/\n\013creat" - + "e_time\030\006 \001(\0132\032.google.protobuf.Timestamp" - + "\022/\n\013update_time\030\007 \001(\0132\032.google.protobuf." - + "Timestamp\022\014\n\004etag\030\010 \001(\t\"\235\003\n\014Notification" - + "\022\021\n\004name\030\001 \001(\tB\003\340A\002\022\022\n\005topic\030\002 \001(\tB\003\340A\002\022" - + "\014\n\004etag\030\007 \001(\t\022\030\n\013event_types\030\003 \003(\tB\003\340A\001\022" - + "U\n\021custom_attributes\030\004 \003(\01325.google.stor" - + "age.v2.Notification.CustomAttributesEntr" - + "yB\003\340A\001\022\037\n\022object_name_prefix\030\005 \001(\tB\003\340A\001\022" - + "\033\n\016payload_format\030\006 \001(\tB\003\340A\002\0327\n\025CustomAt" - + "tributesEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(" - + "\t:\0028\001:p\352Am\n#storage.googleapis.com/Notif" - + "ication\022Fprojects/{project}/buckets/{buc" - + "ket}/notificationConfigs/{notification}\"" - + "L\n\022CustomerEncryption\022\034\n\024encryption_algo" - + "rithm\030\001 \001(\t\022\030\n\020key_sha256_bytes\030\003 \001(\014\"\202\t" - + "\n\006Object\022\021\n\004name\030\001 \001(\tB\003\340A\005\0225\n\006bucket\030\002 " - + "\001(\tB%\340A\005\372A\037\n\035storage.googleapis.com/Buck" - + "et\022\014\n\004etag\030\033 \001(\t\022\027\n\ngeneration\030\003 \001(\003B\003\340A" - + "\005\022\033\n\016metageneration\030\004 \001(\003B\003\340A\003\022\025\n\rstorag" - + "e_class\030\005 \001(\t\022\021\n\004size\030\006 \001(\003B\003\340A\003\022\030\n\020cont" - + "ent_encoding\030\007 \001(\t\022\033\n\023content_dispositio" - + "n\030\010 \001(\t\022\025\n\rcache_control\030\t \001(\t\0223\n\003acl\030\n " - + "\003(\0132&.google.storage.v2.ObjectAccessCont" - + "rol\022\030\n\020content_language\030\013 \001(\t\0224\n\013delete_" - + "time\030\014 \001(\0132\032.google.protobuf.TimestampB\003" - + "\340A\003\022\024\n\014content_type\030\r \001(\t\0224\n\013create_time" - + "\030\016 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022" - + "\034\n\017component_count\030\017 \001(\005B\003\340A\003\022:\n\tchecksu" - + "ms\030\020 \001(\0132\".google.storage.v2.ObjectCheck" - + "sumsB\003\340A\003\0224\n\013update_time\030\021 \001(\0132\032.google." - + "protobuf.TimestampB\003\340A\003\0227\n\007kms_key\030\022 \001(\t" - + "B&\372A#\n!cloudkms.googleapis.com/CryptoKey" - + "\022B\n\031update_storage_class_time\030\023 \001(\0132\032.go" - + "ogle.protobuf.TimestampB\003\340A\003\022\026\n\016temporar" - + "y_hold\030\024 \001(\010\0229\n\025retention_expire_time\030\025 " - + "\001(\0132\032.google.protobuf.Timestamp\0229\n\010metad" - + "ata\030\026 \003(\0132\'.google.storage.v2.Object.Met" - + "adataEntry\022\035\n\020event_based_hold\030\027 \001(\010H\000\210\001" - + "\001\022,\n\005owner\030\030 \001(\0132\030.google.storage.v2.Own" - + "erB\003\340A\003\022B\n\023customer_encryption\030\031 \001(\0132%.g" - + "oogle.storage.v2.CustomerEncryption\022/\n\013c" - + "ustom_time\030\032 \001(\0132\032.google.protobuf.Times" - + "tamp\032/\n\rMetadataEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005va" - + "lue\030\002 \001(\t:\0028\001B\023\n\021_event_based_hold\"\265\001\n\023O" - + "bjectAccessControl\022\014\n\004role\030\001 \001(\t\022\n\n\002id\030\002" - + " \001(\t\022\016\n\006entity\030\003 \001(\t\022\021\n\tentity_id\030\004 \001(\t\022" - + "\014\n\004etag\030\010 \001(\t\022\r\n\005email\030\005 \001(\t\022\016\n\006domain\030\006" - + " \001(\t\0224\n\014project_team\030\007 \001(\0132\036.google.stor" - + "age.v2.ProjectTeam\"l\n\023ListObjectsRespons" - + "e\022*\n\007objects\030\001 \003(\0132\031.google.storage.v2.O" - + "bject\022\020\n\010prefixes\030\002 \003(\t\022\027\n\017next_page_tok" - + "en\030\003 \001(\t\"3\n\013ProjectTeam\022\026\n\016project_numbe" - + "r\030\001 \001(\t\022\014\n\004team\030\002 \001(\t\"\'\n\016ServiceAccount\022" - + "\025\n\remail_address\030\001 \001(\t\"*\n\005Owner\022\016\n\006entit" - + "y\030\001 \001(\t\022\021\n\tentity_id\030\002 \001(\t\"C\n\014ContentRan" - + "ge\022\r\n\005start\030\001 \001(\003\022\013\n\003end\030\002 \001(\003\022\027\n\017comple" - + "te_length\030\003 \001(\0032\260\033\n\007Storage\022W\n\014DeleteBuc" - + "ket\022&.google.storage.v2.DeleteBucketRequ" - + "est\032\026.google.protobuf.Empty\"\007\332A\004name\022T\n\t", - "GetBucket\022#.google.storage.v2.GetBucketR" - + "equest\032\031.google.storage.v2.Bucket\"\007\332A\004na" - + "me\022m\n\014CreateBucket\022&.google.storage.v2.C" - + "reateBucketRequest\032\031.google.storage.v2.B" - + "ucket\"\032\332A\027parent,bucket,bucket_id\022g\n\013Lis" - + "tBuckets\022%.google.storage.v2.ListBuckets" - + "Request\032&.google.storage.v2.ListBucketsR" - + "esponse\"\t\332A\006parent\022v\n\031LockBucketRetentio" - + "nPolicy\0223.google.storage.v2.LockBucketRe" - + "tentionPolicyRequest\032\031.google.storage.v2" - + ".Bucket\"\t\332A\006bucket\022V\n\014GetIamPolicy\022\".goo" - + "gle.iam.v1.GetIamPolicyRequest\032\025.google." - + "iam.v1.Policy\"\013\332A\010resource\022]\n\014SetIamPoli" - + "cy\022\".google.iam.v1.SetIamPolicyRequest\032\025" - + ".google.iam.v1.Policy\"\022\332A\017resource,polic" - + "y\022\202\001\n\022TestIamPermissions\022(.google.iam.v1" - + ".TestIamPermissionsRequest\032).google.iam." - + "v1.TestIamPermissionsResponse\"\027\332A\024resour" - + "ce,permissions\022h\n\014UpdateBucket\022&.google." - + "storage.v2.UpdateBucketRequest\032\031.google." - + "storage.v2.Bucket\"\025\332A\022bucket,update_mask" - + "\022c\n\022DeleteNotification\022,.google.storage." - + "v2.DeleteNotificationRequest\032\026.google.pr" - + "otobuf.Empty\"\007\332A\004name\022f\n\017GetNotification" - + "\022).google.storage.v2.GetNotificationRequ" - + "est\032\037.google.storage.v2.Notification\"\007\332A" - + "\004name\022{\n\022CreateNotification\022,.google.sto" - + "rage.v2.CreateNotificationRequest\032\037.goog" - + "le.storage.v2.Notification\"\026\332A\023parent,no" - + "tification\022y\n\021ListNotifications\022+.google" - + ".storage.v2.ListNotificationsRequest\032,.g" - + "oogle.storage.v2.ListNotificationsRespon" - + "se\"\t\332A\006parent\022U\n\rComposeObject\022\'.google." - + "storage.v2.ComposeObjectRequest\032\031.google" - + ".storage.v2.Object\"\000\022{\n\014DeleteObject\022&.g" - + "oogle.storage.v2.DeleteObjectRequest\032\026.g" - + "oogle.protobuf.Empty\"+\332A\rbucket,object\332A" - + "\030bucket,object,generation\022x\n\tGetObject\022#" - + ".google.storage.v2.GetObjectRequest\032\031.go" - + "ogle.storage.v2.Object\"+\332A\rbucket,object" - + "\332A\030bucket,object,generation\022\210\001\n\nReadObje" - + "ct\022$.google.storage.v2.ReadObjectRequest" - + "\032%.google.storage.v2.ReadObjectResponse\"" - + "+\332A\rbucket,object\332A\030bucket,object,genera" - + "tion0\001\022h\n\014UpdateObject\022&.google.storage." - + "v2.UpdateObjectRequest\032\031.google.storage." - + "v2.Object\"\025\332A\022object,update_mask\022`\n\013Writ" - + "eObject\022%.google.storage.v2.WriteObjectR" - + "equest\032&.google.storage.v2.WriteObjectRe" - + "sponse\"\000(\001\022g\n\013ListObjects\022%.google.stora" - + "ge.v2.ListObjectsRequest\032&.google.storag" - + "e.v2.ListObjectsResponse\"\t\332A\006parent\022^\n\rR" - + "ewriteObject\022\'.google.storage.v2.Rewrite" - + "ObjectRequest\032\".google.storage.v2.Rewrit" - + "eResponse\"\000\022v\n\023StartResumableWrite\022-.goo" - + "gle.storage.v2.StartResumableWriteReques" - + "t\032..google.storage.v2.StartResumableWrit" - + "eResponse\"\000\022y\n\020QueryWriteStatus\022*.google" - + ".storage.v2.QueryWriteStatusRequest\032+.go" - + "ogle.storage.v2.QueryWriteStatusResponse" - + "\"\014\332A\tupload_id\022o\n\021GetServiceAccount\022+.go" - + "ogle.storage.v2.GetServiceAccountRequest" - + "\032!.google.storage.v2.ServiceAccount\"\n\332A\007" - + "project\022\204\001\n\rCreateHmacKey\022\'.google.stora" - + "ge.v2.CreateHmacKeyRequest\032(.google.stor" - + "age.v2.CreateHmacKeyResponse\" \332A\035project" - + ",service_account_email\022f\n\rDeleteHmacKey\022" - + "\'.google.storage.v2.DeleteHmacKeyRequest" - + "\032\026.google.protobuf.Empty\"\024\332A\021access_id,p" - + "roject\022l\n\nGetHmacKey\022$.google.storage.v2" - + ".GetHmacKeyRequest\032\".google.storage.v2.H" - + "macKeyMetadata\"\024\332A\021access_id,project\022k\n\014" - + "ListHmacKeys\022&.google.storage.v2.ListHma" - + "cKeysRequest\032\'.google.storage.v2.ListHma" - + "cKeysResponse\"\n\332A\007project\022u\n\rUpdateHmacK" - + "ey\022\'.google.storage.v2.UpdateHmacKeyRequ" - + "est\032\".google.storage.v2.HmacKeyMetadata\"" - + "\027\332A\024hmac_key,update_mask\032\247\002\312A\026storage.go" - + "ogleapis.com\322A\212\002https://www.googleapis.c" - + "om/auth/cloud-platform,https://www.googl" - + "eapis.com/auth/cloud-platform.read-only," - + "https://www.googleapis.com/auth/devstora" - + "ge.full_control,https://www.googleapis.c" - + "om/auth/devstorage.read_only,https://www" - + ".googleapis.com/auth/devstorage.read_wri" - + "teB\334\001\n\025com.google.storage.v2B\014StoragePro" - + "toP\001Z8google.golang.org/genproto/googlea" - + "pis/storage/v2;storage\352Ax\n!cloudkms.goog" - + "leapis.com/CryptoKey\022Sprojects/{project}" - + "/locations/{location}/keyRings/{key_ring" - + "}/cryptoKeys/{crypto_key}b\006proto3" + + "tParams\"0\n\033StartResumableWriteResponse\022\021" + + "\n\tupload_id\030\001 \001(\t\"\345\003\n\023UpdateObjectReques" + + "t\022)\n\006object\030\001 \001(\0132\031.google.storage.v2.Ob" + + "ject\022 \n\023if_generation_match\030\002 \001(\003H\000\210\001\001\022$" + + "\n\027if_generation_not_match\030\003 \001(\003H\001\210\001\001\022$\n\027" + + "if_metageneration_match\030\004 \001(\003H\002\210\001\001\022(\n\033if" + + "_metageneration_not_match\030\005 \001(\003H\003\210\001\001\022\026\n\016" + + "predefined_acl\030\n \001(\t\022/\n\013update_mask\030\007 \001(" + + "\0132\032.google.protobuf.FieldMask\022R\n\034common_" + + "object_request_params\030\010 \001(\0132,.google.sto" + + "rage.v2.CommonObjectRequestParamsB\026\n\024_if" + + "_generation_matchB\032\n\030_if_generation_not_" + + "matchB\032\n\030_if_metageneration_matchB\036\n\034_if" + + "_metageneration_not_match\"`\n\030GetServiceA" + + "ccountRequest\022D\n\007project\030\001 \001(\tB3\340A\002\372A-\n+" + + "cloudresourcemanager.googleapis.com/Proj" + + "ect\"\200\001\n\024CreateHmacKeyRequest\022D\n\007project\030" + + "\001 \001(\tB3\340A\002\372A-\n+cloudresourcemanager.goog" + + "leapis.com/Project\022\"\n\025service_account_em" + + "ail\030\002 \001(\tB\003\340A\002\"g\n\025CreateHmacKeyResponse\022" + + "4\n\010metadata\030\001 \001(\0132\".google.storage.v2.Hm" + + "acKeyMetadata\022\030\n\020secret_key_bytes\030\003 \001(\014\"" + + "t\n\024DeleteHmacKeyRequest\022\026\n\taccess_id\030\001 \001" + + "(\tB\003\340A\002\022D\n\007project\030\002 \001(\tB3\340A\002\372A-\n+cloudr" + + "esourcemanager.googleapis.com/Project\"q\n" + + "\021GetHmacKeyRequest\022\026\n\taccess_id\030\001 \001(\tB\003\340" + + "A\002\022D\n\007project\030\002 \001(\tB3\340A\002\372A-\n+cloudresour" + + "cemanager.googleapis.com/Project\"\320\001\n\023Lis" + + "tHmacKeysRequest\022D\n\007project\030\001 \001(\tB3\340A\002\372A" + + "-\n+cloudresourcemanager.googleapis.com/P" + + "roject\022\026\n\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\npage_t" + + "oken\030\003 \001(\tB\003\340A\001\022\"\n\025service_account_email" + + "\030\004 \001(\tB\003\340A\001\022\036\n\021show_deleted_keys\030\005 \001(\010B\003" + + "\340A\001\"f\n\024ListHmacKeysResponse\0225\n\thmac_keys" + + "\030\001 \003(\0132\".google.storage.v2.HmacKeyMetada" + + "ta\022\027\n\017next_page_token\030\002 \001(\t\"\202\001\n\024UpdateHm" + + "acKeyRequest\0229\n\010hmac_key\030\001 \001(\0132\".google." + + "storage.v2.HmacKeyMetadataB\003\340A\002\022/\n\013updat" + + "e_mask\030\003 \001(\0132\032.google.protobuf.FieldMask" + + "\"|\n\031CommonObjectRequestParams\022\034\n\024encrypt" + + "ion_algorithm\030\001 \001(\t\022\034\n\024encryption_key_by" + + "tes\030\004 \001(\014\022#\n\033encryption_key_sha256_bytes" + + "\030\005 \001(\014\"\312\005\n\020ServiceConstants\"\265\005\n\006Values\022\026" + + "\n\022VALUES_UNSPECIFIED\020\000\022\033\n\024MAX_READ_CHUNK" + + "_BYTES\020\200\200\200\001\022\034\n\025MAX_WRITE_CHUNK_BYTES\020\200\200\200" + + "\001\022\031\n\022MAX_OBJECT_SIZE_MB\020\200\200\300\002\022)\n$MAX_CUST" + + "OM_METADATA_FIELD_NAME_BYTES\020\200\010\022*\n%MAX_C" + + "USTOM_METADATA_FIELD_VALUE_BYTES\020\200 \022)\n$M" + + "AX_CUSTOM_METADATA_TOTAL_SIZE_BYTES\020\200@\022*" + + "\n$MAX_BUCKET_METADATA_TOTAL_SIZE_BYTES\020\200" + + "\240\001\022\'\n#MAX_NOTIFICATION_CONFIGS_PER_BUCKE" + + "T\020d\022\"\n\036MAX_LIFECYCLE_RULES_PER_BUCKET\020d\022" + + "&\n\"MAX_NOTIFICATION_CUSTOM_ATTRIBUTES\020\005\022" + + "1\n,MAX_NOTIFICATION_CUSTOM_ATTRIBUTE_KEY" + + "_LENGTH\020\200\002\0223\n.MAX_NOTIFICATION_CUSTOM_AT" + + "TRIBUTE_VALUE_LENGTH\020\200\010\022\034\n\030MAX_LABELS_EN" + + "TRIES_COUNT\020@\022\037\n\033MAX_LABELS_KEY_VALUE_LE" + + "NGTH\020?\022\037\n\032MAX_LABELS_KEY_VALUE_BYTES\020\200\001\022" + + ".\n)MAX_OBJECT_IDS_PER_DELETE_OBJECTS_REQ" + + "UEST\020\350\007\022\036\n\032SPLIT_TOKEN_MAX_VALID_DAYS\020\016\032" + + "\002\020\001\"\264\027\n\006Bucket\022\021\n\004name\030\001 \001(\tB\003\340A\005\022\026\n\tbuc" + + "ket_id\030\002 \001(\tB\003\340A\003\022\014\n\004etag\030\035 \001(\t\022D\n\007proje" + + "ct\030\003 \001(\tB3\340A\005\372A-\n+cloudresourcemanager.g" + + "oogleapis.com/Project\022\033\n\016metageneration\030" + + "\004 \001(\003B\003\340A\003\022\025\n\010location\030\005 \001(\tB\003\340A\005\022\032\n\rloc" + + "ation_type\030\006 \001(\tB\003\340A\003\022\025\n\rstorage_class\030\007" + + " \001(\t\022\013\n\003rpo\030\033 \001(\t\0223\n\003acl\030\010 \003(\0132&.google." + + "storage.v2.BucketAccessControl\022B\n\022defaul" + + "t_object_acl\030\t \003(\0132&.google.storage.v2.O" + + "bjectAccessControl\0226\n\tlifecycle\030\n \001(\0132#." + + "google.storage.v2.Bucket.Lifecycle\0224\n\013cr" + + "eate_time\030\013 \001(\0132\032.google.protobuf.Timest" + + "ampB\003\340A\003\022,\n\004cors\030\014 \003(\0132\036.google.storage." + + "v2.Bucket.Cors\0224\n\013update_time\030\r \001(\0132\032.go" + + "ogle.protobuf.TimestampB\003\340A\003\022 \n\030default_" + + "event_based_hold\030\016 \001(\010\0225\n\006labels\030\017 \003(\0132%" + + ".google.storage.v2.Bucket.LabelsEntry\0222\n" + + "\007website\030\020 \001(\0132!.google.storage.v2.Bucke" + + "t.Website\0228\n\nversioning\030\021 \001(\0132$.google.s" + + "torage.v2.Bucket.Versioning\0222\n\007logging\030\022" + + " \001(\0132!.google.storage.v2.Bucket.Logging\022" + + ",\n\005owner\030\023 \001(\0132\030.google.storage.v2.Owner" + + "B\003\340A\003\0228\n\nencryption\030\024 \001(\0132$.google.stora" + + "ge.v2.Bucket.Encryption\0222\n\007billing\030\025 \001(\013" + + "2!.google.storage.v2.Bucket.Billing\022C\n\020r" + + "etention_policy\030\026 \001(\0132).google.storage.v" + + "2.Bucket.RetentionPolicy\0227\n\niam_config\030\027" + + " \001(\0132#.google.storage.v2.Bucket.IamConfi" + + "g\022\025\n\rsatisfies_pzs\030\031 \001(\010\022P\n\027custom_place" + + "ment_config\030\032 \001(\0132/.google.storage.v2.Bu" + + "cket.CustomPlacementConfig\0226\n\tautoclass\030" + + "\034 \001(\0132#.google.storage.v2.Bucket.Autocla" + + "ss\032!\n\007Billing\022\026\n\016requester_pays\030\001 \001(\010\032X\n" + + "\004Cors\022\016\n\006origin\030\001 \003(\t\022\016\n\006method\030\002 \003(\t\022\027\n" + + "\017response_header\030\003 \003(\t\022\027\n\017max_age_second" + + "s\030\004 \001(\005\032M\n\nEncryption\022?\n\017default_kms_key" + + "\030\001 \001(\tB&\372A#\n!cloudkms.googleapis.com/Cry" + + "ptoKey\032\354\001\n\tIamConfig\022a\n\033uniform_bucket_l" + + "evel_access\030\001 \001(\0132<.google.storage.v2.Bu" + + "cket.IamConfig.UniformBucketLevelAccess\022" + + " \n\030public_access_prevention\030\003 \001(\t\032Z\n\030Uni" + + "formBucketLevelAccess\022\017\n\007enabled\030\001 \001(\010\022-" + + "\n\tlock_time\030\002 \001(\0132\032.google.protobuf.Time" + + "stamp\032\363\005\n\tLifecycle\0226\n\004rule\030\001 \003(\0132(.goog" + + "le.storage.v2.Bucket.Lifecycle.Rule\032\255\005\n\004" + + "Rule\022?\n\006action\030\001 \001(\0132/.google.storage.v2" + + ".Bucket.Lifecycle.Rule.Action\022E\n\tconditi" + + "on\030\002 \001(\01322.google.storage.v2.Bucket.Life" + + "cycle.Rule.Condition\032-\n\006Action\022\014\n\004type\030\001" + + " \001(\t\022\025\n\rstorage_class\030\002 \001(\t\032\355\003\n\tConditio" + + "n\022\025\n\010age_days\030\001 \001(\005H\000\210\001\001\022)\n\016created_befo" + + "re\030\002 \001(\0132\021.google.type.Date\022\024\n\007is_live\030\003" + + " \001(\010H\001\210\001\001\022\037\n\022num_newer_versions\030\004 \001(\005H\002\210" + + "\001\001\022\035\n\025matches_storage_class\030\005 \003(\t\022#\n\026day" + + "s_since_custom_time\030\007 \001(\005H\003\210\001\001\022-\n\022custom" + + "_time_before\030\010 \001(\0132\021.google.type.Date\022\'\n" + + "\032days_since_noncurrent_time\030\t \001(\005H\004\210\001\001\0221" + + "\n\026noncurrent_time_before\030\n \001(\0132\021.google." + + "type.Date\022\026\n\016matches_prefix\030\013 \003(\t\022\026\n\016mat" + + "ches_suffix\030\014 \003(\tB\013\n\t_age_daysB\n\n\010_is_li" + + "veB\025\n\023_num_newer_versionsB\031\n\027_days_since" + + "_custom_timeB\035\n\033_days_since_noncurrent_t" + + "ime\0328\n\007Logging\022\022\n\nlog_bucket\030\001 \001(\t\022\031\n\021lo" + + "g_object_prefix\030\002 \001(\t\032r\n\017RetentionPolicy" + + "\0222\n\016effective_time\030\001 \001(\0132\032.google.protob" + + "uf.Timestamp\022\021\n\tis_locked\030\002 \001(\010\022\030\n\020reten" + + "tion_period\030\003 \001(\003\032\035\n\nVersioning\022\017\n\007enabl" + + "ed\030\001 \001(\010\032;\n\007Website\022\030\n\020main_page_suffix\030" + + "\001 \001(\t\022\026\n\016not_found_page\030\002 \001(\t\032/\n\025CustomP" + + "lacementConfig\022\026\n\016data_locations\030\001 \003(\t\032R" + + "\n\tAutoclass\022\017\n\007enabled\030\001 \001(\010\0224\n\013toggle_t" + + "ime\030\002 \001(\0132\032.google.protobuf.TimestampB\003\340" + + "A\003\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030" + + "\002 \001(\t:\0028\001:G\352AD\n\035storage.googleapis.com/B" + + "ucket\022#projects/{project}/buckets/{bucke" + + "t}\"\265\001\n\023BucketAccessControl\022\014\n\004role\030\001 \001(\t" + + "\022\n\n\002id\030\002 \001(\t\022\016\n\006entity\030\003 \001(\t\022\021\n\tentity_i" + + "d\030\004 \001(\t\022\014\n\004etag\030\010 \001(\t\022\r\n\005email\030\005 \001(\t\022\016\n\006" + + "domain\030\006 \001(\t\0224\n\014project_team\030\007 \001(\0132\036.goo" + + "gle.storage.v2.ProjectTeam\"B\n\017Checksumme" + + "dData\022\017\n\007content\030\001 \001(\014\022\023\n\006crc32c\030\002 \001(\007H\000" + + "\210\001\001B\t\n\007_crc32c\"C\n\017ObjectChecksums\022\023\n\006crc" + + "32c\030\001 \001(\007H\000\210\001\001\022\020\n\010md5_hash\030\002 \001(\014B\t\n\007_crc" + + "32c\"\255\002\n\017HmacKeyMetadata\022\017\n\002id\030\001 \001(\tB\003\340A\005" + + "\022\026\n\taccess_id\030\002 \001(\tB\003\340A\005\022D\n\007project\030\003 \001(" + + "\tB3\340A\005\372A-\n+cloudresourcemanager.googleap" + + "is.com/Project\022\"\n\025service_account_email\030" + + "\004 \001(\tB\003\340A\003\022\r\n\005state\030\005 \001(\t\0224\n\013create_time" + + "\030\006 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\022" + + "4\n\013update_time\030\007 \001(\0132\032.google.protobuf.T" + + "imestampB\003\340A\003\022\014\n\004etag\030\010 \001(\t\"\235\003\n\014Notifica" + + "tion\022\021\n\004name\030\001 \001(\tB\003\340A\002\022\022\n\005topic\030\002 \001(\tB\003" + + "\340A\002\022\014\n\004etag\030\007 \001(\t\022\030\n\013event_types\030\003 \003(\tB\003" + + "\340A\001\022U\n\021custom_attributes\030\004 \003(\01325.google." + + "storage.v2.Notification.CustomAttributes" + + "EntryB\003\340A\001\022\037\n\022object_name_prefix\030\005 \001(\tB\003" + + "\340A\001\022\033\n\016payload_format\030\006 \001(\tB\003\340A\002\0327\n\025Cust" + + "omAttributesEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030" + + "\002 \001(\t:\0028\001:p\352Am\n#storage.googleapis.com/N" + + "otification\022Fprojects/{project}/buckets/" + + "{bucket}/notificationConfigs/{notificati" + + "on}\"L\n\022CustomerEncryption\022\034\n\024encryption_" + + "algorithm\030\001 \001(\t\022\030\n\020key_sha256_bytes\030\003 \001(" + + "\014\"\202\t\n\006Object\022\021\n\004name\030\001 \001(\tB\003\340A\005\0225\n\006bucke" + + "t\030\002 \001(\tB%\340A\005\372A\037\n\035storage.googleapis.com/" + + "Bucket\022\014\n\004etag\030\033 \001(\t\022\027\n\ngeneration\030\003 \001(\003" + + "B\003\340A\005\022\033\n\016metageneration\030\004 \001(\003B\003\340A\003\022\025\n\rst" + + "orage_class\030\005 \001(\t\022\021\n\004size\030\006 \001(\003B\003\340A\003\022\030\n\020" + + "content_encoding\030\007 \001(\t\022\033\n\023content_dispos" + + "ition\030\010 \001(\t\022\025\n\rcache_control\030\t \001(\t\0223\n\003ac" + + "l\030\n \003(\0132&.google.storage.v2.ObjectAccess" + + "Control\022\030\n\020content_language\030\013 \001(\t\0224\n\013del" + + "ete_time\030\014 \001(\0132\032.google.protobuf.Timesta" + + "mpB\003\340A\003\022\024\n\014content_type\030\r \001(\t\0224\n\013create_" + + "time\030\016 \001(\0132\032.google.protobuf.TimestampB\003" + + "\340A\003\022\034\n\017component_count\030\017 \001(\005B\003\340A\003\022:\n\tche" + + "cksums\030\020 \001(\0132\".google.storage.v2.ObjectC" + + "hecksumsB\003\340A\003\0224\n\013update_time\030\021 \001(\0132\032.goo" + + "gle.protobuf.TimestampB\003\340A\003\0227\n\007kms_key\030\022" + + " \001(\tB&\372A#\n!cloudkms.googleapis.com/Crypt" + + "oKey\022B\n\031update_storage_class_time\030\023 \001(\0132" + + "\032.google.protobuf.TimestampB\003\340A\003\022\026\n\016temp" + + "orary_hold\030\024 \001(\010\0229\n\025retention_expire_tim" + + "e\030\025 \001(\0132\032.google.protobuf.Timestamp\0229\n\010m" + + "etadata\030\026 \003(\0132\'.google.storage.v2.Object" + + ".MetadataEntry\022\035\n\020event_based_hold\030\027 \001(\010" + + "H\000\210\001\001\022,\n\005owner\030\030 \001(\0132\030.google.storage.v2" + + ".OwnerB\003\340A\003\022B\n\023customer_encryption\030\031 \001(\013" + + "2%.google.storage.v2.CustomerEncryption\022" + + "/\n\013custom_time\030\032 \001(\0132\032.google.protobuf.T" + + "imestamp\032/\n\rMetadataEntry\022\013\n\003key\030\001 \001(\t\022\r" + + "\n\005value\030\002 \001(\t:\0028\001B\023\n\021_event_based_hold\"\265" + + "\001\n\023ObjectAccessControl\022\014\n\004role\030\001 \001(\t\022\n\n\002" + + "id\030\002 \001(\t\022\016\n\006entity\030\003 \001(\t\022\021\n\tentity_id\030\004 " + + "\001(\t\022\014\n\004etag\030\010 \001(\t\022\r\n\005email\030\005 \001(\t\022\016\n\006doma" + + "in\030\006 \001(\t\0224\n\014project_team\030\007 \001(\0132\036.google." + + "storage.v2.ProjectTeam\"l\n\023ListObjectsRes" + + "ponse\022*\n\007objects\030\001 \003(\0132\031.google.storage." + + "v2.Object\022\020\n\010prefixes\030\002 \003(\t\022\027\n\017next_page" + + "_token\030\003 \001(\t\"3\n\013ProjectTeam\022\026\n\016project_n" + + "umber\030\001 \001(\t\022\014\n\004team\030\002 \001(\t\"\'\n\016ServiceAcco" + + "unt\022\025\n\remail_address\030\001 \001(\t\"*\n\005Owner\022\016\n\006e" + + "ntity\030\001 \001(\t\022\021\n\tentity_id\030\002 \001(\t\"C\n\014Conten", + "tRange\022\r\n\005start\030\001 \001(\003\022\013\n\003end\030\002 \001(\003\022\027\n\017co" + + "mplete_length\030\003 \001(\0032\332$\n\007Storage\022r\n\014Delet" + + "eBucket\022&.google.storage.v2.DeleteBucket" + + "Request\032\026.google.protobuf.Empty\"\"\212\323\344\223\002\025\022" + + "\023\n\004name\022\013{bucket=**}\332A\004name\022o\n\tGetBucket" + + "\022#.google.storage.v2.GetBucketRequest\032\031." + + "google.storage.v2.Bucket\"\"\212\323\344\223\002\025\022\023\n\004name" + + "\022\013{bucket=**}\332A\004name\022m\n\014CreateBucket\022&.g" + + "oogle.storage.v2.CreateBucketRequest\032\031.g" + + "oogle.storage.v2.Bucket\"\032\332A\027parent,bucke" + + "t,bucket_id\022g\n\013ListBuckets\022%.google.stor" + + "age.v2.ListBucketsRequest\032&.google.stora" + + "ge.v2.ListBucketsResponse\"\t\332A\006parent\022\223\001\n" + + "\031LockBucketRetentionPolicy\0223.google.stor" + + "age.v2.LockBucketRetentionPolicyRequest\032" + + "\031.google.storage.v2.Bucket\"&\212\323\344\223\002\027\022\025\n\006bu" + + "cket\022\013{bucket=**}\332A\006bucket\022\253\001\n\014GetIamPol" + + "icy\022\".google.iam.v1.GetIamPolicyRequest\032" + + "\025.google.iam.v1.Policy\"`\212\323\344\223\002O\022\027\n\010resour" + + "ce\022\013{bucket=**}\0224\n\010resource\022({bucket=pro" + + "jects/*/buckets/*}/objects/**\332A\010resource" + + "\022\262\001\n\014SetIamPolicy\022\".google.iam.v1.SetIam" + + "PolicyRequest\032\025.google.iam.v1.Policy\"g\212\323" + + "\344\223\002O\022\027\n\010resource\022\013{bucket=**}\0224\n\010resourc" + + "e\022({bucket=projects/*/buckets/*}/objects" + + "/**\332A\017resource,policy\022\327\001\n\022TestIamPermiss" + + "ions\022(.google.iam.v1.TestIamPermissionsR" + + "equest\032).google.iam.v1.TestIamPermission" + + "sResponse\"l\212\323\344\223\002O\022\027\n\010resource\022\013{bucket=*" + + "*}\0224\n\010resource\022({bucket=projects/*/bucke" + + "ts/*}/objects/**\332A\024resource,permissions\022" + + "\212\001\n\014UpdateBucket\022&.google.storage.v2.Upd" + + "ateBucketRequest\032\031.google.storage.v2.Buc" + + "ket\"7\212\323\344\223\002\034\022\032\n\013bucket.name\022\013{bucket=**}\332" + + "A\022bucket,update_mask\022\223\001\n\022DeleteNotificat" + + "ion\022,.google.storage.v2.DeleteNotificati" + + "onRequest\032\026.google.protobuf.Empty\"7\212\323\344\223\002" + + "*\022(\n\004name\022 {bucket=projects/*/buckets/*}" + + "/**\332A\004name\022\226\001\n\017GetNotification\022).google." + + "storage.v2.GetNotificationRequest\032\037.goog" + + "le.storage.v2.Notification\"7\212\323\344\223\002*\022(\n\004na" + + "me\022 {bucket=projects/*/buckets/*}/**\332A\004n" + + "ame\022\230\001\n\022CreateNotification\022,.google.stor" + + "age.v2.CreateNotificationRequest\032\037.googl" + + "e.storage.v2.Notification\"3\212\323\344\223\002\027\022\025\n\006par" + + "ent\022\013{bucket=**}\332A\023parent,notification\022\226" + + "\001\n\021ListNotifications\022+.google.storage.v2" + + ".ListNotificationsRequest\032,.google.stora" + + "ge.v2.ListNotificationsResponse\"&\212\323\344\223\002\027\022" + + "\025\n\006parent\022\013{bucket=**}\332A\006parent\022~\n\rCompo" + + "seObject\022\'.google.storage.v2.ComposeObje" + + "ctRequest\032\031.google.storage.v2.Object\")\212\323" + + "\344\223\002#\022!\n\022destination.bucket\022\013{bucket=**}\022" + + "\230\001\n\014DeleteObject\022&.google.storage.v2.Del" + + "eteObjectRequest\032\026.google.protobuf.Empty" + + "\"H\212\323\344\223\002\027\022\025\n\006bucket\022\013{bucket=**}\332A\rbucket" + + ",object\332A\030bucket,object,generation\022\272\001\n\024C" + + "ancelResumableWrite\022..google.storage.v2." + + "CancelResumableWriteRequest\032/.google.sto" + + "rage.v2.CancelResumableWriteResponse\"A\212\323" + + "\344\223\002/\022-\n\tupload_id\022 {bucket=projects/*/bu" + + "ckets/*}/**\332A\tupload_id\022\225\001\n\tGetObject\022#." + + "google.storage.v2.GetObjectRequest\032\031.goo" + + "gle.storage.v2.Object\"H\212\323\344\223\002\027\022\025\n\006bucket\022" + + "\013{bucket=**}\332A\rbucket,object\332A\030bucket,ob" + + "ject,generation\022\245\001\n\nReadObject\022$.google." + + "storage.v2.ReadObjectRequest\032%.google.st" + + "orage.v2.ReadObjectResponse\"H\212\323\344\223\002\027\022\025\n\006b" + + "ucket\022\013{bucket=**}\332A\rbucket,object\332A\030buc" + + "ket,object,generation0\001\022\214\001\n\014UpdateObject" + + "\022&.google.storage.v2.UpdateObjectRequest" + + "\032\031.google.storage.v2.Object\"9\212\323\344\223\002\036\022\034\n\ro" + + "bject.bucket\022\013{bucket=**}\332A\022object,updat" + + "e_mask\022\307\001\n\013WriteObject\022%.google.storage." + + "v2.WriteObjectRequest\032&.google.storage.v" + + "2.WriteObjectResponse\"g\212\323\344\223\002a\0220\n!write_o" + + "bject_spec.resource.bucket\022\013{bucket=**}\022" + + "-\n\tupload_id\022 {bucket=projects/*/buckets" + + "/*}/**(\001\022\204\001\n\013ListObjects\022%.google.storag" + + "e.v2.ListObjectsRequest\032&.google.storage" + + ".v2.ListObjectsResponse\"&\212\323\344\223\002\027\022\025\n\006paren" + + "t\022\013{bucket=**}\332A\006parent\022\230\001\n\rRewriteObjec" + + "t\022\'.google.storage.v2.RewriteObjectReque" + + "st\032\".google.storage.v2.RewriteResponse\":" + + "\212\323\344\223\0024\022\017\n\rsource_bucket\022!\n\022destination_b" + + "ucket\022\013{bucket=**}\022\256\001\n\023StartResumableWri" + + "te\022-.google.storage.v2.StartResumableWri" + + "teRequest\032..google.storage.v2.StartResum" + + "ableWriteResponse\"8\212\323\344\223\0022\0220\n!write_objec" + + "t_spec.resource.bucket\022\013{bucket=**}\022\256\001\n\020" + + "QueryWriteStatus\022*.google.storage.v2.Que" + + "ryWriteStatusRequest\032+.google.storage.v2" + + ".QueryWriteStatusResponse\"A\212\323\344\223\002/\022-\n\tupl" + + "oad_id\022 {bucket=projects/*/buckets/*}/**" + + "\332A\tupload_id\022o\n\021GetServiceAccount\022+.goog" + + "le.storage.v2.GetServiceAccountRequest\032!" + + ".google.storage.v2.ServiceAccount\"\n\332A\007pr" + + "oject\022\204\001\n\rCreateHmacKey\022\'.google.storage" + + ".v2.CreateHmacKeyRequest\032(.google.storag" + + "e.v2.CreateHmacKeyResponse\" \332A\035project,s" + + "ervice_account_email\022f\n\rDeleteHmacKey\022\'." + + "google.storage.v2.DeleteHmacKeyRequest\032\026" + + ".google.protobuf.Empty\"\024\332A\021access_id,pro" + + "ject\022l\n\nGetHmacKey\022$.google.storage.v2.G" + + "etHmacKeyRequest\032\".google.storage.v2.Hma" + + "cKeyMetadata\"\024\332A\021access_id,project\022k\n\014Li" + + "stHmacKeys\022&.google.storage.v2.ListHmacK" + + "eysRequest\032\'.google.storage.v2.ListHmacK" + + "eysResponse\"\n\332A\007project\022u\n\rUpdateHmacKey" + + "\022\'.google.storage.v2.UpdateHmacKeyReques" + + "t\032\".google.storage.v2.HmacKeyMetadata\"\027\332" + + "A\024hmac_key,update_mask\032\247\002\312A\026storage.goog" + + "leapis.com\322A\212\002https://www.googleapis.com" + + "/auth/cloud-platform,https://www.googlea" + + "pis.com/auth/cloud-platform.read-only,ht" + + "tps://www.googleapis.com/auth/devstorage" + + ".full_control,https://www.googleapis.com" + + "/auth/devstorage.read_only,https://www.g" + + "oogleapis.com/auth/devstorage.read_write" + + "B\334\001\n\025com.google.storage.v2B\014StorageProto" + + "P\001Z8google.golang.org/genproto/googleapi" + + "s/storage/v2;storage\352Ax\n!cloudkms.google" + + "apis.com/CryptoKey\022Sprojects/{project}/l" + + "ocations/{location}/keyRings/{key_ring}/" + + "cryptoKeys/{crypto_key}b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -823,6 +865,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { com.google.api.ClientProto.getDescriptor(), com.google.api.FieldBehaviorProto.getDescriptor(), com.google.api.ResourceProto.getDescriptor(), + com.google.api.RoutingProto.getDescriptor(), com.google.iam.v1.IamPolicyProto.getDescriptor(), com.google.iam.v1.PolicyProto.getDescriptor(), com.google.protobuf.EmptyProto.getDescriptor(), @@ -985,7 +1028,6 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { new java.lang.String[] { "Bucket", "Object", - "UploadId", "Generation", "IfGenerationMatch", "IfGenerationNotMatch", @@ -997,8 +1039,22 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "IfMetagenerationMatch", "IfMetagenerationNotMatch", }); - internal_static_google_storage_v2_ReadObjectRequest_descriptor = + internal_static_google_storage_v2_CancelResumableWriteRequest_descriptor = getDescriptor().getMessageTypes().get(14); + internal_static_google_storage_v2_CancelResumableWriteRequest_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_storage_v2_CancelResumableWriteRequest_descriptor, + new java.lang.String[] { + "UploadId", + }); + internal_static_google_storage_v2_CancelResumableWriteResponse_descriptor = + getDescriptor().getMessageTypes().get(15); + internal_static_google_storage_v2_CancelResumableWriteResponse_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_storage_v2_CancelResumableWriteResponse_descriptor, + new java.lang.String[] {}); + internal_static_google_storage_v2_ReadObjectRequest_descriptor = + getDescriptor().getMessageTypes().get(16); internal_static_google_storage_v2_ReadObjectRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ReadObjectRequest_descriptor, @@ -1021,7 +1077,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ReadMask", }); internal_static_google_storage_v2_GetObjectRequest_descriptor = - getDescriptor().getMessageTypes().get(15); + getDescriptor().getMessageTypes().get(17); internal_static_google_storage_v2_GetObjectRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_GetObjectRequest_descriptor, @@ -1042,7 +1098,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ReadMask", }); internal_static_google_storage_v2_ReadObjectResponse_descriptor = - getDescriptor().getMessageTypes().get(16); + getDescriptor().getMessageTypes().get(18); internal_static_google_storage_v2_ReadObjectResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ReadObjectResponse_descriptor, @@ -1050,7 +1106,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ChecksummedData", "ObjectChecksums", "ContentRange", "Metadata", }); internal_static_google_storage_v2_WriteObjectSpec_descriptor = - getDescriptor().getMessageTypes().get(17); + getDescriptor().getMessageTypes().get(19); internal_static_google_storage_v2_WriteObjectSpec_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_WriteObjectSpec_descriptor, @@ -1061,13 +1117,15 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "IfGenerationNotMatch", "IfMetagenerationMatch", "IfMetagenerationNotMatch", + "ObjectSize", "IfGenerationMatch", "IfGenerationNotMatch", "IfMetagenerationMatch", "IfMetagenerationNotMatch", + "ObjectSize", }); internal_static_google_storage_v2_WriteObjectRequest_descriptor = - getDescriptor().getMessageTypes().get(18); + getDescriptor().getMessageTypes().get(20); internal_static_google_storage_v2_WriteObjectRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_WriteObjectRequest_descriptor, @@ -1083,7 +1141,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Data", }); internal_static_google_storage_v2_WriteObjectResponse_descriptor = - getDescriptor().getMessageTypes().get(19); + getDescriptor().getMessageTypes().get(21); internal_static_google_storage_v2_WriteObjectResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_WriteObjectResponse_descriptor, @@ -1091,7 +1149,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "PersistedSize", "Resource", "WriteStatus", }); internal_static_google_storage_v2_ListObjectsRequest_descriptor = - getDescriptor().getMessageTypes().get(20); + getDescriptor().getMessageTypes().get(22); internal_static_google_storage_v2_ListObjectsRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ListObjectsRequest_descriptor, @@ -1109,7 +1167,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ReadMask", }); internal_static_google_storage_v2_QueryWriteStatusRequest_descriptor = - getDescriptor().getMessageTypes().get(21); + getDescriptor().getMessageTypes().get(23); internal_static_google_storage_v2_QueryWriteStatusRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_QueryWriteStatusRequest_descriptor, @@ -1117,7 +1175,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "UploadId", "CommonObjectRequestParams", }); internal_static_google_storage_v2_QueryWriteStatusResponse_descriptor = - getDescriptor().getMessageTypes().get(22); + getDescriptor().getMessageTypes().get(24); internal_static_google_storage_v2_QueryWriteStatusResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_QueryWriteStatusResponse_descriptor, @@ -1125,7 +1183,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "PersistedSize", "Resource", "WriteStatus", }); internal_static_google_storage_v2_RewriteObjectRequest_descriptor = - getDescriptor().getMessageTypes().get(23); + getDescriptor().getMessageTypes().get(25); internal_static_google_storage_v2_RewriteObjectRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_RewriteObjectRequest_descriptor, @@ -1162,7 +1220,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "IfSourceMetagenerationNotMatch", }); internal_static_google_storage_v2_RewriteResponse_descriptor = - getDescriptor().getMessageTypes().get(24); + getDescriptor().getMessageTypes().get(26); internal_static_google_storage_v2_RewriteResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_RewriteResponse_descriptor, @@ -1170,7 +1228,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "TotalBytesRewritten", "ObjectSize", "Done", "RewriteToken", "Resource", }); internal_static_google_storage_v2_StartResumableWriteRequest_descriptor = - getDescriptor().getMessageTypes().get(25); + getDescriptor().getMessageTypes().get(27); internal_static_google_storage_v2_StartResumableWriteRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_StartResumableWriteRequest_descriptor, @@ -1178,7 +1236,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "WriteObjectSpec", "CommonObjectRequestParams", }); internal_static_google_storage_v2_StartResumableWriteResponse_descriptor = - getDescriptor().getMessageTypes().get(26); + getDescriptor().getMessageTypes().get(28); internal_static_google_storage_v2_StartResumableWriteResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_StartResumableWriteResponse_descriptor, @@ -1186,7 +1244,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "UploadId", }); internal_static_google_storage_v2_UpdateObjectRequest_descriptor = - getDescriptor().getMessageTypes().get(27); + getDescriptor().getMessageTypes().get(29); internal_static_google_storage_v2_UpdateObjectRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_UpdateObjectRequest_descriptor, @@ -1205,7 +1263,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "IfMetagenerationNotMatch", }); internal_static_google_storage_v2_GetServiceAccountRequest_descriptor = - getDescriptor().getMessageTypes().get(28); + getDescriptor().getMessageTypes().get(30); internal_static_google_storage_v2_GetServiceAccountRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_GetServiceAccountRequest_descriptor, @@ -1213,7 +1271,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Project", }); internal_static_google_storage_v2_CreateHmacKeyRequest_descriptor = - getDescriptor().getMessageTypes().get(29); + getDescriptor().getMessageTypes().get(31); internal_static_google_storage_v2_CreateHmacKeyRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_CreateHmacKeyRequest_descriptor, @@ -1221,7 +1279,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Project", "ServiceAccountEmail", }); internal_static_google_storage_v2_CreateHmacKeyResponse_descriptor = - getDescriptor().getMessageTypes().get(30); + getDescriptor().getMessageTypes().get(32); internal_static_google_storage_v2_CreateHmacKeyResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_CreateHmacKeyResponse_descriptor, @@ -1229,7 +1287,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Metadata", "SecretKeyBytes", }); internal_static_google_storage_v2_DeleteHmacKeyRequest_descriptor = - getDescriptor().getMessageTypes().get(31); + getDescriptor().getMessageTypes().get(33); internal_static_google_storage_v2_DeleteHmacKeyRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_DeleteHmacKeyRequest_descriptor, @@ -1237,7 +1295,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "AccessId", "Project", }); internal_static_google_storage_v2_GetHmacKeyRequest_descriptor = - getDescriptor().getMessageTypes().get(32); + getDescriptor().getMessageTypes().get(34); internal_static_google_storage_v2_GetHmacKeyRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_GetHmacKeyRequest_descriptor, @@ -1245,7 +1303,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "AccessId", "Project", }); internal_static_google_storage_v2_ListHmacKeysRequest_descriptor = - getDescriptor().getMessageTypes().get(33); + getDescriptor().getMessageTypes().get(35); internal_static_google_storage_v2_ListHmacKeysRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ListHmacKeysRequest_descriptor, @@ -1253,7 +1311,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Project", "PageSize", "PageToken", "ServiceAccountEmail", "ShowDeletedKeys", }); internal_static_google_storage_v2_ListHmacKeysResponse_descriptor = - getDescriptor().getMessageTypes().get(34); + getDescriptor().getMessageTypes().get(36); internal_static_google_storage_v2_ListHmacKeysResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ListHmacKeysResponse_descriptor, @@ -1261,7 +1319,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "HmacKeys", "NextPageToken", }); internal_static_google_storage_v2_UpdateHmacKeyRequest_descriptor = - getDescriptor().getMessageTypes().get(35); + getDescriptor().getMessageTypes().get(37); internal_static_google_storage_v2_UpdateHmacKeyRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_UpdateHmacKeyRequest_descriptor, @@ -1269,7 +1327,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "HmacKey", "UpdateMask", }); internal_static_google_storage_v2_CommonObjectRequestParams_descriptor = - getDescriptor().getMessageTypes().get(36); + getDescriptor().getMessageTypes().get(38); internal_static_google_storage_v2_CommonObjectRequestParams_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_CommonObjectRequestParams_descriptor, @@ -1277,12 +1335,12 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "EncryptionAlgorithm", "EncryptionKeyBytes", "EncryptionKeySha256Bytes", }); internal_static_google_storage_v2_ServiceConstants_descriptor = - getDescriptor().getMessageTypes().get(37); + getDescriptor().getMessageTypes().get(39); internal_static_google_storage_v2_ServiceConstants_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ServiceConstants_descriptor, new java.lang.String[] {}); - internal_static_google_storage_v2_Bucket_descriptor = getDescriptor().getMessageTypes().get(38); + internal_static_google_storage_v2_Bucket_descriptor = getDescriptor().getMessageTypes().get(40); internal_static_google_storage_v2_Bucket_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Bucket_descriptor, @@ -1460,7 +1518,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Key", "Value", }); internal_static_google_storage_v2_BucketAccessControl_descriptor = - getDescriptor().getMessageTypes().get(39); + getDescriptor().getMessageTypes().get(41); internal_static_google_storage_v2_BucketAccessControl_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_BucketAccessControl_descriptor, @@ -1468,7 +1526,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Role", "Id", "Entity", "EntityId", "Etag", "Email", "Domain", "ProjectTeam", }); internal_static_google_storage_v2_ChecksummedData_descriptor = - getDescriptor().getMessageTypes().get(40); + getDescriptor().getMessageTypes().get(42); internal_static_google_storage_v2_ChecksummedData_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ChecksummedData_descriptor, @@ -1476,7 +1534,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Content", "Crc32C", "Crc32C", }); internal_static_google_storage_v2_ObjectChecksums_descriptor = - getDescriptor().getMessageTypes().get(41); + getDescriptor().getMessageTypes().get(43); internal_static_google_storage_v2_ObjectChecksums_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ObjectChecksums_descriptor, @@ -1484,7 +1542,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Crc32C", "Md5Hash", "Crc32C", }); internal_static_google_storage_v2_HmacKeyMetadata_descriptor = - getDescriptor().getMessageTypes().get(42); + getDescriptor().getMessageTypes().get(44); internal_static_google_storage_v2_HmacKeyMetadata_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_HmacKeyMetadata_descriptor, @@ -1499,7 +1557,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Etag", }); internal_static_google_storage_v2_Notification_descriptor = - getDescriptor().getMessageTypes().get(43); + getDescriptor().getMessageTypes().get(45); internal_static_google_storage_v2_Notification_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Notification_descriptor, @@ -1521,14 +1579,14 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Key", "Value", }); internal_static_google_storage_v2_CustomerEncryption_descriptor = - getDescriptor().getMessageTypes().get(44); + getDescriptor().getMessageTypes().get(46); internal_static_google_storage_v2_CustomerEncryption_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_CustomerEncryption_descriptor, new java.lang.String[] { "EncryptionAlgorithm", "KeySha256Bytes", }); - internal_static_google_storage_v2_Object_descriptor = getDescriptor().getMessageTypes().get(45); + internal_static_google_storage_v2_Object_descriptor = getDescriptor().getMessageTypes().get(47); internal_static_google_storage_v2_Object_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Object_descriptor, @@ -1571,7 +1629,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Key", "Value", }); internal_static_google_storage_v2_ObjectAccessControl_descriptor = - getDescriptor().getMessageTypes().get(46); + getDescriptor().getMessageTypes().get(48); internal_static_google_storage_v2_ObjectAccessControl_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ObjectAccessControl_descriptor, @@ -1579,7 +1637,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Role", "Id", "Entity", "EntityId", "Etag", "Email", "Domain", "ProjectTeam", }); internal_static_google_storage_v2_ListObjectsResponse_descriptor = - getDescriptor().getMessageTypes().get(47); + getDescriptor().getMessageTypes().get(49); internal_static_google_storage_v2_ListObjectsResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ListObjectsResponse_descriptor, @@ -1587,7 +1645,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Objects", "Prefixes", "NextPageToken", }); internal_static_google_storage_v2_ProjectTeam_descriptor = - getDescriptor().getMessageTypes().get(48); + getDescriptor().getMessageTypes().get(50); internal_static_google_storage_v2_ProjectTeam_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ProjectTeam_descriptor, @@ -1595,14 +1653,14 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ProjectNumber", "Team", }); internal_static_google_storage_v2_ServiceAccount_descriptor = - getDescriptor().getMessageTypes().get(49); + getDescriptor().getMessageTypes().get(51); internal_static_google_storage_v2_ServiceAccount_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ServiceAccount_descriptor, new java.lang.String[] { "EmailAddress", }); - internal_static_google_storage_v2_Owner_descriptor = getDescriptor().getMessageTypes().get(50); + internal_static_google_storage_v2_Owner_descriptor = getDescriptor().getMessageTypes().get(52); internal_static_google_storage_v2_Owner_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_Owner_descriptor, @@ -1610,7 +1668,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Entity", "EntityId", }); internal_static_google_storage_v2_ContentRange_descriptor = - getDescriptor().getMessageTypes().get(51); + getDescriptor().getMessageTypes().get(53); internal_static_google_storage_v2_ContentRange_fieldAccessorTable = new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_storage_v2_ContentRange_descriptor, @@ -1626,11 +1684,13 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { registry.add(com.google.api.ResourceProto.resource); registry.add(com.google.api.ResourceProto.resourceDefinition); registry.add(com.google.api.ResourceProto.resourceReference); + registry.add(com.google.api.RoutingProto.routing); com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( descriptor, registry); com.google.api.ClientProto.getDescriptor(); com.google.api.FieldBehaviorProto.getDescriptor(); com.google.api.ResourceProto.getDescriptor(); + com.google.api.RoutingProto.getDescriptor(); com.google.iam.v1.IamPolicyProto.getDescriptor(); com.google.iam.v1.PolicyProto.getDescriptor(); com.google.protobuf.EmptyProto.getDescriptor(); diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateHmacKeyRequest.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateHmacKeyRequest.java index bb3245c69..49084ee4e 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateHmacKeyRequest.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateHmacKeyRequest.java @@ -23,6 +23,9 @@ * *
  * Request object to update an HMAC key state.
+ * HmacKeyMetadata.state is required and the only writable field in
+ * UpdateHmacKey operation. Specifying fields other than state will result in an
+ * error.
  * 
* * Protobuf type {@code google.storage.v2.UpdateHmacKeyRequest} @@ -203,6 +206,8 @@ public com.google.storage.v2.HmacKeyMetadataOrBuilder getHmacKeyOrBuilder() { * *
    * Update mask for hmac_key.
+   * Not specifying any fields will mean only the `state` field is updated to
+   * the value specified in `hmac_key`.
    * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -218,6 +223,8 @@ public boolean hasUpdateMask() { * *
    * Update mask for hmac_key.
+   * Not specifying any fields will mean only the `state` field is updated to
+   * the value specified in `hmac_key`.
    * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -233,6 +240,8 @@ public com.google.protobuf.FieldMask getUpdateMask() { * *
    * Update mask for hmac_key.
+   * Not specifying any fields will mean only the `state` field is updated to
+   * the value specified in `hmac_key`.
    * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -425,6 +434,9 @@ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.Build * *
    * Request object to update an HMAC key state.
+   * HmacKeyMetadata.state is required and the only writable field in
+   * UpdateHmacKey operation. Specifying fields other than state will result in an
+   * error.
    * 
* * Protobuf type {@code google.storage.v2.UpdateHmacKeyRequest} @@ -839,6 +851,8 @@ public com.google.storage.v2.HmacKeyMetadataOrBuilder getHmacKeyOrBuilder() { * *
      * Update mask for hmac_key.
+     * Not specifying any fields will mean only the `state` field is updated to
+     * the value specified in `hmac_key`.
      * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -853,6 +867,8 @@ public boolean hasUpdateMask() { * *
      * Update mask for hmac_key.
+     * Not specifying any fields will mean only the `state` field is updated to
+     * the value specified in `hmac_key`.
      * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -873,6 +889,8 @@ public com.google.protobuf.FieldMask getUpdateMask() { * *
      * Update mask for hmac_key.
+     * Not specifying any fields will mean only the `state` field is updated to
+     * the value specified in `hmac_key`.
      * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -895,6 +913,8 @@ public Builder setUpdateMask(com.google.protobuf.FieldMask value) { * *
      * Update mask for hmac_key.
+     * Not specifying any fields will mean only the `state` field is updated to
+     * the value specified in `hmac_key`.
      * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -914,6 +934,8 @@ public Builder setUpdateMask(com.google.protobuf.FieldMask.Builder builderForVal * *
      * Update mask for hmac_key.
+     * Not specifying any fields will mean only the `state` field is updated to
+     * the value specified in `hmac_key`.
      * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -938,6 +960,8 @@ public Builder mergeUpdateMask(com.google.protobuf.FieldMask value) { * *
      * Update mask for hmac_key.
+     * Not specifying any fields will mean only the `state` field is updated to
+     * the value specified in `hmac_key`.
      * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -958,6 +982,8 @@ public Builder clearUpdateMask() { * *
      * Update mask for hmac_key.
+     * Not specifying any fields will mean only the `state` field is updated to
+     * the value specified in `hmac_key`.
      * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -972,6 +998,8 @@ public com.google.protobuf.FieldMask.Builder getUpdateMaskBuilder() { * *
      * Update mask for hmac_key.
+     * Not specifying any fields will mean only the `state` field is updated to
+     * the value specified in `hmac_key`.
      * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -990,6 +1018,8 @@ public com.google.protobuf.FieldMaskOrBuilder getUpdateMaskOrBuilder() { * *
      * Update mask for hmac_key.
+     * Not specifying any fields will mean only the `state` field is updated to
+     * the value specified in `hmac_key`.
      * 
* * .google.protobuf.FieldMask update_mask = 3; diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateHmacKeyRequestOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateHmacKeyRequestOrBuilder.java index 5557204b1..6dddfc06e 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateHmacKeyRequestOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/UpdateHmacKeyRequestOrBuilder.java @@ -78,6 +78,8 @@ public interface UpdateHmacKeyRequestOrBuilder * *
    * Update mask for hmac_key.
+   * Not specifying any fields will mean only the `state` field is updated to
+   * the value specified in `hmac_key`.
    * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -90,6 +92,8 @@ public interface UpdateHmacKeyRequestOrBuilder * *
    * Update mask for hmac_key.
+   * Not specifying any fields will mean only the `state` field is updated to
+   * the value specified in `hmac_key`.
    * 
* * .google.protobuf.FieldMask update_mask = 3; @@ -102,6 +106,8 @@ public interface UpdateHmacKeyRequestOrBuilder * *
    * Update mask for hmac_key.
+   * Not specifying any fields will mean only the `state` field is updated to
+   * the value specified in `hmac_key`.
    * 
* * .google.protobuf.FieldMask update_mask = 3; diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpec.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpec.java index 0081affc5..18916a0f6 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpec.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpec.java @@ -117,6 +117,12 @@ private WriteObjectSpec( predefinedAcl_ = s; break; } + case 64: + { + bitField0_ |= 0x00000010; + objectSize_ = input.readInt64(); + break; + } default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { @@ -399,6 +405,51 @@ public long getIfMetagenerationNotMatch() { return ifMetagenerationNotMatch_; } + public static final int OBJECT_SIZE_FIELD_NUMBER = 8; + private long objectSize_; + /** + * + * + *
+   * The expected final object size being uploaded.
+   * If this value is set, closing the stream after writing fewer or more than
+   * `object_size` bytes will result in an OUT_OF_RANGE error.
+   * This situation is considered a client error, and if such an error occurs
+   * you must start the upload over from scratch, this time sending the correct
+   * number of bytes.
+   * The `object_size` value is ignored for one-shot (non-resumable) writes.
+   * 
+ * + * optional int64 object_size = 8; + * + * @return Whether the objectSize field is set. + */ + @java.lang.Override + public boolean hasObjectSize() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * + * + *
+   * The expected final object size being uploaded.
+   * If this value is set, closing the stream after writing fewer or more than
+   * `object_size` bytes will result in an OUT_OF_RANGE error.
+   * This situation is considered a client error, and if such an error occurs
+   * you must start the upload over from scratch, this time sending the correct
+   * number of bytes.
+   * The `object_size` value is ignored for one-shot (non-resumable) writes.
+   * 
+ * + * optional int64 object_size = 8; + * + * @return The objectSize. + */ + @java.lang.Override + public long getObjectSize() { + return objectSize_; + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -431,6 +482,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(predefinedAcl_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 7, predefinedAcl_); } + if (((bitField0_ & 0x00000010) != 0)) { + output.writeInt64(8, objectSize_); + } unknownFields.writeTo(output); } @@ -458,6 +512,9 @@ public int getSerializedSize() { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(predefinedAcl_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, predefinedAcl_); } + if (((bitField0_ & 0x00000010) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeInt64Size(8, objectSize_); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -494,6 +551,10 @@ public boolean equals(final java.lang.Object obj) { if (hasIfMetagenerationNotMatch()) { if (getIfMetagenerationNotMatch() != other.getIfMetagenerationNotMatch()) return false; } + if (hasObjectSize() != other.hasObjectSize()) return false; + if (hasObjectSize()) { + if (getObjectSize() != other.getObjectSize()) return false; + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -527,6 +588,10 @@ public int hashCode() { hash = (37 * hash) + IF_METAGENERATION_NOT_MATCH_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getIfMetagenerationNotMatch()); } + if (hasObjectSize()) { + hash = (37 * hash) + OBJECT_SIZE_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getObjectSize()); + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; @@ -687,6 +752,8 @@ public Builder clear() { bitField0_ = (bitField0_ & ~0x00000004); ifMetagenerationNotMatch_ = 0L; bitField0_ = (bitField0_ & ~0x00000008); + objectSize_ = 0L; + bitField0_ = (bitField0_ & ~0x00000010); return this; } @@ -738,6 +805,10 @@ public com.google.storage.v2.WriteObjectSpec buildPartial() { result.ifMetagenerationNotMatch_ = ifMetagenerationNotMatch_; to_bitField0_ |= 0x00000008; } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.objectSize_ = objectSize_; + to_bitField0_ |= 0x00000010; + } result.bitField0_ = to_bitField0_; onBuilt(); return result; @@ -807,6 +878,9 @@ public Builder mergeFrom(com.google.storage.v2.WriteObjectSpec other) { if (other.hasIfMetagenerationNotMatch()) { setIfMetagenerationNotMatch(other.getIfMetagenerationNotMatch()); } + if (other.hasObjectSize()) { + setObjectSize(other.getObjectSize()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -1429,6 +1503,97 @@ public Builder clearIfMetagenerationNotMatch() { return this; } + private long objectSize_; + /** + * + * + *
+     * The expected final object size being uploaded.
+     * If this value is set, closing the stream after writing fewer or more than
+     * `object_size` bytes will result in an OUT_OF_RANGE error.
+     * This situation is considered a client error, and if such an error occurs
+     * you must start the upload over from scratch, this time sending the correct
+     * number of bytes.
+     * The `object_size` value is ignored for one-shot (non-resumable) writes.
+     * 
+ * + * optional int64 object_size = 8; + * + * @return Whether the objectSize field is set. + */ + @java.lang.Override + public boolean hasObjectSize() { + return ((bitField0_ & 0x00000010) != 0); + } + /** + * + * + *
+     * The expected final object size being uploaded.
+     * If this value is set, closing the stream after writing fewer or more than
+     * `object_size` bytes will result in an OUT_OF_RANGE error.
+     * This situation is considered a client error, and if such an error occurs
+     * you must start the upload over from scratch, this time sending the correct
+     * number of bytes.
+     * The `object_size` value is ignored for one-shot (non-resumable) writes.
+     * 
+ * + * optional int64 object_size = 8; + * + * @return The objectSize. + */ + @java.lang.Override + public long getObjectSize() { + return objectSize_; + } + /** + * + * + *
+     * The expected final object size being uploaded.
+     * If this value is set, closing the stream after writing fewer or more than
+     * `object_size` bytes will result in an OUT_OF_RANGE error.
+     * This situation is considered a client error, and if such an error occurs
+     * you must start the upload over from scratch, this time sending the correct
+     * number of bytes.
+     * The `object_size` value is ignored for one-shot (non-resumable) writes.
+     * 
+ * + * optional int64 object_size = 8; + * + * @param value The objectSize to set. + * @return This builder for chaining. + */ + public Builder setObjectSize(long value) { + bitField0_ |= 0x00000010; + objectSize_ = value; + onChanged(); + return this; + } + /** + * + * + *
+     * The expected final object size being uploaded.
+     * If this value is set, closing the stream after writing fewer or more than
+     * `object_size` bytes will result in an OUT_OF_RANGE error.
+     * This situation is considered a client error, and if such an error occurs
+     * you must start the upload over from scratch, this time sending the correct
+     * number of bytes.
+     * The `object_size` value is ignored for one-shot (non-resumable) writes.
+     * 
+ * + * optional int64 object_size = 8; + * + * @return This builder for chaining. + */ + public Builder clearObjectSize() { + bitField0_ = (bitField0_ & ~0x00000010); + objectSize_ = 0L; + onChanged(); + return this; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpecOrBuilder.java b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpecOrBuilder.java index 1b455397d..dd6376acc 100644 --- a/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpecOrBuilder.java +++ b/proto-google-cloud-storage-v2/src/main/java/com/google/storage/v2/WriteObjectSpecOrBuilder.java @@ -200,4 +200,41 @@ public interface WriteObjectSpecOrBuilder * @return The ifMetagenerationNotMatch. */ long getIfMetagenerationNotMatch(); + + /** + * + * + *
+   * The expected final object size being uploaded.
+   * If this value is set, closing the stream after writing fewer or more than
+   * `object_size` bytes will result in an OUT_OF_RANGE error.
+   * This situation is considered a client error, and if such an error occurs
+   * you must start the upload over from scratch, this time sending the correct
+   * number of bytes.
+   * The `object_size` value is ignored for one-shot (non-resumable) writes.
+   * 
+ * + * optional int64 object_size = 8; + * + * @return Whether the objectSize field is set. + */ + boolean hasObjectSize(); + /** + * + * + *
+   * The expected final object size being uploaded.
+   * If this value is set, closing the stream after writing fewer or more than
+   * `object_size` bytes will result in an OUT_OF_RANGE error.
+   * This situation is considered a client error, and if such an error occurs
+   * you must start the upload over from scratch, this time sending the correct
+   * number of bytes.
+   * The `object_size` value is ignored for one-shot (non-resumable) writes.
+   * 
+ * + * optional int64 object_size = 8; + * + * @return The objectSize. + */ + long getObjectSize(); } diff --git a/proto-google-cloud-storage-v2/src/main/proto/google/storage/v2/storage.proto b/proto-google-cloud-storage-v2/src/main/proto/google/storage/v2/storage.proto index 4b0fb49aa..577463db5 100644 --- a/proto-google-cloud-storage-v2/src/main/proto/google/storage/v2/storage.proto +++ b/proto-google-cloud-storage-v2/src/main/proto/google/storage/v2/storage.proto @@ -19,6 +19,7 @@ package google.storage.v2; import "google/api/client.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/api/routing.proto"; import "google/iam/v1/iam_policy.proto"; import "google/iam/v1/policy.proto"; import "google/protobuf/empty.proto"; @@ -67,11 +68,23 @@ service Storage { // Permanently deletes an empty bucket. rpc DeleteBucket(DeleteBucketRequest) returns (google.protobuf.Empty) { + option (google.api.routing) = { + routing_parameters { + field: "name" + path_template: "{bucket=**}" + } + }; option (google.api.method_signature) = "name"; } // Returns metadata for the specified bucket. rpc GetBucket(GetBucketRequest) returns (Bucket) { + option (google.api.routing) = { + routing_parameters { + field: "name" + path_template: "{bucket=**}" + } + }; option (google.api.method_signature) = "name"; } @@ -87,37 +100,91 @@ service Storage { // Locks retention policy on a bucket. rpc LockBucketRetentionPolicy(LockBucketRetentionPolicyRequest) returns (Bucket) { + option (google.api.routing) = { + routing_parameters { + field: "bucket" + path_template: "{bucket=**}" + } + }; option (google.api.method_signature) = "bucket"; } - // Gets the IAM policy for a specified bucket. + // Gets the IAM policy for a specified bucket or object. rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) returns (google.iam.v1.Policy) { + option (google.api.routing) = { + routing_parameters { + field: "resource" + path_template: "{bucket=**}" + } + routing_parameters { + field: "resource" + path_template: "{bucket=projects/*/buckets/*}/objects/**" + } + }; option (google.api.method_signature) = "resource"; } - // Updates an IAM policy for the specified bucket. + // Updates an IAM policy for the specified bucket or object. rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) returns (google.iam.v1.Policy) { + option (google.api.routing) = { + routing_parameters { + field: "resource" + path_template: "{bucket=**}" + } + routing_parameters { + field: "resource" + path_template: "{bucket=projects/*/buckets/*}/objects/**" + } + }; option (google.api.method_signature) = "resource,policy"; } - // Tests a set of permissions on the given bucket to see which, if + // Tests a set of permissions on the given bucket or object to see which, if // any, are held by the caller. rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) returns (google.iam.v1.TestIamPermissionsResponse) { + option (google.api.routing) = { + routing_parameters { + field: "resource" + path_template: "{bucket=**}" + } + routing_parameters { + field: "resource" + path_template: "{bucket=projects/*/buckets/*}/objects/**" + } + }; option (google.api.method_signature) = "resource,permissions"; } // Updates a bucket. Equivalent to JSON API's storage.buckets.patch method. rpc UpdateBucket(UpdateBucketRequest) returns (Bucket) { + option (google.api.routing) = { + routing_parameters { + field: "bucket.name" + path_template: "{bucket=**}" + } + }; option (google.api.method_signature) = "bucket,update_mask"; } // Permanently deletes a notification subscription. rpc DeleteNotification(DeleteNotificationRequest) returns (google.protobuf.Empty) { + option (google.api.routing) = { + routing_parameters { + field: "name" + path_template: "{bucket=projects/*/buckets/*}/**" + } + }; option (google.api.method_signature) = "name"; } // View a notification config. rpc GetNotification(GetNotificationRequest) returns (Notification) { + option (google.api.routing) = { + routing_parameters { + field: "name" + path_template: "{bucket=projects/*/buckets/*}/**" + } + }; option (google.api.method_signature) = "name"; } @@ -126,35 +193,81 @@ service Storage { // Pub/Sub topics. // See https://cloud.google.com/storage/docs/pubsub-notifications. rpc CreateNotification(CreateNotificationRequest) returns (Notification) { + option (google.api.routing) = { + routing_parameters { + field: "parent" + path_template: "{bucket=**}" + } + }; option (google.api.method_signature) = "parent,notification"; } // Retrieves a list of notification subscriptions for a given bucket. rpc ListNotifications(ListNotificationsRequest) returns (ListNotificationsResponse) { + option (google.api.routing) = { + routing_parameters { + field: "parent" + path_template: "{bucket=**}" + } + }; option (google.api.method_signature) = "parent"; } // Concatenates a list of existing objects into a new object in the same // bucket. rpc ComposeObject(ComposeObjectRequest) returns (Object) { + option (google.api.routing) = { + routing_parameters { + field: "destination.bucket" + path_template: "{bucket=**}" + } + }; } // Deletes an object and its metadata. Deletions are permanent if versioning - // is not enabled for the bucket, or if the `generation` parameter - // is used. + // is not enabled for the bucket, or if the `generation` parameter is used. rpc DeleteObject(DeleteObjectRequest) returns (google.protobuf.Empty) { + option (google.api.routing) = { + routing_parameters { + field: "bucket" + path_template: "{bucket=**}" + } + }; option (google.api.method_signature) = "bucket,object"; option (google.api.method_signature) = "bucket,object,generation"; } + // Cancels an in-progress resumable upload. + rpc CancelResumableWrite(CancelResumableWriteRequest) returns (CancelResumableWriteResponse) { + option (google.api.routing) = { + routing_parameters { + field: "upload_id" + path_template: "{bucket=projects/*/buckets/*}/**" + } + }; + option (google.api.method_signature) = "upload_id"; + } + // Retrieves an object's metadata. rpc GetObject(GetObjectRequest) returns (Object) { + option (google.api.routing) = { + routing_parameters { + field: "bucket" + path_template: "{bucket=**}" + } + }; option (google.api.method_signature) = "bucket,object"; option (google.api.method_signature) = "bucket,object,generation"; } // Reads an object's data. rpc ReadObject(ReadObjectRequest) returns (stream ReadObjectResponse) { + option (google.api.routing) = { + routing_parameters { + field: "bucket" + path_template: "{bucket=**}" + } + }; option (google.api.method_signature) = "bucket,object"; option (google.api.method_signature) = "bucket,object,generation"; } @@ -162,6 +275,12 @@ service Storage { // Updates an object's metadata. // Equivalent to JSON API's storage.objects.patch. rpc UpdateObject(UpdateObjectRequest) returns (Object) { + option (google.api.routing) = { + routing_parameters { + field: "object.bucket" + path_template: "{bucket=**}" + } + }; option (google.api.method_signature) = "object,update_mask"; } @@ -218,22 +337,53 @@ service Storage { // status, with a WriteObjectResponse containing the finalized object's // metadata. rpc WriteObject(stream WriteObjectRequest) returns (WriteObjectResponse) { + option (google.api.routing) = { + routing_parameters { + field: "write_object_spec.resource.bucket" + path_template: "{bucket=**}" + } + routing_parameters { + field: "upload_id" + path_template: "{bucket=projects/*/buckets/*}/**" + } + }; } // Retrieves a list of objects matching the criteria. rpc ListObjects(ListObjectsRequest) returns (ListObjectsResponse) { + option (google.api.routing) = { + routing_parameters { + field: "parent" + path_template: "{bucket=**}" + } + }; option (google.api.method_signature) = "parent"; } // Rewrites a source object to a destination object. Optionally overrides // metadata. rpc RewriteObject(RewriteObjectRequest) returns (RewriteResponse) { + option (google.api.routing) = { + routing_parameters { + field: "source_bucket" + } + routing_parameters { + field: "destination_bucket" + path_template: "{bucket=**}" + } + }; } // Starts a resumable write. How long the write operation remains valid, and // what happens when the write operation becomes invalid, are // service-dependent. rpc StartResumableWrite(StartResumableWriteRequest) returns (StartResumableWriteResponse) { + option (google.api.routing) = { + routing_parameters { + field: "write_object_spec.resource.bucket" + path_template: "{bucket=**}" + } + }; } // Determines the `persisted_size` for an object that is being written, which @@ -250,6 +400,12 @@ service Storage { // object name, the sequence of returned `persisted_size` values will be // non-decreasing. rpc QueryWriteStatus(QueryWriteStatusRequest) returns (QueryWriteStatusResponse) { + option (google.api.routing) = { + routing_parameters { + field: "upload_id" + path_template: "{bucket=projects/*/buckets/*}/**" + } + }; option (google.api.method_signature) = "upload_id"; } @@ -578,7 +734,7 @@ message ComposeObjectRequest { } // Message for deleting an object. -// Either `bucket` and `object` *or* `upload_id` **must** be set (but not both). +// `bucket` and `object` **must** be set. message DeleteObjectRequest { // Required. Name of the bucket in which the object resides. string bucket = 1 [(google.api.field_behavior) = REQUIRED]; @@ -586,11 +742,6 @@ message DeleteObjectRequest { // Required. The name of the object to delete (when not using a resumable write). string object = 2 [(google.api.field_behavior) = REQUIRED]; - // The resumable upload_id of the object to delete (when deleting an - // in-progress resumable write). This should be copied from the `upload_id` - // field of `StartResumableWriteResponse`. - string upload_id = 3; - // If present, permanently deletes a specific revision of this object (as // opposed to the latest version, the default). int64 generation = 4; @@ -618,6 +769,20 @@ message DeleteObjectRequest { CommonObjectRequestParams common_object_request_params = 10; } +// Message for canceling an in-progress resumable upload. +// `upload_id` **must** be set. +message CancelResumableWriteRequest { + // Required. The upload_id of the resumable upload to cancel. This should be copied + // from the `upload_id` field of `StartResumableWriteResponse`. + string upload_id = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Empty response message for canceling an in-progress resumable upload, will be +// extended as needed. +message CancelResumableWriteResponse { + +} + // Request message for ReadObject. message ReadObjectRequest { // The name of the bucket containing the object to read. @@ -772,6 +937,17 @@ message WriteObjectSpec { // Makes the operation conditional on whether the object's current // metageneration does not match the given value. optional int64 if_metageneration_not_match = 6; + + // The expected final object size being uploaded. + // If this value is set, closing the stream after writing fewer or more than + // `object_size` bytes will result in an OUT_OF_RANGE error. + // + // This situation is considered a client error, and if such an error occurs + // you must start the upload over from scratch, this time sending the correct + // number of bytes. + // + // The `object_size` value is ignored for one-shot (non-resumable) writes. + optional int64 object_size = 8; } // Request message for WriteObject. @@ -937,16 +1113,16 @@ message QueryWriteStatusResponse { // encryption_key_sha256_bytes fields of the // common_object_request_params.customer_encryption field. message RewriteObjectRequest { - // Immutable. The name of the destination object. Nearly any sequence of unicode - // characters is valid. See - // [Guidelines](https://cloud.google.com/storage/docs/naming-objects). + // Immutable. The name of the destination object. + // See the + // [Naming Guidelines](https://cloud.google.com/storage/docs/naming-objects). // Example: `test.txt` // The `name` field by itself does not uniquely identify a Cloud Storage // object. A Cloud Storage object is uniquely identified by the tuple of // (bucket, object, generation). string destination_name = 24 [(google.api.field_behavior) = IMMUTABLE]; - // Immutable. The name of the bucket containing The name of the destination object. + // Immutable. The name of the bucket containing the destination object. string destination_bucket = 25 [ (google.api.field_behavior) = IMMUTABLE, (google.api.resource_reference) = { @@ -1147,7 +1323,8 @@ message UpdateObjectRequest { // Request message for GetServiceAccount. message GetServiceAccountRequest { - // Required. Project ID. + // Required. Project ID, in the format of "projects/". + // can be the project ID or project number. string project = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1158,7 +1335,9 @@ message GetServiceAccountRequest { // Request message for CreateHmacKey. message CreateHmacKeyRequest { - // Required. The project that the HMAC-owning service account lives in. + // Required. The project that the HMAC-owning service account lives in, in the format of + // "projects/". + // can be the project ID or project number. string project = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1185,7 +1364,9 @@ message DeleteHmacKeyRequest { // Required. The identifying key for the HMAC to delete. string access_id = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. The project id the HMAC key lies in. + // Required. The project that owns the HMAC key, in the format of + // "projects/". + // can be the project ID or project number. string project = 2 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1199,7 +1380,9 @@ message GetHmacKeyRequest { // Required. The identifying key for the HMAC to delete. string access_id = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. The project id the HMAC key lies in. + // Required. The project the HMAC key lies in, in the format of + // "projects/". + // can be the project ID or project number. string project = 2 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1210,7 +1393,9 @@ message GetHmacKeyRequest { // Request to fetch a list of HMAC keys under a given project. message ListHmacKeysRequest { - // Required. The project id to list HMAC keys for. + // Required. The project to list HMAC keys for, in the format of + // "projects/". + // can be the project ID or project number. string project = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1242,6 +1427,9 @@ message ListHmacKeysResponse { } // Request object to update an HMAC key state. +// HmacKeyMetadata.state is required and the only writable field in +// UpdateHmacKey operation. Specifying fields other than state will result in an +// error. message UpdateHmacKeyRequest { // Required. The HMAC key to update. // If present, the hmac_key's `id` field will be used to identify the key. @@ -1250,6 +1438,8 @@ message UpdateHmacKeyRequest { HmacKeyMetadata hmac_key = 1 [(google.api.field_behavior) = REQUIRED]; // Update mask for hmac_key. + // Not specifying any fields will mean only the `state` field is updated to + // the value specified in `hmac_key`. google.protobuf.FieldMask update_mask = 3; } @@ -1595,7 +1785,9 @@ message Bucket { // only be performed if the etag matches that of the bucket. string etag = 29; - // Immutable. The project which owns this bucket. + // Immutable. The project which owns this bucket, in the format of + // "projects/". + // can be the project ID or project number. string project = 3 [ (google.api.field_behavior) = IMMUTABLE, (google.api.resource_reference) = { @@ -1803,28 +1995,36 @@ message ObjectChecksums { // Hmac Key Metadata, which includes all information other than the secret. message HmacKeyMetadata { - // Resource name ID of the key in the format /. - string id = 1; + // Immutable. Resource name ID of the key in the format + // /. + // can be the project ID or project number. + string id = 1 [(google.api.field_behavior) = IMMUTABLE]; - // Globally unique id for keys. - string access_id = 2; + // Immutable. Globally unique id for keys. + string access_id = 2 [(google.api.field_behavior) = IMMUTABLE]; - // The project ID that the hmac key is contained in. - string project = 3 [(google.api.resource_reference) = { - type: "cloudresourcemanager.googleapis.com/Project" - }]; + // Immutable. Identifies the project that owns the service account of the specified HMAC + // key, in the format "projects/". can + // be the project ID or project number. + string project = 3 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "cloudresourcemanager.googleapis.com/Project" + } + ]; - // Email of the service account the key authenticates as. - string service_account_email = 4; + // Output only. Email of the service account the key authenticates as. + string service_account_email = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; // State of the key. One of ACTIVE, INACTIVE, or DELETED. + // Writable, can be updated by UpdateHmacKey operation. string state = 5; - // The creation time of the HMAC key. - google.protobuf.Timestamp create_time = 6; + // Output only. The creation time of the HMAC key. + google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - // The last modification time of the HMAC key metadata. - google.protobuf.Timestamp update_time = 7; + // Output only. The last modification time of the HMAC key metadata. + google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; // The etag of the HMAC key. string etag = 8; @@ -1976,6 +2176,11 @@ message Object { ObjectChecksums checksums = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The modification time of the object metadata. + // Set initially to object creation time and then updated whenever any + // metadata of the object changes. This includes changes made by a requester, + // such as modifying custom metadata, as well as changes made by Cloud Storage + // on behalf of a requester, such as changing the storage class based on an + // Object Lifecycle Configuration. // Attempting to set or update this field will result in a // [FieldViolation][google.rpc.BadRequest.FieldViolation]. google.protobuf.Timestamp update_time = 17 [(google.api.field_behavior) = OUTPUT_ONLY];