blob: 28a698eab3d591888fa47161a8f1cb53d12952d2 [file] [log] [blame]
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.32.0
// protoc v3.21.12
// source: status.proto
package rpc
import (
reflect "reflect"
sync "sync"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// Request for updated commit/task/comment/branch/etc data.
type GetIncrementalCommitsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
From *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=from,proto3" json:"from,omitempty"`
To *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=to,proto3" json:"to,omitempty"`
N int64 `protobuf:"varint,3,opt,name=n,proto3" json:"n,omitempty"`
Pod string `protobuf:"bytes,4,opt,name=pod,proto3" json:"pod,omitempty"`
RepoPath string `protobuf:"bytes,5,opt,name=repo_path,json=repoPath,proto3" json:"repo_path,omitempty"`
}
func (x *GetIncrementalCommitsRequest) Reset() {
*x = GetIncrementalCommitsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetIncrementalCommitsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetIncrementalCommitsRequest) ProtoMessage() {}
func (x *GetIncrementalCommitsRequest) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetIncrementalCommitsRequest.ProtoReflect.Descriptor instead.
func (*GetIncrementalCommitsRequest) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{0}
}
func (x *GetIncrementalCommitsRequest) GetFrom() *timestamppb.Timestamp {
if x != nil {
return x.From
}
return nil
}
func (x *GetIncrementalCommitsRequest) GetTo() *timestamppb.Timestamp {
if x != nil {
return x.To
}
return nil
}
func (x *GetIncrementalCommitsRequest) GetN() int64 {
if x != nil {
return x.N
}
return 0
}
func (x *GetIncrementalCommitsRequest) GetPod() string {
if x != nil {
return x.Pod
}
return ""
}
func (x *GetIncrementalCommitsRequest) GetRepoPath() string {
if x != nil {
return x.RepoPath
}
return ""
}
// Response containing recent commit/task/comment/branch/etc data.
type GetIncrementalCommitsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Metadata *ResponseMetadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"`
Update *IncrementalUpdate `protobuf:"bytes,2,opt,name=update,proto3" json:"update,omitempty"`
}
func (x *GetIncrementalCommitsResponse) Reset() {
*x = GetIncrementalCommitsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetIncrementalCommitsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetIncrementalCommitsResponse) ProtoMessage() {}
func (x *GetIncrementalCommitsResponse) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetIncrementalCommitsResponse.ProtoReflect.Descriptor instead.
func (*GetIncrementalCommitsResponse) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{1}
}
func (x *GetIncrementalCommitsResponse) GetMetadata() *ResponseMetadata {
if x != nil {
return x.Metadata
}
return nil
}
func (x *GetIncrementalCommitsResponse) GetUpdate() *IncrementalUpdate {
if x != nil {
return x.Update
}
return nil
}
// The (possible incremental) data comprising Status's table of
// commits and their tasks.
type IncrementalUpdate struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Commits []*LongCommit `protobuf:"bytes,1,rep,name=commits,proto3" json:"commits,omitempty"`
BranchHeads []*Branch `protobuf:"bytes,2,rep,name=branch_heads,json=branchHeads,proto3" json:"branch_heads,omitempty"`
Tasks []*Task `protobuf:"bytes,3,rep,name=tasks,proto3" json:"tasks,omitempty"`
Comments []*Comment `protobuf:"bytes,4,rep,name=comments,proto3" json:"comments,omitempty"`
}
func (x *IncrementalUpdate) Reset() {
*x = IncrementalUpdate{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *IncrementalUpdate) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*IncrementalUpdate) ProtoMessage() {}
func (x *IncrementalUpdate) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use IncrementalUpdate.ProtoReflect.Descriptor instead.
func (*IncrementalUpdate) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{2}
}
func (x *IncrementalUpdate) GetCommits() []*LongCommit {
if x != nil {
return x.Commits
}
return nil
}
func (x *IncrementalUpdate) GetBranchHeads() []*Branch {
if x != nil {
return x.BranchHeads
}
return nil
}
func (x *IncrementalUpdate) GetTasks() []*Task {
if x != nil {
return x.Tasks
}
return nil
}
func (x *IncrementalUpdate) GetComments() []*Comment {
if x != nil {
return x.Comments
}
return nil
}
// Branch names and their associated HEAD commit hash.
type Branch struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Head string `protobuf:"bytes,2,opt,name=head,proto3" json:"head,omitempty"`
}
func (x *Branch) Reset() {
*x = Branch{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Branch) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Branch) ProtoMessage() {}
func (x *Branch) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Branch.ProtoReflect.Descriptor instead.
func (*Branch) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{3}
}
func (x *Branch) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Branch) GetHead() string {
if x != nil {
return x.Head
}
return ""
}
// Represents a single task, what commits it covered, its status and results.
type Task struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Commits []string `protobuf:"bytes,1,rep,name=commits,proto3" json:"commits,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
Revision string `protobuf:"bytes,4,opt,name=revision,proto3" json:"revision,omitempty"`
Status string `protobuf:"bytes,5,opt,name=status,proto3" json:"status,omitempty"`
SwarmingTaskId string `protobuf:"bytes,6,opt,name=swarming_task_id,json=swarmingTaskId,proto3" json:"swarming_task_id,omitempty"`
}
func (x *Task) Reset() {
*x = Task{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Task) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Task) ProtoMessage() {}
func (x *Task) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Task.ProtoReflect.Descriptor instead.
func (*Task) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{4}
}
func (x *Task) GetCommits() []string {
if x != nil {
return x.Commits
}
return nil
}
func (x *Task) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Task) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *Task) GetRevision() string {
if x != nil {
return x.Revision
}
return ""
}
func (x *Task) GetStatus() string {
if x != nil {
return x.Status
}
return ""
}
func (x *Task) GetSwarmingTaskId() string {
if x != nil {
return x.SwarmingTaskId
}
return ""
}
// Represents a single commit in repo.
type LongCommit struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
Author string `protobuf:"bytes,2,opt,name=author,proto3" json:"author,omitempty"`
Subject string `protobuf:"bytes,3,opt,name=subject,proto3" json:"subject,omitempty"`
Parents []string `protobuf:"bytes,4,rep,name=parents,proto3" json:"parents,omitempty"`
Body string `protobuf:"bytes,5,opt,name=body,proto3" json:"body,omitempty"`
Timestamp *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
}
func (x *LongCommit) Reset() {
*x = LongCommit{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LongCommit) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LongCommit) ProtoMessage() {}
func (x *LongCommit) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LongCommit.ProtoReflect.Descriptor instead.
func (*LongCommit) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{5}
}
func (x *LongCommit) GetHash() string {
if x != nil {
return x.Hash
}
return ""
}
func (x *LongCommit) GetAuthor() string {
if x != nil {
return x.Author
}
return ""
}
func (x *LongCommit) GetSubject() string {
if x != nil {
return x.Subject
}
return ""
}
func (x *LongCommit) GetParents() []string {
if x != nil {
return x.Parents
}
return nil
}
func (x *LongCommit) GetBody() string {
if x != nil {
return x.Body
}
return ""
}
func (x *LongCommit) GetTimestamp() *timestamppb.Timestamp {
if x != nil {
return x.Timestamp
}
return nil
}
// Represents one of 3 types of human-written comment submitted on Status:
// 1) Specific task comment
// 2) Entire commit comment
// 3) Entire task spec comment
type Comment struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
Repo string `protobuf:"bytes,2,opt,name=repo,proto3" json:"repo,omitempty"`
Timestamp *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
User string `protobuf:"bytes,4,opt,name=user,proto3" json:"user,omitempty"`
Message string `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
Deleted bool `protobuf:"varint,6,opt,name=deleted,proto3" json:"deleted,omitempty"`
IgnoreFailure bool `protobuf:"varint,7,opt,name=ignore_failure,json=ignoreFailure,proto3" json:"ignore_failure,omitempty"` // Only for commit and taskSpec comments.
Flaky bool `protobuf:"varint,8,opt,name=flaky,proto3" json:"flaky,omitempty"` // Only for taskSpec comments.
TaskSpecName string `protobuf:"bytes,9,opt,name=task_spec_name,json=taskSpecName,proto3" json:"task_spec_name,omitempty"` // Only for task and taskSpec comments
TaskId string `protobuf:"bytes,10,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"` // Only for task comments
Commit string `protobuf:"bytes,11,opt,name=commit,proto3" json:"commit,omitempty"` // Only for commit comments.
}
func (x *Comment) Reset() {
*x = Comment{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Comment) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Comment) ProtoMessage() {}
func (x *Comment) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Comment.ProtoReflect.Descriptor instead.
func (*Comment) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{6}
}
func (x *Comment) GetId() string {
if x != nil {
return x.Id
}
return ""
}
func (x *Comment) GetRepo() string {
if x != nil {
return x.Repo
}
return ""
}
func (x *Comment) GetTimestamp() *timestamppb.Timestamp {
if x != nil {
return x.Timestamp
}
return nil
}
func (x *Comment) GetUser() string {
if x != nil {
return x.User
}
return ""
}
func (x *Comment) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
func (x *Comment) GetDeleted() bool {
if x != nil {
return x.Deleted
}
return false
}
func (x *Comment) GetIgnoreFailure() bool {
if x != nil {
return x.IgnoreFailure
}
return false
}
func (x *Comment) GetFlaky() bool {
if x != nil {
return x.Flaky
}
return false
}
func (x *Comment) GetTaskSpecName() string {
if x != nil {
return x.TaskSpecName
}
return ""
}
func (x *Comment) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *Comment) GetCommit() string {
if x != nil {
return x.Commit
}
return ""
}
// Data about the response and how to apply its contents.
type ResponseMetadata struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
StartOver bool `protobuf:"varint,1,opt,name=start_over,json=startOver,proto3" json:"start_over,omitempty"`
Pod string `protobuf:"bytes,2,opt,name=pod,proto3" json:"pod,omitempty"`
Timestamp *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
}
func (x *ResponseMetadata) Reset() {
*x = ResponseMetadata{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ResponseMetadata) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ResponseMetadata) ProtoMessage() {}
func (x *ResponseMetadata) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ResponseMetadata.ProtoReflect.Descriptor instead.
func (*ResponseMetadata) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{7}
}
func (x *ResponseMetadata) GetStartOver() bool {
if x != nil {
return x.StartOver
}
return false
}
func (x *ResponseMetadata) GetPod() string {
if x != nil {
return x.Pod
}
return ""
}
func (x *ResponseMetadata) GetTimestamp() *timestamppb.Timestamp {
if x != nil {
return x.Timestamp
}
return nil
}
// Request for adding a comment. this, along with timestamp, represent the comment in the DB.
type AddCommentRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"`
// Only one of commit, task_spec, and task_id will be set, based on if the comment is for a
// commit, task spec, or task. Oneof not used since TypeScript doesn't support it.
Commit string `protobuf:"bytes,2,opt,name=commit,proto3" json:"commit,omitempty"`
TaskSpec string `protobuf:"bytes,3,opt,name=task_spec,json=taskSpec,proto3" json:"task_spec,omitempty"`
TaskId string `protobuf:"bytes,4,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
Message string `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
Flaky bool `protobuf:"varint,6,opt,name=flaky,proto3" json:"flaky,omitempty"` // Only valid when task_spec is set.
IgnoreFailure bool `protobuf:"varint,7,opt,name=ignore_failure,json=ignoreFailure,proto3" json:"ignore_failure,omitempty"`
}
func (x *AddCommentRequest) Reset() {
*x = AddCommentRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AddCommentRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AddCommentRequest) ProtoMessage() {}
func (x *AddCommentRequest) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AddCommentRequest.ProtoReflect.Descriptor instead.
func (*AddCommentRequest) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{8}
}
func (x *AddCommentRequest) GetRepo() string {
if x != nil {
return x.Repo
}
return ""
}
func (x *AddCommentRequest) GetCommit() string {
if x != nil {
return x.Commit
}
return ""
}
func (x *AddCommentRequest) GetTaskSpec() string {
if x != nil {
return x.TaskSpec
}
return ""
}
func (x *AddCommentRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *AddCommentRequest) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
func (x *AddCommentRequest) GetFlaky() bool {
if x != nil {
return x.Flaky
}
return false
}
func (x *AddCommentRequest) GetIgnoreFailure() bool {
if x != nil {
return x.IgnoreFailure
}
return false
}
// Response to AddComment, only success/failure needs to be conveyed.
type AddCommentResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// We provide the timestamp used for the comment so the UI can immediately update, rather than
// waiting on polling to pick up the new comment.
Timestamp *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
}
func (x *AddCommentResponse) Reset() {
*x = AddCommentResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AddCommentResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AddCommentResponse) ProtoMessage() {}
func (x *AddCommentResponse) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AddCommentResponse.ProtoReflect.Descriptor instead.
func (*AddCommentResponse) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{9}
}
func (x *AddCommentResponse) GetTimestamp() *timestamppb.Timestamp {
if x != nil {
return x.Timestamp
}
return nil
}
// Request for deleting a comment. All fields used to identify the comment in the DB.
type DeleteCommentRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"`
Commit string `protobuf:"bytes,2,opt,name=commit,proto3" json:"commit,omitempty"`
TaskSpec string `protobuf:"bytes,3,opt,name=task_spec,json=taskSpec,proto3" json:"task_spec,omitempty"`
TaskId string `protobuf:"bytes,4,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
Timestamp *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
}
func (x *DeleteCommentRequest) Reset() {
*x = DeleteCommentRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteCommentRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteCommentRequest) ProtoMessage() {}
func (x *DeleteCommentRequest) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeleteCommentRequest.ProtoReflect.Descriptor instead.
func (*DeleteCommentRequest) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{10}
}
func (x *DeleteCommentRequest) GetRepo() string {
if x != nil {
return x.Repo
}
return ""
}
func (x *DeleteCommentRequest) GetCommit() string {
if x != nil {
return x.Commit
}
return ""
}
func (x *DeleteCommentRequest) GetTaskSpec() string {
if x != nil {
return x.TaskSpec
}
return ""
}
func (x *DeleteCommentRequest) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *DeleteCommentRequest) GetTimestamp() *timestamppb.Timestamp {
if x != nil {
return x.Timestamp
}
return nil
}
// Empty, valid response to DeleteComment, only success/failure needs to be conveyed.
type DeleteCommentResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *DeleteCommentResponse) Reset() {
*x = DeleteCommentResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DeleteCommentResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DeleteCommentResponse) ProtoMessage() {}
func (x *DeleteCommentResponse) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DeleteCommentResponse.ProtoReflect.Descriptor instead.
func (*DeleteCommentResponse) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{11}
}
// Empty, no parameters needed to ask for latest autoroller status info.
type GetAutorollerStatusesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GetAutorollerStatusesRequest) Reset() {
*x = GetAutorollerStatusesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetAutorollerStatusesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetAutorollerStatusesRequest) ProtoMessage() {}
func (x *GetAutorollerStatusesRequest) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[12]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetAutorollerStatusesRequest.ProtoReflect.Descriptor instead.
func (*GetAutorollerStatusesRequest) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{12}
}
type GetAutorollerStatusesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Rollers []*AutorollerStatus `protobuf:"bytes,1,rep,name=rollers,proto3" json:"rollers,omitempty"`
}
func (x *GetAutorollerStatusesResponse) Reset() {
*x = GetAutorollerStatusesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetAutorollerStatusesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetAutorollerStatusesResponse) ProtoMessage() {}
func (x *GetAutorollerStatusesResponse) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetAutorollerStatusesResponse.ProtoReflect.Descriptor instead.
func (*GetAutorollerStatusesResponse) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{13}
}
func (x *GetAutorollerStatusesResponse) GetRollers() []*AutorollerStatus {
if x != nil {
return x.Rollers
}
return nil
}
type AutorollerStatus struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
CurrentRollRev string `protobuf:"bytes,2,opt,name=current_roll_rev,json=currentRollRev,proto3" json:"current_roll_rev,omitempty"`
LastRollRev string `protobuf:"bytes,3,opt,name=last_roll_rev,json=lastRollRev,proto3" json:"last_roll_rev,omitempty"`
Mode string `protobuf:"bytes,4,opt,name=mode,proto3" json:"mode,omitempty"`
NumFailed int32 `protobuf:"varint,5,opt,name=num_failed,json=numFailed,proto3" json:"num_failed,omitempty"`
NumBehind int32 `protobuf:"varint,6,opt,name=num_behind,json=numBehind,proto3" json:"num_behind,omitempty"`
Url string `protobuf:"bytes,7,opt,name=url,proto3" json:"url,omitempty"`
}
func (x *AutorollerStatus) Reset() {
*x = AutorollerStatus{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AutorollerStatus) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AutorollerStatus) ProtoMessage() {}
func (x *AutorollerStatus) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[14]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use AutorollerStatus.ProtoReflect.Descriptor instead.
func (*AutorollerStatus) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{14}
}
func (x *AutorollerStatus) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *AutorollerStatus) GetCurrentRollRev() string {
if x != nil {
return x.CurrentRollRev
}
return ""
}
func (x *AutorollerStatus) GetLastRollRev() string {
if x != nil {
return x.LastRollRev
}
return ""
}
func (x *AutorollerStatus) GetMode() string {
if x != nil {
return x.Mode
}
return ""
}
func (x *AutorollerStatus) GetNumFailed() int32 {
if x != nil {
return x.NumFailed
}
return 0
}
func (x *AutorollerStatus) GetNumBehind() int32 {
if x != nil {
return x.NumBehind
}
return 0
}
func (x *AutorollerStatus) GetUrl() string {
if x != nil {
return x.Url
}
return ""
}
// Empty, no parameters needed to ask for latest bot usage data.
type GetBotUsageRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *GetBotUsageRequest) Reset() {
*x = GetBotUsageRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBotUsageRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBotUsageRequest) ProtoMessage() {}
func (x *GetBotUsageRequest) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[15]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetBotUsageRequest.ProtoReflect.Descriptor instead.
func (*GetBotUsageRequest) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{15}
}
// Machine/device types, with associated tasks that run on them and data about those tasks.
type GetBotUsageResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
BotSets []*BotSet `protobuf:"bytes,1,rep,name=bot_sets,json=botSets,proto3" json:"bot_sets,omitempty"`
}
func (x *GetBotUsageResponse) Reset() {
*x = GetBotUsageResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetBotUsageResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetBotUsageResponse) ProtoMessage() {}
func (x *GetBotUsageResponse) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[16]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetBotUsageResponse.ProtoReflect.Descriptor instead.
func (*GetBotUsageResponse) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{16}
}
func (x *GetBotUsageResponse) GetBotSets() []*BotSet {
if x != nil {
return x.BotSets
}
return nil
}
type BotSet struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Dimensions map[string]string `protobuf:"bytes,1,rep,name=dimensions,proto3" json:"dimensions,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
BotCount int32 `protobuf:"varint,2,opt,name=bot_count,json=botCount,proto3" json:"bot_count,omitempty"`
CqTasks int32 `protobuf:"varint,3,opt,name=cq_tasks,json=cqTasks,proto3" json:"cq_tasks,omitempty"`
MsPerCq int64 `protobuf:"varint,4,opt,name=ms_per_cq,json=msPerCq,proto3" json:"ms_per_cq,omitempty"`
TotalTasks int32 `protobuf:"varint,5,opt,name=total_tasks,json=totalTasks,proto3" json:"total_tasks,omitempty"`
MsPerCommit int64 `protobuf:"varint,6,opt,name=ms_per_commit,json=msPerCommit,proto3" json:"ms_per_commit,omitempty"`
}
func (x *BotSet) Reset() {
*x = BotSet{}
if protoimpl.UnsafeEnabled {
mi := &file_status_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BotSet) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BotSet) ProtoMessage() {}
func (x *BotSet) ProtoReflect() protoreflect.Message {
mi := &file_status_proto_msgTypes[17]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use BotSet.ProtoReflect.Descriptor instead.
func (*BotSet) Descriptor() ([]byte, []int) {
return file_status_proto_rawDescGZIP(), []int{17}
}
func (x *BotSet) GetDimensions() map[string]string {
if x != nil {
return x.Dimensions
}
return nil
}
func (x *BotSet) GetBotCount() int32 {
if x != nil {
return x.BotCount
}
return 0
}
func (x *BotSet) GetCqTasks() int32 {
if x != nil {
return x.CqTasks
}
return 0
}
func (x *BotSet) GetMsPerCq() int64 {
if x != nil {
return x.MsPerCq
}
return 0
}
func (x *BotSet) GetTotalTasks() int32 {
if x != nil {
return x.TotalTasks
}
return 0
}
func (x *BotSet) GetMsPerCommit() int64 {
if x != nil {
return x.MsPerCommit
}
return 0
}
var File_status_proto protoreflect.FileDescriptor
var file_status_proto_rawDesc = []byte{
0x0a, 0x0c, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06,
0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb7, 0x01, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x49,
0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
0x6d, 0x70, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x2a, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
0x52, 0x02, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x01, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52,
0x01, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x6f, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
0x03, 0x70, 0x6f, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x70, 0x6f, 0x5f, 0x70, 0x61, 0x74,
0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6f, 0x50, 0x61, 0x74,
0x68, 0x22, 0x88, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65,
0x6e, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52,
0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x31, 0x0a, 0x06, 0x75, 0x70, 0x64,
0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x73, 0x74, 0x61, 0x74,
0x75, 0x73, 0x2e, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x52, 0x06, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0xc5, 0x01, 0x0a,
0x11, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x12, 0x2c, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x4c, 0x6f, 0x6e,
0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73,
0x12, 0x31, 0x0a, 0x0c, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x73,
0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e,
0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x52, 0x0b, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x48, 0x65,
0x61, 0x64, 0x73, 0x12, 0x22, 0x0a, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x54, 0x61, 0x73, 0x6b,
0x52, 0x05, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x2b, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65,
0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x74, 0x61, 0x74,
0x75, 0x73, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d,
0x65, 0x6e, 0x74, 0x73, 0x22, 0x30, 0x0a, 0x06, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x12, 0x12,
0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x65, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x04, 0x68, 0x65, 0x61, 0x64, 0x22, 0xa2, 0x01, 0x0a, 0x04, 0x54, 0x61, 0x73, 0x6b, 0x12,
0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09,
0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a,
0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a,
0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
0x08, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61,
0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
0x73, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x77, 0x61, 0x72, 0x6d, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x61,
0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x77, 0x61,
0x72, 0x6d, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0xba, 0x01, 0x0a, 0x0a,
0x4c, 0x6f, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x61,
0x73, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x16,
0x0a, 0x06, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63,
0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74,
0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
0x09, 0x52, 0x07, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f,
0x64, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x38,
0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x06, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x74,
0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xc3, 0x02, 0x0a, 0x07, 0x43, 0x6f, 0x6d,
0x6d, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x65, 0x70, 0x6f, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x04, 0x72, 0x65, 0x70, 0x6f, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65,
0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
0x6d, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28,
0x08, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x67,
0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01,
0x28, 0x08, 0x52, 0x0d, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72,
0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x6b, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08,
0x52, 0x05, 0x66, 0x6c, 0x61, 0x6b, 0x79, 0x12, 0x24, 0x0a, 0x0e, 0x74, 0x61, 0x73, 0x6b, 0x5f,
0x73, 0x70, 0x65, 0x63, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0c, 0x74, 0x61, 0x73, 0x6b, 0x53, 0x70, 0x65, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a,
0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74,
0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x22, 0x7d,
0x0a, 0x10, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6f, 0x76, 0x65, 0x72,
0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4f, 0x76, 0x65,
0x72, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
0x70, 0x6f, 0x64, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xcc, 0x01,
0x0a, 0x11, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x65, 0x70, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x72, 0x65, 0x70, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x69,
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12,
0x1b, 0x0a, 0x09, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x03, 0x20, 0x01,
0x28, 0x09, 0x52, 0x08, 0x74, 0x61, 0x73, 0x6b, 0x53, 0x70, 0x65, 0x63, 0x12, 0x17, 0x0a, 0x07,
0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74,
0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
0x14, 0x0a, 0x05, 0x66, 0x6c, 0x61, 0x6b, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05,
0x66, 0x6c, 0x61, 0x6b, 0x79, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f,
0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69,
0x67, 0x6e, 0x6f, 0x72, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x22, 0x4e, 0x0a, 0x12,
0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xb2, 0x01, 0x0a,
0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x65, 0x70, 0x6f, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x65, 0x70, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x6d,
0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x6f, 0x6d, 0x6d, 0x69,
0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x03,
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x61, 0x73, 0x6b, 0x53, 0x70, 0x65, 0x63, 0x12, 0x17,
0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73,
0x74, 0x61, 0x6d, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
0x70, 0x22, 0x17, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65,
0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1e, 0x0a, 0x1c, 0x47, 0x65,
0x74, 0x41, 0x75, 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75,
0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x53, 0x0a, 0x1d, 0x47, 0x65,
0x74, 0x41, 0x75, 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75,
0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x07, 0x72,
0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x73,
0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72,
0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x07, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x22,
0xd8, 0x01, 0x0a, 0x10, 0x41, 0x75, 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x53, 0x74,
0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x63, 0x75, 0x72, 0x72,
0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x5f, 0x72, 0x65, 0x76, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x6c, 0x52,
0x65, 0x76, 0x12, 0x22, 0x0a, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x6c, 0x5f,
0x72, 0x65, 0x76, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x52,
0x6f, 0x6c, 0x6c, 0x52, 0x65, 0x76, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04,
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x75,
0x6d, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09,
0x6e, 0x75, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x75, 0x6d,
0x5f, 0x62, 0x65, 0x68, 0x69, 0x6e, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6e,
0x75, 0x6d, 0x42, 0x65, 0x68, 0x69, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18,
0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0x14, 0x0a, 0x12, 0x47, 0x65,
0x74, 0x42, 0x6f, 0x74, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x22, 0x40, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x42, 0x6f, 0x74, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x08, 0x62, 0x6f, 0x74, 0x5f, 0x73,
0x65, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x73, 0x74, 0x61, 0x74,
0x75, 0x73, 0x2e, 0x42, 0x6f, 0x74, 0x53, 0x65, 0x74, 0x52, 0x07, 0x62, 0x6f, 0x74, 0x53, 0x65,
0x74, 0x73, 0x22, 0xa0, 0x02, 0x0a, 0x06, 0x42, 0x6f, 0x74, 0x53, 0x65, 0x74, 0x12, 0x3e, 0x0a,
0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x1e, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x42, 0x6f, 0x74, 0x53, 0x65,
0x74, 0x2e, 0x44, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x52, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1b, 0x0a,
0x09, 0x62, 0x6f, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
0x52, 0x08, 0x62, 0x6f, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x71,
0x5f, 0x74, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x63, 0x71,
0x54, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x1a, 0x0a, 0x09, 0x6d, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f,
0x63, 0x71, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6d, 0x73, 0x50, 0x65, 0x72, 0x43,
0x71, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x74, 0x61, 0x73, 0x6b, 0x73,
0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x54, 0x61, 0x73,
0x6b, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6d,
0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6d, 0x73, 0x50, 0x65, 0x72,
0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x1a, 0x3d, 0x0a, 0x0f, 0x44, 0x69, 0x6d, 0x65, 0x6e, 0x73,
0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
0x65, 0x3a, 0x02, 0x38, 0x01, 0x32, 0xb6, 0x03, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x64, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x49, 0x6e,
0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73,
0x12, 0x24, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x63,
0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e,
0x47, 0x65, 0x74, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x43, 0x6f,
0x6d, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a,
0x0a, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x2e, 0x73, 0x74,
0x61, 0x74, 0x75, 0x73, 0x2e, 0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e,
0x41, 0x64, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d,
0x65, 0x6e, 0x74, 0x12, 0x1c, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x44, 0x65, 0x6c,
0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x1d, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74,
0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x12, 0x64, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x6c, 0x65,
0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x12, 0x24, 0x2e, 0x73, 0x74, 0x61, 0x74,
0x75, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x6f, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72,
0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x25, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x75, 0x74, 0x6f,
0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x42, 0x6f, 0x74,
0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x47,
0x65, 0x74, 0x42, 0x6f, 0x74, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x1a, 0x1b, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x6f,
0x74, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x21,
0x5a, 0x1f, 0x67, 0x6f, 0x2e, 0x73, 0x6b, 0x69, 0x61, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x69, 0x6e,
0x66, 0x72, 0x61, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2f, 0x67, 0x6f, 0x2f, 0x72, 0x70,
0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_status_proto_rawDescOnce sync.Once
file_status_proto_rawDescData = file_status_proto_rawDesc
)
func file_status_proto_rawDescGZIP() []byte {
file_status_proto_rawDescOnce.Do(func() {
file_status_proto_rawDescData = protoimpl.X.CompressGZIP(file_status_proto_rawDescData)
})
return file_status_proto_rawDescData
}
var file_status_proto_msgTypes = make([]protoimpl.MessageInfo, 19)
var file_status_proto_goTypes = []interface{}{
(*GetIncrementalCommitsRequest)(nil), // 0: status.GetIncrementalCommitsRequest
(*GetIncrementalCommitsResponse)(nil), // 1: status.GetIncrementalCommitsResponse
(*IncrementalUpdate)(nil), // 2: status.IncrementalUpdate
(*Branch)(nil), // 3: status.Branch
(*Task)(nil), // 4: status.Task
(*LongCommit)(nil), // 5: status.LongCommit
(*Comment)(nil), // 6: status.Comment
(*ResponseMetadata)(nil), // 7: status.ResponseMetadata
(*AddCommentRequest)(nil), // 8: status.AddCommentRequest
(*AddCommentResponse)(nil), // 9: status.AddCommentResponse
(*DeleteCommentRequest)(nil), // 10: status.DeleteCommentRequest
(*DeleteCommentResponse)(nil), // 11: status.DeleteCommentResponse
(*GetAutorollerStatusesRequest)(nil), // 12: status.GetAutorollerStatusesRequest
(*GetAutorollerStatusesResponse)(nil), // 13: status.GetAutorollerStatusesResponse
(*AutorollerStatus)(nil), // 14: status.AutorollerStatus
(*GetBotUsageRequest)(nil), // 15: status.GetBotUsageRequest
(*GetBotUsageResponse)(nil), // 16: status.GetBotUsageResponse
(*BotSet)(nil), // 17: status.BotSet
nil, // 18: status.BotSet.DimensionsEntry
(*timestamppb.Timestamp)(nil), // 19: google.protobuf.Timestamp
}
var file_status_proto_depIdxs = []int32{
19, // 0: status.GetIncrementalCommitsRequest.from:type_name -> google.protobuf.Timestamp
19, // 1: status.GetIncrementalCommitsRequest.to:type_name -> google.protobuf.Timestamp
7, // 2: status.GetIncrementalCommitsResponse.metadata:type_name -> status.ResponseMetadata
2, // 3: status.GetIncrementalCommitsResponse.update:type_name -> status.IncrementalUpdate
5, // 4: status.IncrementalUpdate.commits:type_name -> status.LongCommit
3, // 5: status.IncrementalUpdate.branch_heads:type_name -> status.Branch
4, // 6: status.IncrementalUpdate.tasks:type_name -> status.Task
6, // 7: status.IncrementalUpdate.comments:type_name -> status.Comment
19, // 8: status.LongCommit.timestamp:type_name -> google.protobuf.Timestamp
19, // 9: status.Comment.timestamp:type_name -> google.protobuf.Timestamp
19, // 10: status.ResponseMetadata.timestamp:type_name -> google.protobuf.Timestamp
19, // 11: status.AddCommentResponse.timestamp:type_name -> google.protobuf.Timestamp
19, // 12: status.DeleteCommentRequest.timestamp:type_name -> google.protobuf.Timestamp
14, // 13: status.GetAutorollerStatusesResponse.rollers:type_name -> status.AutorollerStatus
17, // 14: status.GetBotUsageResponse.bot_sets:type_name -> status.BotSet
18, // 15: status.BotSet.dimensions:type_name -> status.BotSet.DimensionsEntry
0, // 16: status.StatusService.GetIncrementalCommits:input_type -> status.GetIncrementalCommitsRequest
8, // 17: status.StatusService.AddComment:input_type -> status.AddCommentRequest
10, // 18: status.StatusService.DeleteComment:input_type -> status.DeleteCommentRequest
12, // 19: status.StatusService.GetAutorollerStatuses:input_type -> status.GetAutorollerStatusesRequest
15, // 20: status.StatusService.GetBotUsage:input_type -> status.GetBotUsageRequest
1, // 21: status.StatusService.GetIncrementalCommits:output_type -> status.GetIncrementalCommitsResponse
9, // 22: status.StatusService.AddComment:output_type -> status.AddCommentResponse
11, // 23: status.StatusService.DeleteComment:output_type -> status.DeleteCommentResponse
13, // 24: status.StatusService.GetAutorollerStatuses:output_type -> status.GetAutorollerStatusesResponse
16, // 25: status.StatusService.GetBotUsage:output_type -> status.GetBotUsageResponse
21, // [21:26] is the sub-list for method output_type
16, // [16:21] is the sub-list for method input_type
16, // [16:16] is the sub-list for extension type_name
16, // [16:16] is the sub-list for extension extendee
0, // [0:16] is the sub-list for field type_name
}
func init() { file_status_proto_init() }
func file_status_proto_init() {
if File_status_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_status_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetIncrementalCommitsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetIncrementalCommitsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*IncrementalUpdate); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Branch); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Task); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LongCommit); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Comment); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ResponseMetadata); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddCommentRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddCommentResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteCommentRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DeleteCommentResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetAutorollerStatusesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetAutorollerStatusesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AutorollerStatus); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBotUsageRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetBotUsageResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_status_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*BotSet); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_status_proto_rawDesc,
NumEnums: 0,
NumMessages: 19,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_status_proto_goTypes,
DependencyIndexes: file_status_proto_depIdxs,
MessageInfos: file_status_proto_msgTypes,
}.Build()
File_status_proto = out.File
file_status_proto_rawDesc = nil
file_status_proto_goTypes = nil
file_status_proto_depIdxs = nil
}