| // Copyright 2008 Google Inc. |
| // |
| // 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 |
| // |
| // http://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. |
| |
| package codereview; |
| option java_package = "com.google.codereview"; |
| |
| // Uploads a bundle to start a review process. |
| // |
| |
| message ReplacePatchSet { |
| // Identity of the change to add a replacement patch set to. |
| // |
| required string change_id = 1; |
| |
| // Commit within the bundle to use as the replacement patch set. |
| // |
| required string object_id = 2; |
| } |
| |
| message UploadBundleRequest { |
| // Name of the project this bundle is applied to. |
| // |
| required string dest_project = 10; |
| |
| // Name of the branch the uploader thinks it should |
| // have its tip commit merged into. |
| // |
| required string dest_branch = 11; |
| |
| // Set if this is a partial bundle upload. Remaining |
| // segments can be supplied with UploadBundleContinue. |
| // |
| required bool partial_upload = 12; |
| |
| // The unmodified bundle file, including its text based header. |
| // |
| // The bundle must have exactly 1 ref available, but the |
| // name of the ref does not matter. It only needs to be |
| // a valid ref name ("refs/..." or "HEAD"). |
| // |
| // This may be a partial fragment of the bundle, in which |
| // case the partial_upload flag must be set. |
| // |
| required bytes bundle_data = 13; |
| |
| // An object id known to be in this bundle. Typically only |
| // commits and/or annotated tags would be enumerated here. |
| // |
| repeated string contained_object = 1; |
| |
| // Optional specification of replacement patches for |
| // already existing change records. |
| // |
| repeated ReplacePatchSet replace = 2; |
| |
| // The requested reviewers for this change. If any are |
| // email addresses that the server doesn't recognize, an |
| // UNKNOWN_EMAIL error will be returned, with the |
| // invalid_reviewers field set to the invalid reviewers. |
| repeated string reviewers = 3; |
| |
| // Email addresses to CC for this change. If any are |
| // not properly formed, email addresses, an UNKNOWN_EMAIL |
| // error will be returned, with the invalid_cc field see to |
| // the invalid values. |
| repeated string cc = 4; |
| } |
| |
| message UploadBundleResponse { |
| enum CodeType { |
| RECEIVED = 1; // the bundle is fully uploaded |
| CONTINUE = 4; // client should use UploadBundleContinue |
| |
| UNAUTHORIZED_USER = 7; // the user account is not allowed to upload |
| UNKNOWN_CHANGE = 9; // an invalid replacement was suggested |
| CHANGE_CLOSED = 10; // an invalid replacement was suggested |
| UNKNOWN_EMAIL = 11; // an unknown or invalid email was supplied |
| |
| UNKNOWN_PROJECT = 2; // the project is invalid |
| UNKNOWN_BRANCH = 3; // the branch is invalid |
| UNKNOWN_BUNDLE = 5; // the bundle id is invalid |
| NOT_BUNDLE_OWNER = 6; // the bundle is not your bundle |
| BUNDLE_CLOSED = 8; // the bundle is already uploaded |
| } |
| required CodeType status_code = 10; |
| |
| // Unique identification of this bundle record. |
| // (RECEIVED, CONTINUE) |
| // |
| optional string bundle_id = 11; |
| |
| // Set for UNKNOWN_EMAIL errors. |
| repeated string invalid_reviewers = 12; |
| repeated string invalid_cc = 13; |
| } |
| |
| message UploadBundleContinue { |
| // The bundle identifier supplied by UploadBundleResponse |
| // |
| required string bundle_id = 10; |
| |
| // The segment number of this segment in the bundle. |
| // |
| // The first segment (created by UploadBundleRequest) |
| // is always 1. The first UploadBundleContinue should |
| // use a segment_id of 2. |
| // |
| required int32 segment_id = 11; |
| |
| // Set if this is a partial bundle upload. Remaining |
| // segments can be supplied with UploadBundleContinue. |
| // |
| required bool partial_upload = 12; |
| |
| // The next data segment for the bundle. |
| // |
| // This may be a partial fragment of the bundle, in which |
| // case the partial_upload flag must be set. |
| // |
| optional bytes bundle_data = 13; |
| } |