blob: 3412291047a58cf33f1c352d38db565e8b585b56 [file] [log] [blame]
// Copyright (C) 2018 The Android Open Source Project
//
// 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.
syntax = "proto2";
package devtools.gerritcodereview;
option java_package = "com.google.gerrit.proto";
// Serialized form of com.google.gerrit.entities.Change.Id.
// Next ID: 2
message Change_Id {
required int32 id = 1;
}
// Serialized form of com.google.gerrit.entities.Change.Key.
// Next ID: 2
message Change_Key {
optional string id = 1;
}
// Serialized form of com.google.gerrit.entities.Change.
// Next ID: 25
message Change {
required Change_Id change_id = 1;
optional Change_Key change_key = 2;
optional fixed64 created_on = 4;
optional fixed64 last_updated_on = 5;
optional Account_Id owner_account_id = 7;
optional Branch_NameKey dest = 8;
optional uint32 status = 10;
optional int32 current_patch_set_id = 12;
optional string subject = 13;
optional string topic = 14;
optional string original_subject = 17;
optional string submission_id = 18;
optional bool is_private = 20;
optional bool work_in_progress = 21;
optional bool review_started = 22;
optional Change_Id revert_of = 23;
optional PatchSet_Id cherry_pick_of = 24;
// Deleted fields, should not be reused:
reserved 3; // row_version
reserved 6; // sortkey
reserved 9; // open
reserved 11; // nbrPatchSets
reserved 15; // lastSha1MergeTested
reserved 16; // mergeable
reserved 19; // assignee
reserved 101; // note_db_state
}
// Serialized form of com.google.gerrit.enities.ChangeMessage.
// Next ID: 3
message ChangeMessage_Key {
required Change_Id change_id = 1;
required string uuid = 2;
}
// Serialized form of com.google.gerrit.entities.ChangeMessage.
// Next ID: 8
message ChangeMessage {
required ChangeMessage_Key key = 1;
optional Account_Id author_id = 2;
optional fixed64 written_on = 3;
optional string message = 4;
optional PatchSet_Id patchset = 5;
optional string tag = 6;
optional Account_Id real_author = 7;
}
// Serialized form of com.google.gerrit.entities.PatchSet.Id.
// Next ID: 3
message PatchSet_Id {
required Change_Id change_id = 1;
required int32 id = 2;
}
// Serialized form of com.google.gerrit.entities.PatchSet.
// Next ID: 12
message PatchSet {
required PatchSet_Id id = 1;
optional ObjectId commitId = 2;
optional Account_Id uploader_account_id = 3;
optional fixed64 created_on = 4;
optional string groups = 6;
optional string push_certificate = 8;
optional string description = 9;
optional Account_Id real_uploader_account_id = 10;
optional string branch = 11;
// Deleted fields, should not be reused:
reserved 5; // draft
reserved 7; // pushCertficate
}
// Serialized form of com.google.gerrit.entities.Account.Id.
// Next ID: 2
message Account_Id {
required int32 id = 1;
}
// Serialized form of com.google.gerrit.entities.LabelId.
// Next ID: 2
message LabelId {
required string id = 1;
}
// Serialized form of com.google.gerrit.entities.PatchSetApproval.Key.
// Next ID: 4
message PatchSetApproval_Key {
required PatchSet_Id patch_set_id = 1;
required Account_Id account_id = 2;
required LabelId label_id = 3;
}
// Serialized form of com.google.gerrit.entities.PatchSetApproval.
// Next ID: 11
message PatchSetApproval {
required PatchSetApproval_Key key = 1;
optional int32 value = 2;
optional fixed64 granted = 3;
optional string tag = 6;
optional Account_Id real_account_id = 7;
optional bool post_submit = 8;
optional bool copied = 9;
optional string uuid = 10;
// Deleted fields, should not be reused:
reserved 4; // changeOpen
reserved 5; // changeSortKey
}
// Serialized form of com.google.gerrit.entities.Project.NameKey.
// Next ID: 2
message Project_NameKey {
optional string name = 1;
}
// Serialized form of com.google.gerrit.entities.Branch.NameKey.
// Next ID: 3
message Branch_NameKey {
optional Project_NameKey project = 1;
optional string branch = 2;
}
// Serialized form of org.eclipse.jgit.lib.ObjectId.
// Next ID: 2
message ObjectId {
// Hex string representation of the ID.
optional string name = 1;
}
// Serialized form of a continuation token used for pagination.
// Next ID: 2
message PaginationToken {
optional string next_page_token = 1;
}
// Proto representation of the User preferences classes
// Next ID: 4
message UserPreferences {
// Next ID: 24
message GeneralPreferencesInfo {
// Number of changes to show in a screen.
optional int32 changes_per_page = 1 [default = 25];
// Type of download URL the user prefers to use. */
optional string download_scheme = 2;
enum Theme {
AUTO = 0;
DARK = 1;
LIGHT = 2;
}
optional Theme theme = 3;
enum DateFormat {
STD = 0;
US = 1;
ISO = 2;
EURO = 3;
UK = 4;
}
optional DateFormat date_format = 4;
enum TimeFormat {
HHMM_12 = 0;
HHMM_24 = 1;
}
optional TimeFormat time_format = 5;
optional bool expand_inline_diffs = 6;
optional bool relative_date_in_change_table = 20;
enum DiffView {
SIDE_BY_SIDE = 0;
UNIFIED_DIFF = 1;
}
optional DiffView diff_view = 21;
optional bool size_bar_in_change_table = 22 [default = true];
optional bool legacycid_in_change_table = 7;
optional bool mute_common_path_prefixes = 8 [default = true];
optional bool signed_off_by = 9;
enum EmailStrategy {
ENABLED = 0;
CC_ON_OWN_COMMENTS = 1;
ATTENTION_SET_ONLY = 2;
DISABLED = 3;
}
optional EmailStrategy email_strategy = 10;
enum EmailFormat {
PLAINTEXT = 0;
HTML_PLAINTEXT = 1;
}
optional EmailFormat email_format = 11 [default = HTML_PLAINTEXT];
enum DefaultBase {
AUTO_MERGE = 0;
FIRST_PARENT = 1;
}
optional DefaultBase default_base_for_merges = 12 [default = FIRST_PARENT];
optional bool publish_comments_on_push = 13;
optional bool disable_keyboard_shortcuts = 14;
optional bool disable_token_highlighting = 15;
optional bool work_in_progress_by_default = 16;
message MenuItem {
optional string url = 1;
optional string name = 2;
optional string target = 3;
optional string id = 4;
}
repeated MenuItem my_menu_items = 17;
repeated string change_table = 18;
optional bool allow_browser_notifications = 19 [default = true];
optional string diff_page_sidebar = 23 [default = "NONE"];
}
optional GeneralPreferencesInfo general_preferences_info = 1;
// Next ID: 25
message DiffPreferencesInfo {
optional int32 context = 1 [default = 10];
optional int32 tab_size = 2 [default = 8];
optional int32 font_size = 3 [default = 12];
optional int32 line_length = 4 [default = 100];
optional int32 cursor_blink_rate = 5;
optional bool expand_all_comments = 6;
optional bool intraline_difference = 7 [default = true];
optional bool manual_review = 8;
optional bool show_line_endings = 9 [default = true];
optional bool show_tabs = 10 [default = true];
optional bool show_whitespace_errors = 11 [default = true];
optional bool syntax_highlighting = 12 [default = true];
optional bool hide_top_menu = 13;
optional bool auto_hide_diff_table_header = 14 [default = true];
optional bool hide_line_numbers = 15;
optional bool render_entire_file = 16;
optional bool hide_empty_pane = 17;
optional bool match_brackets = 18;
optional bool line_wrapping = 19;
enum Whitespace {
IGNORE_NONE = 0;
IGNORE_TRAILING = 1;
IGNORE_LEADING_AND_TRAILING = 2;
IGNORE_ALL = 3;
}
optional Whitespace ignore_whitespace = 20;
optional bool retain_header = 21;
optional bool skip_deleted = 22;
optional bool skip_unchanged = 23;
optional bool skip_uncommented = 24;
}
optional DiffPreferencesInfo diff_preferences_info = 2;
// Next ID: 15
message EditPreferencesInfo {
optional int32 tab_size = 1 [default = 8];
optional int32 line_length = 2 [default = 100];
optional int32 indent_unit = 3 [default = 2];
optional int32 cursor_blink_rate = 4;
optional bool hide_top_menu = 5;
optional bool show_tabs = 6 [default = true];
optional bool show_whitespace_errors = 7;
optional bool syntax_highlighting = 8 [default = true];
optional bool hide_line_numbers = 9;
optional bool match_brackets = 10 [default = true];
optional bool line_wrapping = 11;
optional bool indent_with_tabs = 12;
optional bool auto_close_brackets = 13;
optional bool show_base = 14;
}
optional EditPreferencesInfo edit_preferences_info = 3;
}