Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Vosmaer <jacob@gitlab.com>2021-09-28 14:42:41 +0300
committerJacob Vosmaer <jacob@gitlab.com>2021-09-28 19:22:05 +0300
commitb64c125ee2cde11b9086e92c59052ff51f8079ee (patch)
treebb668887c949a195a23a092de47415ba75c24863
parentb0123fa9ab101dde3807933209a7fc51e3cbf38e (diff)
Add ForEachRefRaw RPC
-rw-r--r--internal/gitaly/service/ref/refs.go68
-rw-r--r--proto/go/gitalypb/ref.pb.go567
-rw-r--r--proto/go/gitalypb/ref_grpc.pb.go63
-rw-r--r--proto/ref.proto15
-rw-r--r--ruby/proto/gitaly/ref_pb.rb9
-rw-r--r--ruby/proto/gitaly/ref_services_pb.rb1
6 files changed, 513 insertions, 210 deletions
diff --git a/internal/gitaly/service/ref/refs.go b/internal/gitaly/service/ref/refs.go
index dc92838b8..ffd1fd2c4 100644
--- a/internal/gitaly/service/ref/refs.go
+++ b/internal/gitaly/service/ref/refs.go
@@ -7,6 +7,7 @@ import (
"errors"
"fmt"
"math"
+ "os"
"strings"
"gitlab.com/gitlab-org/gitaly/v14/internal/git"
@@ -15,6 +16,7 @@ import (
"gitlab.com/gitlab-org/gitaly/v14/internal/helper"
"gitlab.com/gitlab-org/gitaly/v14/internal/helper/lines"
"gitlab.com/gitlab-org/gitaly/v14/proto/go/gitalypb"
+ "gitlab.com/gitlab-org/gitaly/v14/streamio"
)
const (
@@ -353,3 +355,69 @@ func getTagSortField(sortBy *gitalypb.FindAllTagsRequest_SortBy) (string, error)
return dir + key, nil
}
+
+func (s *server) ForEachRefRaw(req *gitalypb.ForEachRefRawRequest, stream gitalypb.RefService_ForEachRefRawServer) error {
+ ctx := stream.Context()
+
+ var patterns []string
+ for _, p := range req.GetPatterns() {
+ patterns = append(patterns, string(p))
+ }
+
+ pr, pw, err := os.Pipe()
+ if err != nil {
+ return err
+ }
+ defer pr.Close()
+ defer pw.Close()
+
+ repo := s.localrepo(req.GetRepository())
+ forEachRef, err := repo.Exec(ctx,
+ git.SubCmd{
+ Name: "for-each-ref",
+ Flags: []git.Option{
+ git.ValueFlag{
+ Name: "--format",
+ Value: "%(objectname) %(refname)%(if:equals=tag)%(objecttype)%(then)%0a%(objectname)^{} %(refname)^{}%(end)",
+ },
+ },
+ Args: patterns,
+ },
+ git.WithStdout(pw),
+ )
+ if err != nil {
+ return err
+ }
+ if err := pw.Close(); err != nil {
+ return err
+ }
+
+ catFile, err := repo.Exec(ctx,
+ git.SubCmd{
+ Name: "cat-file",
+ Flags: []git.Option{
+ git.Flag{Name: "--buffer"},
+ git.Flag{Name: "--batch=%(objectname) %(objecttype) %(objectsize) %(rest)"},
+ },
+ },
+ git.WithStdin(pr),
+ git.WithStdout(streamio.NewWriter(func(p []byte) error {
+ return stream.Send(&gitalypb.ForEachRefRawResponse{Data: p})
+ })),
+ )
+ if err != nil {
+ return err
+ }
+ if err := pr.Close(); err != nil {
+ return err
+ }
+
+ if err := catFile.Wait(); err != nil {
+ return err
+ }
+ if err := forEachRef.Wait(); err != nil {
+ return err
+ }
+
+ return nil
+}
diff --git a/proto/go/gitalypb/ref.pb.go b/proto/go/gitalypb/ref.pb.go
index bb4c72435..927df3f72 100644
--- a/proto/go/gitalypb/ref.pb.go
+++ b/proto/go/gitalypb/ref.pb.go
@@ -2435,6 +2435,108 @@ func (x *ListRefsResponse) GetReferences() []*ListRefsResponse_Reference {
return nil
}
+type ForEachRefRawRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
+ Patterns [][]byte `protobuf:"bytes,2,rep,name=patterns,proto3" json:"patterns,omitempty"`
+}
+
+func (x *ForEachRefRawRequest) Reset() {
+ *x = ForEachRefRawRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_ref_proto_msgTypes[42]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ForEachRefRawRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ForEachRefRawRequest) ProtoMessage() {}
+
+func (x *ForEachRefRawRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_ref_proto_msgTypes[42]
+ 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 ForEachRefRawRequest.ProtoReflect.Descriptor instead.
+func (*ForEachRefRawRequest) Descriptor() ([]byte, []int) {
+ return file_ref_proto_rawDescGZIP(), []int{42}
+}
+
+func (x *ForEachRefRawRequest) GetRepository() *Repository {
+ if x != nil {
+ return x.Repository
+ }
+ return nil
+}
+
+func (x *ForEachRefRawRequest) GetPatterns() [][]byte {
+ if x != nil {
+ return x.Patterns
+ }
+ return nil
+}
+
+type ForEachRefRawResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
+}
+
+func (x *ForEachRefRawResponse) Reset() {
+ *x = ForEachRefRawResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_ref_proto_msgTypes[43]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ForEachRefRawResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ForEachRefRawResponse) ProtoMessage() {}
+
+func (x *ForEachRefRawResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_ref_proto_msgTypes[43]
+ 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 ForEachRefRawResponse.ProtoReflect.Descriptor instead.
+func (*ForEachRefRawResponse) Descriptor() ([]byte, []int) {
+ return file_ref_proto_rawDescGZIP(), []int{43}
+}
+
+func (x *ForEachRefRawResponse) GetData() []byte {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
type FindAllBranchesResponse_Branch struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -2447,7 +2549,7 @@ type FindAllBranchesResponse_Branch struct {
func (x *FindAllBranchesResponse_Branch) Reset() {
*x = FindAllBranchesResponse_Branch{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[42]
+ mi := &file_ref_proto_msgTypes[44]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2460,7 +2562,7 @@ func (x *FindAllBranchesResponse_Branch) String() string {
func (*FindAllBranchesResponse_Branch) ProtoMessage() {}
func (x *FindAllBranchesResponse_Branch) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[42]
+ mi := &file_ref_proto_msgTypes[44]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2503,7 +2605,7 @@ type FindAllTagsRequest_SortBy struct {
func (x *FindAllTagsRequest_SortBy) Reset() {
*x = FindAllTagsRequest_SortBy{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[43]
+ mi := &file_ref_proto_msgTypes[45]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2516,7 +2618,7 @@ func (x *FindAllTagsRequest_SortBy) String() string {
func (*FindAllTagsRequest_SortBy) ProtoMessage() {}
func (x *FindAllTagsRequest_SortBy) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[43]
+ mi := &file_ref_proto_msgTypes[45]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2566,7 +2668,7 @@ type GetTagSignaturesResponse_TagSignature struct {
func (x *GetTagSignaturesResponse_TagSignature) Reset() {
*x = GetTagSignaturesResponse_TagSignature{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[44]
+ mi := &file_ref_proto_msgTypes[46]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2579,7 +2681,7 @@ func (x *GetTagSignaturesResponse_TagSignature) String() string {
func (*GetTagSignaturesResponse_TagSignature) ProtoMessage() {}
func (x *GetTagSignaturesResponse_TagSignature) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[44]
+ mi := &file_ref_proto_msgTypes[46]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2631,7 +2733,7 @@ type ListRefsResponse_Reference struct {
func (x *ListRefsResponse_Reference) Reset() {
*x = ListRefsResponse_Reference{}
if protoimpl.UnsafeEnabled {
- mi := &file_ref_proto_msgTypes[45]
+ mi := &file_ref_proto_msgTypes[47]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -2644,7 +2746,7 @@ func (x *ListRefsResponse_Reference) String() string {
func (*ListRefsResponse_Reference) ProtoMessage() {}
func (x *ListRefsResponse_Reference) ProtoReflect() protoreflect.Message {
- mi := &file_ref_proto_msgTypes[45]
+ mi := &file_ref_proto_msgTypes[47]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2984,117 +3086,133 @@ var file_ref_proto_rawDesc = []byte{
0x09, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16,
0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
- 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x32, 0xa7, 0x0d, 0x0a, 0x0a, 0x52, 0x65, 0x66, 0x53, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x6c, 0x0a, 0x15, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x65, 0x66,
- 0x61, 0x75, 0x6c, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24,
- 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x65, 0x66, 0x61,
- 0x75, 0x6c, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69,
- 0x6e, 0x64, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e,
- 0x61, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28,
- 0x02, 0x08, 0x02, 0x12, 0x65, 0x0a, 0x12, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72,
- 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61,
- 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68,
- 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67,
- 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61,
- 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x5c, 0x0a, 0x0f, 0x46, 0x69,
- 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1e, 0x2e,
- 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61,
- 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e,
- 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61,
- 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06,
- 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x62, 0x0a, 0x11, 0x46, 0x69, 0x6e, 0x64,
- 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12, 0x20, 0x2e,
- 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x63, 0x61, 0x6c,
- 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x63,
- 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x5c, 0x0a, 0x0f,
- 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12,
- 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c,
- 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c,
- 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x50, 0x0a, 0x0b, 0x46, 0x69,
- 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x12, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61,
- 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46,
- 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x42, 0x0a, 0x07,
- 0x46, 0x69, 0x6e, 0x64, 0x54, 0x61, 0x67, 0x12, 0x16, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79,
- 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x54, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x17, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x54, 0x61, 0x67,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02,
- 0x12, 0x6e, 0x0a, 0x15, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74,
- 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12, 0x24, 0x2e, 0x67, 0x69, 0x74, 0x61,
- 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65,
- 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
- 0x25, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c,
- 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01,
- 0x12, 0x48, 0x0a, 0x09, 0x52, 0x65, 0x66, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x18, 0x2e,
- 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x66, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79,
- 0x2e, 0x52, 0x65, 0x66, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x4b, 0x0a, 0x0a, 0x46, 0x69,
- 0x6e, 0x64, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
- 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e,
- 0x64, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x4b, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74,
- 0x65, 0x52, 0x65, 0x66, 0x73, 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x44,
- 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
- 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97,
- 0x28, 0x02, 0x08, 0x01, 0x12, 0x8c, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x72, 0x61,
- 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69,
- 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x2e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
- 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65,
- 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69,
- 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
- 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65,
- 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69,
- 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08,
- 0x02, 0x30, 0x01, 0x12, 0x83, 0x01, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x67, 0x4e,
- 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f,
- 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x2b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69,
- 0x73, 0x74, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69,
- 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54,
- 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e,
- 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x5f, 0x0a, 0x10, 0x47, 0x65, 0x74,
- 0x54, 0x61, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x1f, 0x2e,
- 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x53, 0x69, 0x67,
- 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20,
- 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x53, 0x69,
- 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x59, 0x0a, 0x0e, 0x47, 0x65,
- 0x74, 0x54, 0x61, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1d, 0x2e, 0x67,
- 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x4d, 0x65, 0x73, 0x73,
- 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x69,
- 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61,
- 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28,
- 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x59, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77,
- 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x12, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79,
- 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x52,
+ 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x6c, 0x0a, 0x14, 0x46, 0x6f, 0x72, 0x45, 0x61, 0x63,
+ 0x68, 0x52, 0x65, 0x66, 0x52, 0x61, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x38,
+ 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x70, 0x6f,
+ 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x0a, 0x72, 0x65,
+ 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x74, 0x74,
+ 0x65, 0x72, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x08, 0x70, 0x61, 0x74, 0x74,
+ 0x65, 0x72, 0x6e, 0x73, 0x22, 0x2b, 0x0a, 0x15, 0x46, 0x6f, 0x72, 0x45, 0x61, 0x63, 0x68, 0x52,
+ 0x65, 0x66, 0x52, 0x61, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a,
+ 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74,
+ 0x61, 0x32, 0xff, 0x0d, 0x0a, 0x0a, 0x52, 0x65, 0x66, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
+ 0x12, 0x6c, 0x0a, 0x15, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x42,
+ 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x2e, 0x67, 0x69, 0x74, 0x61,
+ 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x42, 0x72,
+ 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x25, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x44, 0x65, 0x66,
+ 0x61, 0x75, 0x6c, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x65,
+ 0x0a, 0x12, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e,
+ 0x61, 0x6d, 0x65, 0x73, 0x12, 0x21, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69,
+ 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79,
+ 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61,
+ 0x6d, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28,
+ 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x5c, 0x0a, 0x0f, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c,
+ 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
+ 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65,
+ 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
+ 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08,
+ 0x02, 0x30, 0x01, 0x12, 0x62, 0x0a, 0x11, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x63, 0x61, 0x6c,
+ 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
+ 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63,
+ 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x67, 0x69, 0x74,
+ 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x42, 0x72, 0x61,
+ 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa,
+ 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x5c, 0x0a, 0x0f, 0x46, 0x69, 0x6e, 0x64, 0x41,
+ 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12, 0x1e, 0x2e, 0x67, 0x69, 0x74,
+ 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63,
+ 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x67, 0x69, 0x74,
+ 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x42, 0x72, 0x61, 0x6e, 0x63,
+ 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28,
+ 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x50, 0x0a, 0x0b, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c,
+ 0x54, 0x61, 0x67, 0x73, 0x12, 0x1a, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69,
+ 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c,
+ 0x6c, 0x54, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa,
+ 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x42, 0x0a, 0x07, 0x46, 0x69, 0x6e, 0x64, 0x54,
+ 0x61, 0x67, 0x12, 0x16, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64,
+ 0x54, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x67, 0x69, 0x74,
+ 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x54, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x6e, 0x0a, 0x15, 0x46,
+ 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x72, 0x61, 0x6e,
+ 0x63, 0x68, 0x65, 0x73, 0x12, 0x24, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69,
+ 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63,
+ 0x68, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x69, 0x74,
+ 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x6d, 0x6f, 0x74,
+ 0x65, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x48, 0x0a, 0x09, 0x52,
+ 0x65, 0x66, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x12, 0x18, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
+ 0x79, 0x2e, 0x52, 0x65, 0x66, 0x45, 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65, 0x66, 0x45,
+ 0x78, 0x69, 0x73, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa,
+ 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x4b, 0x0a, 0x0a, 0x46, 0x69, 0x6e, 0x64, 0x42, 0x72, 0x61,
+ 0x6e, 0x63, 0x68, 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e,
+ 0x64, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a,
+ 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x42, 0x72, 0x61, 0x6e,
+ 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02,
+ 0x08, 0x02, 0x12, 0x4b, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x66, 0x73,
+ 0x12, 0x19, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x69,
+ 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x66, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12,
+ 0x8c, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61,
+ 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d,
+ 0x6d, 0x69, 0x74, 0x12, 0x2e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74,
+ 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74,
+ 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x83,
+ 0x01, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43,
+ 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12,
+ 0x2b, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x67,
+ 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43,
+ 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67,
+ 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d,
+ 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6d, 0x6d,
+ 0x69, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02,
+ 0x08, 0x02, 0x30, 0x01, 0x12, 0x5f, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x53, 0x69,
+ 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x12, 0x1f, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c,
+ 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72,
+ 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x67, 0x69, 0x74, 0x61,
+ 0x6c, 0x79, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75,
+ 0x72, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28,
+ 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x59, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79,
+ 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e,
- 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65,
+ 0x47, 0x65, 0x74, 0x54, 0x61, 0x67, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01,
- 0x12, 0x45, 0x0a, 0x08, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73, 0x12, 0x17, 0x2e, 0x67,
- 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x50,
- 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x47, 0x0a, 0x08, 0x4c, 0x69, 0x73, 0x74, 0x52,
- 0x65, 0x66, 0x73, 0x12, 0x17, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73,
- 0x74, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x67,
- 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01,
- 0x42, 0x34, 0x5a, 0x32, 0x67, 0x69, 0x74, 0x6c, 0x61, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67,
- 0x69, 0x74, 0x6c, 0x61, 0x62, 0x2d, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79,
- 0x2f, 0x76, 0x31, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x69,
- 0x74, 0x61, 0x6c, 0x79, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+ 0x12, 0x59, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69,
+ 0x74, 0x73, 0x12, 0x1d, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x4e, 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x1e, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e,
+ 0x65, 0x77, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x45, 0x0a, 0x08, 0x50,
+ 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73, 0x12, 0x17, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79,
+ 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x18, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65,
+ 0x66, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02,
+ 0x08, 0x01, 0x12, 0x47, 0x0a, 0x08, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x66, 0x73, 0x12, 0x17,
+ 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x66, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x66, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x30, 0x01, 0x12, 0x56, 0x0a, 0x0d, 0x46,
+ 0x6f, 0x72, 0x45, 0x61, 0x63, 0x68, 0x52, 0x65, 0x66, 0x52, 0x61, 0x77, 0x12, 0x1c, 0x2e, 0x67,
+ 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x6f, 0x72, 0x45, 0x61, 0x63, 0x68, 0x52, 0x65, 0x66,
+ 0x52, 0x61, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x69, 0x74,
+ 0x61, 0x6c, 0x79, 0x2e, 0x46, 0x6f, 0x72, 0x45, 0x61, 0x63, 0x68, 0x52, 0x65, 0x66, 0x52, 0x61,
+ 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08,
+ 0x02, 0x30, 0x01, 0x42, 0x34, 0x5a, 0x32, 0x67, 0x69, 0x74, 0x6c, 0x61, 0x62, 0x2e, 0x63, 0x6f,
+ 0x6d, 0x2f, 0x67, 0x69, 0x74, 0x6c, 0x61, 0x62, 0x2d, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x69, 0x74,
+ 0x61, 0x6c, 0x79, 0x2f, 0x76, 0x31, 0x34, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f,
+ 0x2f, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x33,
}
var (
@@ -3110,7 +3228,7 @@ func file_ref_proto_rawDescGZIP() []byte {
}
var file_ref_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
-var file_ref_proto_msgTypes = make([]protoimpl.MessageInfo, 46)
+var file_ref_proto_msgTypes = make([]protoimpl.MessageInfo, 48)
var file_ref_proto_goTypes = []interface{}{
(FindLocalBranchesRequest_SortBy)(0), // 0: gitaly.FindLocalBranchesRequest.SortBy
(FindAllTagsRequest_SortBy_Key)(0), // 1: gitaly.FindAllTagsRequest.SortBy.Key
@@ -3157,101 +3275,106 @@ var file_ref_proto_goTypes = []interface{}{
(*PackRefsResponse)(nil), // 42: gitaly.PackRefsResponse
(*ListRefsRequest)(nil), // 43: gitaly.ListRefsRequest
(*ListRefsResponse)(nil), // 44: gitaly.ListRefsResponse
- (*FindAllBranchesResponse_Branch)(nil), // 45: gitaly.FindAllBranchesResponse.Branch
- (*FindAllTagsRequest_SortBy)(nil), // 46: gitaly.FindAllTagsRequest.SortBy
- (*GetTagSignaturesResponse_TagSignature)(nil), // 47: gitaly.GetTagSignaturesResponse.TagSignature
- (*ListRefsResponse_Reference)(nil), // 48: gitaly.ListRefsResponse.Reference
- (*Repository)(nil), // 49: gitaly.Repository
- (*PaginationParameter)(nil), // 50: gitaly.PaginationParameter
- (*GitCommit)(nil), // 51: gitaly.GitCommit
- (*timestamppb.Timestamp)(nil), // 52: google.protobuf.Timestamp
- (*Tag)(nil), // 53: gitaly.Tag
- (*Branch)(nil), // 54: gitaly.Branch
- (SortDirection)(0), // 55: gitaly.SortDirection
+ (*ForEachRefRawRequest)(nil), // 45: gitaly.ForEachRefRawRequest
+ (*ForEachRefRawResponse)(nil), // 46: gitaly.ForEachRefRawResponse
+ (*FindAllBranchesResponse_Branch)(nil), // 47: gitaly.FindAllBranchesResponse.Branch
+ (*FindAllTagsRequest_SortBy)(nil), // 48: gitaly.FindAllTagsRequest.SortBy
+ (*GetTagSignaturesResponse_TagSignature)(nil), // 49: gitaly.GetTagSignaturesResponse.TagSignature
+ (*ListRefsResponse_Reference)(nil), // 50: gitaly.ListRefsResponse.Reference
+ (*Repository)(nil), // 51: gitaly.Repository
+ (*PaginationParameter)(nil), // 52: gitaly.PaginationParameter
+ (*GitCommit)(nil), // 53: gitaly.GitCommit
+ (*timestamppb.Timestamp)(nil), // 54: google.protobuf.Timestamp
+ (*Tag)(nil), // 55: gitaly.Tag
+ (*Branch)(nil), // 56: gitaly.Branch
+ (SortDirection)(0), // 57: gitaly.SortDirection
}
var file_ref_proto_depIdxs = []int32{
- 49, // 0: gitaly.FindDefaultBranchNameRequest.repository:type_name -> gitaly.Repository
- 49, // 1: gitaly.FindAllBranchNamesRequest.repository:type_name -> gitaly.Repository
- 49, // 2: gitaly.FindAllTagNamesRequest.repository:type_name -> gitaly.Repository
- 49, // 3: gitaly.FindLocalBranchesRequest.repository:type_name -> gitaly.Repository
+ 51, // 0: gitaly.FindDefaultBranchNameRequest.repository:type_name -> gitaly.Repository
+ 51, // 1: gitaly.FindAllBranchNamesRequest.repository:type_name -> gitaly.Repository
+ 51, // 2: gitaly.FindAllTagNamesRequest.repository:type_name -> gitaly.Repository
+ 51, // 3: gitaly.FindLocalBranchesRequest.repository:type_name -> gitaly.Repository
0, // 4: gitaly.FindLocalBranchesRequest.sort_by:type_name -> gitaly.FindLocalBranchesRequest.SortBy
- 50, // 5: gitaly.FindLocalBranchesRequest.pagination_params:type_name -> gitaly.PaginationParameter
+ 52, // 5: gitaly.FindLocalBranchesRequest.pagination_params:type_name -> gitaly.PaginationParameter
11, // 6: gitaly.FindLocalBranchesResponse.branches:type_name -> gitaly.FindLocalBranchResponse
12, // 7: gitaly.FindLocalBranchResponse.commit_author:type_name -> gitaly.FindLocalBranchCommitAuthor
12, // 8: gitaly.FindLocalBranchResponse.commit_committer:type_name -> gitaly.FindLocalBranchCommitAuthor
- 51, // 9: gitaly.FindLocalBranchResponse.commit:type_name -> gitaly.GitCommit
- 52, // 10: gitaly.FindLocalBranchCommitAuthor.date:type_name -> google.protobuf.Timestamp
- 49, // 11: gitaly.FindAllBranchesRequest.repository:type_name -> gitaly.Repository
- 45, // 12: gitaly.FindAllBranchesResponse.branches:type_name -> gitaly.FindAllBranchesResponse.Branch
- 49, // 13: gitaly.FindTagRequest.repository:type_name -> gitaly.Repository
- 53, // 14: gitaly.FindTagResponse.tag:type_name -> gitaly.Tag
- 49, // 15: gitaly.FindAllTagsRequest.repository:type_name -> gitaly.Repository
- 46, // 16: gitaly.FindAllTagsRequest.sort_by:type_name -> gitaly.FindAllTagsRequest.SortBy
- 53, // 17: gitaly.FindAllTagsResponse.tags:type_name -> gitaly.Tag
- 49, // 18: gitaly.RefExistsRequest.repository:type_name -> gitaly.Repository
- 49, // 19: gitaly.CreateBranchRequest.repository:type_name -> gitaly.Repository
+ 53, // 9: gitaly.FindLocalBranchResponse.commit:type_name -> gitaly.GitCommit
+ 54, // 10: gitaly.FindLocalBranchCommitAuthor.date:type_name -> google.protobuf.Timestamp
+ 51, // 11: gitaly.FindAllBranchesRequest.repository:type_name -> gitaly.Repository
+ 47, // 12: gitaly.FindAllBranchesResponse.branches:type_name -> gitaly.FindAllBranchesResponse.Branch
+ 51, // 13: gitaly.FindTagRequest.repository:type_name -> gitaly.Repository
+ 55, // 14: gitaly.FindTagResponse.tag:type_name -> gitaly.Tag
+ 51, // 15: gitaly.FindAllTagsRequest.repository:type_name -> gitaly.Repository
+ 48, // 16: gitaly.FindAllTagsRequest.sort_by:type_name -> gitaly.FindAllTagsRequest.SortBy
+ 55, // 17: gitaly.FindAllTagsResponse.tags:type_name -> gitaly.Tag
+ 51, // 18: gitaly.RefExistsRequest.repository:type_name -> gitaly.Repository
+ 51, // 19: gitaly.CreateBranchRequest.repository:type_name -> gitaly.Repository
2, // 20: gitaly.CreateBranchResponse.status:type_name -> gitaly.CreateBranchResponse.Status
- 54, // 21: gitaly.CreateBranchResponse.branch:type_name -> gitaly.Branch
- 49, // 22: gitaly.DeleteBranchRequest.repository:type_name -> gitaly.Repository
- 49, // 23: gitaly.FindBranchRequest.repository:type_name -> gitaly.Repository
- 54, // 24: gitaly.FindBranchResponse.branch:type_name -> gitaly.Branch
- 49, // 25: gitaly.DeleteRefsRequest.repository:type_name -> gitaly.Repository
- 49, // 26: gitaly.ListBranchNamesContainingCommitRequest.repository:type_name -> gitaly.Repository
- 49, // 27: gitaly.ListTagNamesContainingCommitRequest.repository:type_name -> gitaly.Repository
- 49, // 28: gitaly.GetTagSignaturesRequest.repository:type_name -> gitaly.Repository
- 47, // 29: gitaly.GetTagSignaturesResponse.signatures:type_name -> gitaly.GetTagSignaturesResponse.TagSignature
- 49, // 30: gitaly.GetTagMessagesRequest.repository:type_name -> gitaly.Repository
- 49, // 31: gitaly.ListNewCommitsRequest.repository:type_name -> gitaly.Repository
- 51, // 32: gitaly.ListNewCommitsResponse.commits:type_name -> gitaly.GitCommit
- 49, // 33: gitaly.FindAllRemoteBranchesRequest.repository:type_name -> gitaly.Repository
- 54, // 34: gitaly.FindAllRemoteBranchesResponse.branches:type_name -> gitaly.Branch
- 49, // 35: gitaly.PackRefsRequest.repository:type_name -> gitaly.Repository
- 49, // 36: gitaly.ListRefsRequest.repository:type_name -> gitaly.Repository
- 48, // 37: gitaly.ListRefsResponse.references:type_name -> gitaly.ListRefsResponse.Reference
- 51, // 38: gitaly.FindAllBranchesResponse.Branch.target:type_name -> gitaly.GitCommit
- 1, // 39: gitaly.FindAllTagsRequest.SortBy.key:type_name -> gitaly.FindAllTagsRequest.SortBy.Key
- 55, // 40: gitaly.FindAllTagsRequest.SortBy.direction:type_name -> gitaly.SortDirection
- 3, // 41: gitaly.RefService.FindDefaultBranchName:input_type -> gitaly.FindDefaultBranchNameRequest
- 5, // 42: gitaly.RefService.FindAllBranchNames:input_type -> gitaly.FindAllBranchNamesRequest
- 7, // 43: gitaly.RefService.FindAllTagNames:input_type -> gitaly.FindAllTagNamesRequest
- 9, // 44: gitaly.RefService.FindLocalBranches:input_type -> gitaly.FindLocalBranchesRequest
- 13, // 45: gitaly.RefService.FindAllBranches:input_type -> gitaly.FindAllBranchesRequest
- 17, // 46: gitaly.RefService.FindAllTags:input_type -> gitaly.FindAllTagsRequest
- 15, // 47: gitaly.RefService.FindTag:input_type -> gitaly.FindTagRequest
- 39, // 48: gitaly.RefService.FindAllRemoteBranches:input_type -> gitaly.FindAllRemoteBranchesRequest
- 19, // 49: gitaly.RefService.RefExists:input_type -> gitaly.RefExistsRequest
- 25, // 50: gitaly.RefService.FindBranch:input_type -> gitaly.FindBranchRequest
- 27, // 51: gitaly.RefService.DeleteRefs:input_type -> gitaly.DeleteRefsRequest
- 29, // 52: gitaly.RefService.ListBranchNamesContainingCommit:input_type -> gitaly.ListBranchNamesContainingCommitRequest
- 31, // 53: gitaly.RefService.ListTagNamesContainingCommit:input_type -> gitaly.ListTagNamesContainingCommitRequest
- 33, // 54: gitaly.RefService.GetTagSignatures:input_type -> gitaly.GetTagSignaturesRequest
- 35, // 55: gitaly.RefService.GetTagMessages:input_type -> gitaly.GetTagMessagesRequest
- 37, // 56: gitaly.RefService.ListNewCommits:input_type -> gitaly.ListNewCommitsRequest
- 41, // 57: gitaly.RefService.PackRefs:input_type -> gitaly.PackRefsRequest
- 43, // 58: gitaly.RefService.ListRefs:input_type -> gitaly.ListRefsRequest
- 4, // 59: gitaly.RefService.FindDefaultBranchName:output_type -> gitaly.FindDefaultBranchNameResponse
- 6, // 60: gitaly.RefService.FindAllBranchNames:output_type -> gitaly.FindAllBranchNamesResponse
- 8, // 61: gitaly.RefService.FindAllTagNames:output_type -> gitaly.FindAllTagNamesResponse
- 10, // 62: gitaly.RefService.FindLocalBranches:output_type -> gitaly.FindLocalBranchesResponse
- 14, // 63: gitaly.RefService.FindAllBranches:output_type -> gitaly.FindAllBranchesResponse
- 18, // 64: gitaly.RefService.FindAllTags:output_type -> gitaly.FindAllTagsResponse
- 16, // 65: gitaly.RefService.FindTag:output_type -> gitaly.FindTagResponse
- 40, // 66: gitaly.RefService.FindAllRemoteBranches:output_type -> gitaly.FindAllRemoteBranchesResponse
- 20, // 67: gitaly.RefService.RefExists:output_type -> gitaly.RefExistsResponse
- 26, // 68: gitaly.RefService.FindBranch:output_type -> gitaly.FindBranchResponse
- 28, // 69: gitaly.RefService.DeleteRefs:output_type -> gitaly.DeleteRefsResponse
- 30, // 70: gitaly.RefService.ListBranchNamesContainingCommit:output_type -> gitaly.ListBranchNamesContainingCommitResponse
- 32, // 71: gitaly.RefService.ListTagNamesContainingCommit:output_type -> gitaly.ListTagNamesContainingCommitResponse
- 34, // 72: gitaly.RefService.GetTagSignatures:output_type -> gitaly.GetTagSignaturesResponse
- 36, // 73: gitaly.RefService.GetTagMessages:output_type -> gitaly.GetTagMessagesResponse
- 38, // 74: gitaly.RefService.ListNewCommits:output_type -> gitaly.ListNewCommitsResponse
- 42, // 75: gitaly.RefService.PackRefs:output_type -> gitaly.PackRefsResponse
- 44, // 76: gitaly.RefService.ListRefs:output_type -> gitaly.ListRefsResponse
- 59, // [59:77] is the sub-list for method output_type
- 41, // [41:59] is the sub-list for method input_type
- 41, // [41:41] is the sub-list for extension type_name
- 41, // [41:41] is the sub-list for extension extendee
- 0, // [0:41] is the sub-list for field type_name
+ 56, // 21: gitaly.CreateBranchResponse.branch:type_name -> gitaly.Branch
+ 51, // 22: gitaly.DeleteBranchRequest.repository:type_name -> gitaly.Repository
+ 51, // 23: gitaly.FindBranchRequest.repository:type_name -> gitaly.Repository
+ 56, // 24: gitaly.FindBranchResponse.branch:type_name -> gitaly.Branch
+ 51, // 25: gitaly.DeleteRefsRequest.repository:type_name -> gitaly.Repository
+ 51, // 26: gitaly.ListBranchNamesContainingCommitRequest.repository:type_name -> gitaly.Repository
+ 51, // 27: gitaly.ListTagNamesContainingCommitRequest.repository:type_name -> gitaly.Repository
+ 51, // 28: gitaly.GetTagSignaturesRequest.repository:type_name -> gitaly.Repository
+ 49, // 29: gitaly.GetTagSignaturesResponse.signatures:type_name -> gitaly.GetTagSignaturesResponse.TagSignature
+ 51, // 30: gitaly.GetTagMessagesRequest.repository:type_name -> gitaly.Repository
+ 51, // 31: gitaly.ListNewCommitsRequest.repository:type_name -> gitaly.Repository
+ 53, // 32: gitaly.ListNewCommitsResponse.commits:type_name -> gitaly.GitCommit
+ 51, // 33: gitaly.FindAllRemoteBranchesRequest.repository:type_name -> gitaly.Repository
+ 56, // 34: gitaly.FindAllRemoteBranchesResponse.branches:type_name -> gitaly.Branch
+ 51, // 35: gitaly.PackRefsRequest.repository:type_name -> gitaly.Repository
+ 51, // 36: gitaly.ListRefsRequest.repository:type_name -> gitaly.Repository
+ 50, // 37: gitaly.ListRefsResponse.references:type_name -> gitaly.ListRefsResponse.Reference
+ 51, // 38: gitaly.ForEachRefRawRequest.repository:type_name -> gitaly.Repository
+ 53, // 39: gitaly.FindAllBranchesResponse.Branch.target:type_name -> gitaly.GitCommit
+ 1, // 40: gitaly.FindAllTagsRequest.SortBy.key:type_name -> gitaly.FindAllTagsRequest.SortBy.Key
+ 57, // 41: gitaly.FindAllTagsRequest.SortBy.direction:type_name -> gitaly.SortDirection
+ 3, // 42: gitaly.RefService.FindDefaultBranchName:input_type -> gitaly.FindDefaultBranchNameRequest
+ 5, // 43: gitaly.RefService.FindAllBranchNames:input_type -> gitaly.FindAllBranchNamesRequest
+ 7, // 44: gitaly.RefService.FindAllTagNames:input_type -> gitaly.FindAllTagNamesRequest
+ 9, // 45: gitaly.RefService.FindLocalBranches:input_type -> gitaly.FindLocalBranchesRequest
+ 13, // 46: gitaly.RefService.FindAllBranches:input_type -> gitaly.FindAllBranchesRequest
+ 17, // 47: gitaly.RefService.FindAllTags:input_type -> gitaly.FindAllTagsRequest
+ 15, // 48: gitaly.RefService.FindTag:input_type -> gitaly.FindTagRequest
+ 39, // 49: gitaly.RefService.FindAllRemoteBranches:input_type -> gitaly.FindAllRemoteBranchesRequest
+ 19, // 50: gitaly.RefService.RefExists:input_type -> gitaly.RefExistsRequest
+ 25, // 51: gitaly.RefService.FindBranch:input_type -> gitaly.FindBranchRequest
+ 27, // 52: gitaly.RefService.DeleteRefs:input_type -> gitaly.DeleteRefsRequest
+ 29, // 53: gitaly.RefService.ListBranchNamesContainingCommit:input_type -> gitaly.ListBranchNamesContainingCommitRequest
+ 31, // 54: gitaly.RefService.ListTagNamesContainingCommit:input_type -> gitaly.ListTagNamesContainingCommitRequest
+ 33, // 55: gitaly.RefService.GetTagSignatures:input_type -> gitaly.GetTagSignaturesRequest
+ 35, // 56: gitaly.RefService.GetTagMessages:input_type -> gitaly.GetTagMessagesRequest
+ 37, // 57: gitaly.RefService.ListNewCommits:input_type -> gitaly.ListNewCommitsRequest
+ 41, // 58: gitaly.RefService.PackRefs:input_type -> gitaly.PackRefsRequest
+ 43, // 59: gitaly.RefService.ListRefs:input_type -> gitaly.ListRefsRequest
+ 45, // 60: gitaly.RefService.ForEachRefRaw:input_type -> gitaly.ForEachRefRawRequest
+ 4, // 61: gitaly.RefService.FindDefaultBranchName:output_type -> gitaly.FindDefaultBranchNameResponse
+ 6, // 62: gitaly.RefService.FindAllBranchNames:output_type -> gitaly.FindAllBranchNamesResponse
+ 8, // 63: gitaly.RefService.FindAllTagNames:output_type -> gitaly.FindAllTagNamesResponse
+ 10, // 64: gitaly.RefService.FindLocalBranches:output_type -> gitaly.FindLocalBranchesResponse
+ 14, // 65: gitaly.RefService.FindAllBranches:output_type -> gitaly.FindAllBranchesResponse
+ 18, // 66: gitaly.RefService.FindAllTags:output_type -> gitaly.FindAllTagsResponse
+ 16, // 67: gitaly.RefService.FindTag:output_type -> gitaly.FindTagResponse
+ 40, // 68: gitaly.RefService.FindAllRemoteBranches:output_type -> gitaly.FindAllRemoteBranchesResponse
+ 20, // 69: gitaly.RefService.RefExists:output_type -> gitaly.RefExistsResponse
+ 26, // 70: gitaly.RefService.FindBranch:output_type -> gitaly.FindBranchResponse
+ 28, // 71: gitaly.RefService.DeleteRefs:output_type -> gitaly.DeleteRefsResponse
+ 30, // 72: gitaly.RefService.ListBranchNamesContainingCommit:output_type -> gitaly.ListBranchNamesContainingCommitResponse
+ 32, // 73: gitaly.RefService.ListTagNamesContainingCommit:output_type -> gitaly.ListTagNamesContainingCommitResponse
+ 34, // 74: gitaly.RefService.GetTagSignatures:output_type -> gitaly.GetTagSignaturesResponse
+ 36, // 75: gitaly.RefService.GetTagMessages:output_type -> gitaly.GetTagMessagesResponse
+ 38, // 76: gitaly.RefService.ListNewCommits:output_type -> gitaly.ListNewCommitsResponse
+ 42, // 77: gitaly.RefService.PackRefs:output_type -> gitaly.PackRefsResponse
+ 44, // 78: gitaly.RefService.ListRefs:output_type -> gitaly.ListRefsResponse
+ 46, // 79: gitaly.RefService.ForEachRefRaw:output_type -> gitaly.ForEachRefRawResponse
+ 61, // [61:80] is the sub-list for method output_type
+ 42, // [42:61] is the sub-list for method input_type
+ 42, // [42:42] is the sub-list for extension type_name
+ 42, // [42:42] is the sub-list for extension extendee
+ 0, // [0:42] is the sub-list for field type_name
}
func init() { file_ref_proto_init() }
@@ -3768,7 +3891,7 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FindAllBranchesResponse_Branch); i {
+ switch v := v.(*ForEachRefRawRequest); i {
case 0:
return &v.state
case 1:
@@ -3780,7 +3903,7 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FindAllTagsRequest_SortBy); i {
+ switch v := v.(*ForEachRefRawResponse); i {
case 0:
return &v.state
case 1:
@@ -3792,7 +3915,7 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GetTagSignaturesResponse_TagSignature); i {
+ switch v := v.(*FindAllBranchesResponse_Branch); i {
case 0:
return &v.state
case 1:
@@ -3804,6 +3927,30 @@ func file_ref_proto_init() {
}
}
file_ref_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FindAllTagsRequest_SortBy); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_ref_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetTagSignaturesResponse_TagSignature); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_ref_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListRefsResponse_Reference); i {
case 0:
return &v.state
@@ -3822,7 +3969,7 @@ func file_ref_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_ref_proto_rawDesc,
NumEnums: 3,
- NumMessages: 46,
+ NumMessages: 48,
NumExtensions: 0,
NumServices: 1,
},
diff --git a/proto/go/gitalypb/ref_grpc.pb.go b/proto/go/gitalypb/ref_grpc.pb.go
index 2a530ce78..7ba8113b2 100644
--- a/proto/go/gitalypb/ref_grpc.pb.go
+++ b/proto/go/gitalypb/ref_grpc.pb.go
@@ -48,6 +48,7 @@ type RefServiceClient interface {
// will not be returned by this RPC. Any symbolic references will be resolved to the object ID it is
// pointing at.
ListRefs(ctx context.Context, in *ListRefsRequest, opts ...grpc.CallOption) (RefService_ListRefsClient, error)
+ ForEachRefRaw(ctx context.Context, in *ForEachRefRawRequest, opts ...grpc.CallOption) (RefService_ForEachRefRawClient, error)
}
type refServiceClient struct {
@@ -496,6 +497,38 @@ func (x *refServiceListRefsClient) Recv() (*ListRefsResponse, error) {
return m, nil
}
+func (c *refServiceClient) ForEachRefRaw(ctx context.Context, in *ForEachRefRawRequest, opts ...grpc.CallOption) (RefService_ForEachRefRawClient, error) {
+ stream, err := c.cc.NewStream(ctx, &RefService_ServiceDesc.Streams[12], "/gitaly.RefService/ForEachRefRaw", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &refServiceForEachRefRawClient{stream}
+ if err := x.ClientStream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ if err := x.ClientStream.CloseSend(); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type RefService_ForEachRefRawClient interface {
+ Recv() (*ForEachRefRawResponse, error)
+ grpc.ClientStream
+}
+
+type refServiceForEachRefRawClient struct {
+ grpc.ClientStream
+}
+
+func (x *refServiceForEachRefRawClient) Recv() (*ForEachRefRawResponse, error) {
+ m := new(ForEachRefRawResponse)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
// RefServiceServer is the server API for RefService service.
// All implementations must embed UnimplementedRefServiceServer
// for forward compatibility
@@ -530,6 +563,7 @@ type RefServiceServer interface {
// will not be returned by this RPC. Any symbolic references will be resolved to the object ID it is
// pointing at.
ListRefs(*ListRefsRequest, RefService_ListRefsServer) error
+ ForEachRefRaw(*ForEachRefRawRequest, RefService_ForEachRefRawServer) error
mustEmbedUnimplementedRefServiceServer()
}
@@ -591,6 +625,9 @@ func (UnimplementedRefServiceServer) PackRefs(context.Context, *PackRefsRequest)
func (UnimplementedRefServiceServer) ListRefs(*ListRefsRequest, RefService_ListRefsServer) error {
return status.Errorf(codes.Unimplemented, "method ListRefs not implemented")
}
+func (UnimplementedRefServiceServer) ForEachRefRaw(*ForEachRefRawRequest, RefService_ForEachRefRawServer) error {
+ return status.Errorf(codes.Unimplemented, "method ForEachRefRaw not implemented")
+}
func (UnimplementedRefServiceServer) mustEmbedUnimplementedRefServiceServer() {}
// UnsafeRefServiceServer may be embedded to opt out of forward compatibility for this service.
@@ -964,6 +1001,27 @@ func (x *refServiceListRefsServer) Send(m *ListRefsResponse) error {
return x.ServerStream.SendMsg(m)
}
+func _RefService_ForEachRefRaw_Handler(srv interface{}, stream grpc.ServerStream) error {
+ m := new(ForEachRefRawRequest)
+ if err := stream.RecvMsg(m); err != nil {
+ return err
+ }
+ return srv.(RefServiceServer).ForEachRefRaw(m, &refServiceForEachRefRawServer{stream})
+}
+
+type RefService_ForEachRefRawServer interface {
+ Send(*ForEachRefRawResponse) error
+ grpc.ServerStream
+}
+
+type refServiceForEachRefRawServer struct {
+ grpc.ServerStream
+}
+
+func (x *refServiceForEachRefRawServer) Send(m *ForEachRefRawResponse) error {
+ return x.ServerStream.SendMsg(m)
+}
+
// RefService_ServiceDesc is the grpc.ServiceDesc for RefService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
@@ -1057,6 +1115,11 @@ var RefService_ServiceDesc = grpc.ServiceDesc{
Handler: _RefService_ListRefs_Handler,
ServerStreams: true,
},
+ {
+ StreamName: "ForEachRefRaw",
+ Handler: _RefService_ForEachRefRaw_Handler,
+ ServerStreams: true,
+ },
},
Metadata: "ref.proto",
}
diff --git a/proto/ref.proto b/proto/ref.proto
index 60ed54658..2b23e43f8 100644
--- a/proto/ref.proto
+++ b/proto/ref.proto
@@ -120,6 +120,12 @@ service RefService {
op: ACCESSOR
};
}
+
+ rpc ForEachRefRaw(ForEachRefRawRequest) returns (stream ForEachRefRawResponse) {
+ option (op_type) = {
+ op: ACCESSOR
+ };
+ }
}
message FindDefaultBranchNameRequest {
@@ -415,3 +421,12 @@ message ListRefsResponse{
// References is the set of references returned by the RPC.
repeated Reference references = 1;
}
+
+message ForEachRefRawRequest {
+ Repository repository = 1 [(target_repository)=true];
+ repeated bytes patterns = 2;
+}
+
+message ForEachRefRawResponse{
+ bytes data = 1;
+}
diff --git a/ruby/proto/gitaly/ref_pb.rb b/ruby/proto/gitaly/ref_pb.rb
index 730cdd10b..146adbda2 100644
--- a/ruby/proto/gitaly/ref_pb.rb
+++ b/ruby/proto/gitaly/ref_pb.rb
@@ -199,6 +199,13 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
optional :name, :bytes, 1
optional :target, :string, 2
end
+ add_message "gitaly.ForEachRefRawRequest" do
+ optional :repository, :message, 1, "gitaly.Repository"
+ repeated :patterns, :bytes, 2
+ end
+ add_message "gitaly.ForEachRefRawResponse" do
+ optional :data, :bytes, 1
+ end
end
end
@@ -252,4 +259,6 @@ module Gitaly
ListRefsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.ListRefsRequest").msgclass
ListRefsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.ListRefsResponse").msgclass
ListRefsResponse::Reference = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.ListRefsResponse.Reference").msgclass
+ ForEachRefRawRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.ForEachRefRawRequest").msgclass
+ ForEachRefRawResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.ForEachRefRawResponse").msgclass
end
diff --git a/ruby/proto/gitaly/ref_services_pb.rb b/ruby/proto/gitaly/ref_services_pb.rb
index d9de2e9e4..59f10cb67 100644
--- a/ruby/proto/gitaly/ref_services_pb.rb
+++ b/ruby/proto/gitaly/ref_services_pb.rb
@@ -44,6 +44,7 @@ module Gitaly
# will not be returned by this RPC. Any symbolic references will be resolved to the object ID it is
# pointing at.
rpc :ListRefs, Gitaly::ListRefsRequest, stream(Gitaly::ListRefsResponse)
+ rpc :ForEachRefRaw, Gitaly::ForEachRefRawRequest, stream(Gitaly::ForEachRefRawResponse)
end
Stub = Service.rpc_stub_class