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
path: root/proto
diff options
context:
space:
mode:
authorPatrick Steinhardt <psteinhardt@gitlab.com>2022-11-10 12:10:43 +0300
committerPatrick Steinhardt <psteinhardt@gitlab.com>2022-11-14 11:07:31 +0300
commitd247ec65163185553af587120ca9f013f06540b8 (patch)
treee511e915f9b2493429353ebb8d70b333bdbefc54 /proto
parente8fb35a99a9ece6ed3ea2fd52817e18258d4d3ac (diff)
tools/protoc-gen-gitaly-lint: Move test Protobuf definitions
While we were able to get rid of all custom Protobuf definitions used for tests, this is definitely not possible for our tests that verify the behaviour of `protoc-gen-gitaly-lint`. Its whole purpose is to lint invalid Protobuf definitions, and we of course ain't got any in our normal gRPC services. We can still make the generation of this test-specific Protobuf code easier by moving the definitions into a new `proto/testproto` directory so that they live in the same filesystem hierarchy as the other Protobuf definitions. This both allows us to unify the call to protoc and will allow us to easily change the directory where the code is generated in in a subsequent commit.
Diffstat (limited to 'proto')
-rw-r--r--proto/go/gitalypb/testproto/invalid.pb.go1286
-rw-r--r--proto/go/gitalypb/testproto/invalid_grpc.pb.go978
-rw-r--r--proto/go/gitalypb/testproto/valid.pb.go898
-rw-r--r--proto/go/gitalypb/testproto/valid_grpc.pb.go661
-rw-r--r--proto/testproto/invalid.proto213
-rw-r--r--proto/testproto/valid.proto148
6 files changed, 4184 insertions, 0 deletions
diff --git a/proto/go/gitalypb/testproto/invalid.pb.go b/proto/go/gitalypb/testproto/invalid.pb.go
new file mode 100644
index 000000000..76050be66
--- /dev/null
+++ b/proto/go/gitalypb/testproto/invalid.pb.go
@@ -0,0 +1,1286 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.28.1
+// protoc v3.21.7
+// source: testproto/invalid.proto
+
+package testproto
+
+import (
+ gitalypb "gitlab.com/gitlab-org/gitaly/v15/proto/go/gitalypb"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ reflect "reflect"
+ sync "sync"
+)
+
+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)
+)
+
+type InvalidMethodRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *InvalidMethodRequest) Reset() {
+ *x = InvalidMethodRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *InvalidMethodRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InvalidMethodRequest) ProtoMessage() {}
+
+func (x *InvalidMethodRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 InvalidMethodRequest.ProtoReflect.Descriptor instead.
+func (*InvalidMethodRequest) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{0}
+}
+
+type InvalidMethodRequestWithRepo struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Destination *gitalypb.Repository `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
+}
+
+func (x *InvalidMethodRequestWithRepo) Reset() {
+ *x = InvalidMethodRequestWithRepo{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *InvalidMethodRequestWithRepo) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InvalidMethodRequestWithRepo) ProtoMessage() {}
+
+func (x *InvalidMethodRequestWithRepo) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 InvalidMethodRequestWithRepo.ProtoReflect.Descriptor instead.
+func (*InvalidMethodRequestWithRepo) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *InvalidMethodRequestWithRepo) GetDestination() *gitalypb.Repository {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
+
+type InvalidTargetType struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ WrongType int32 `protobuf:"varint,1,opt,name=wrong_type,json=wrongType,proto3" json:"wrong_type,omitempty"`
+}
+
+func (x *InvalidTargetType) Reset() {
+ *x = InvalidTargetType{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *InvalidTargetType) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InvalidTargetType) ProtoMessage() {}
+
+func (x *InvalidTargetType) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 InvalidTargetType.ProtoReflect.Descriptor instead.
+func (*InvalidTargetType) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *InvalidTargetType) GetWrongType() int32 {
+ if x != nil {
+ return x.WrongType
+ }
+ return 0
+}
+
+type InvalidMethodResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *InvalidMethodResponse) Reset() {
+ *x = InvalidMethodResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *InvalidMethodResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InvalidMethodResponse) ProtoMessage() {}
+
+func (x *InvalidMethodResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 InvalidMethodResponse.ProtoReflect.Descriptor instead.
+func (*InvalidMethodResponse) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{3}
+}
+
+type InvalidNestedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ InnerMessage *InvalidTargetType `protobuf:"bytes,1,opt,name=inner_message,json=innerMessage,proto3" json:"inner_message,omitempty"`
+}
+
+func (x *InvalidNestedRequest) Reset() {
+ *x = InvalidNestedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *InvalidNestedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InvalidNestedRequest) ProtoMessage() {}
+
+func (x *InvalidNestedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 InvalidNestedRequest.ProtoReflect.Descriptor instead.
+func (*InvalidNestedRequest) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *InvalidNestedRequest) GetInnerMessage() *InvalidTargetType {
+ if x != nil {
+ return x.InnerMessage
+ }
+ return nil
+}
+
+type RequestWithStorage struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ StorageName string `protobuf:"bytes,1,opt,name=storage_name,json=storageName,proto3" json:"storage_name,omitempty"`
+ Destination *gitalypb.Repository `protobuf:"bytes,2,opt,name=destination,proto3" json:"destination,omitempty"`
+}
+
+func (x *RequestWithStorage) Reset() {
+ *x = RequestWithStorage{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RequestWithStorage) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RequestWithStorage) ProtoMessage() {}
+
+func (x *RequestWithStorage) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 RequestWithStorage.ProtoReflect.Descriptor instead.
+func (*RequestWithStorage) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *RequestWithStorage) GetStorageName() string {
+ if x != nil {
+ return x.StorageName
+ }
+ return ""
+}
+
+func (x *RequestWithStorage) GetDestination() *gitalypb.Repository {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
+
+type RequestWithStorageAndRepo struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ StorageName string `protobuf:"bytes,1,opt,name=storage_name,json=storageName,proto3" json:"storage_name,omitempty"`
+ Destination *gitalypb.Repository `protobuf:"bytes,2,opt,name=destination,proto3" json:"destination,omitempty"`
+}
+
+func (x *RequestWithStorageAndRepo) Reset() {
+ *x = RequestWithStorageAndRepo{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RequestWithStorageAndRepo) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RequestWithStorageAndRepo) ProtoMessage() {}
+
+func (x *RequestWithStorageAndRepo) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 RequestWithStorageAndRepo.ProtoReflect.Descriptor instead.
+func (*RequestWithStorageAndRepo) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *RequestWithStorageAndRepo) GetStorageName() string {
+ if x != nil {
+ return x.StorageName
+ }
+ return ""
+}
+
+func (x *RequestWithStorageAndRepo) GetDestination() *gitalypb.Repository {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
+
+type RequestWithNestedStorageAndRepo struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ InnerMessage *RequestWithStorageAndRepo `protobuf:"bytes,1,opt,name=inner_message,json=innerMessage,proto3" json:"inner_message,omitempty"`
+}
+
+func (x *RequestWithNestedStorageAndRepo) Reset() {
+ *x = RequestWithNestedStorageAndRepo{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RequestWithNestedStorageAndRepo) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RequestWithNestedStorageAndRepo) ProtoMessage() {}
+
+func (x *RequestWithNestedStorageAndRepo) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 RequestWithNestedStorageAndRepo.ProtoReflect.Descriptor instead.
+func (*RequestWithNestedStorageAndRepo) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *RequestWithNestedStorageAndRepo) GetInnerMessage() *RequestWithStorageAndRepo {
+ if x != nil {
+ return x.InnerMessage
+ }
+ return nil
+}
+
+type RequestWithMultipleNestedStorage struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ InnerMessage *RequestWithStorage `protobuf:"bytes,1,opt,name=inner_message,json=innerMessage,proto3" json:"inner_message,omitempty"`
+ StorageName string `protobuf:"bytes,2,opt,name=storage_name,json=storageName,proto3" json:"storage_name,omitempty"`
+}
+
+func (x *RequestWithMultipleNestedStorage) Reset() {
+ *x = RequestWithMultipleNestedStorage{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RequestWithMultipleNestedStorage) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RequestWithMultipleNestedStorage) ProtoMessage() {}
+
+func (x *RequestWithMultipleNestedStorage) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 RequestWithMultipleNestedStorage.ProtoReflect.Descriptor instead.
+func (*RequestWithMultipleNestedStorage) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *RequestWithMultipleNestedStorage) GetInnerMessage() *RequestWithStorage {
+ if x != nil {
+ return x.InnerMessage
+ }
+ return nil
+}
+
+func (x *RequestWithMultipleNestedStorage) GetStorageName() string {
+ if x != nil {
+ return x.StorageName
+ }
+ return ""
+}
+
+type RequestWithInnerNestedStorage struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Header *RequestWithInnerNestedStorage_Header `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
+}
+
+func (x *RequestWithInnerNestedStorage) Reset() {
+ *x = RequestWithInnerNestedStorage{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RequestWithInnerNestedStorage) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RequestWithInnerNestedStorage) ProtoMessage() {}
+
+func (x *RequestWithInnerNestedStorage) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 RequestWithInnerNestedStorage.ProtoReflect.Descriptor instead.
+func (*RequestWithInnerNestedStorage) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *RequestWithInnerNestedStorage) GetHeader() *RequestWithInnerNestedStorage_Header {
+ if x != nil {
+ return x.Header
+ }
+ return nil
+}
+
+type RequestWithWrongTypeRepository struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Header *RequestWithWrongTypeRepository_Header `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
+}
+
+func (x *RequestWithWrongTypeRepository) Reset() {
+ *x = RequestWithWrongTypeRepository{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RequestWithWrongTypeRepository) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RequestWithWrongTypeRepository) ProtoMessage() {}
+
+func (x *RequestWithWrongTypeRepository) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 RequestWithWrongTypeRepository.ProtoReflect.Descriptor instead.
+func (*RequestWithWrongTypeRepository) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *RequestWithWrongTypeRepository) GetHeader() *RequestWithWrongTypeRepository_Header {
+ if x != nil {
+ return x.Header
+ }
+ return nil
+}
+
+type RequestWithNestedRepoNotFlagged struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Header *RequestWithNestedRepoNotFlagged_Header `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
+}
+
+func (x *RequestWithNestedRepoNotFlagged) Reset() {
+ *x = RequestWithNestedRepoNotFlagged{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RequestWithNestedRepoNotFlagged) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RequestWithNestedRepoNotFlagged) ProtoMessage() {}
+
+func (x *RequestWithNestedRepoNotFlagged) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 RequestWithNestedRepoNotFlagged.ProtoReflect.Descriptor instead.
+func (*RequestWithNestedRepoNotFlagged) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *RequestWithNestedRepoNotFlagged) GetHeader() *RequestWithNestedRepoNotFlagged_Header {
+ if x != nil {
+ return x.Header
+ }
+ return nil
+}
+
+type RequestWithInnerNestedStorage_Header struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ StorageName string `protobuf:"bytes,1,opt,name=storage_name,json=storageName,proto3" json:"storage_name,omitempty"`
+}
+
+func (x *RequestWithInnerNestedStorage_Header) Reset() {
+ *x = RequestWithInnerNestedStorage_Header{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RequestWithInnerNestedStorage_Header) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RequestWithInnerNestedStorage_Header) ProtoMessage() {}
+
+func (x *RequestWithInnerNestedStorage_Header) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 RequestWithInnerNestedStorage_Header.ProtoReflect.Descriptor instead.
+func (*RequestWithInnerNestedStorage_Header) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{9, 0}
+}
+
+func (x *RequestWithInnerNestedStorage_Header) GetStorageName() string {
+ if x != nil {
+ return x.StorageName
+ }
+ return ""
+}
+
+type RequestWithWrongTypeRepository_Header struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Repository *InvalidMethodResponse `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
+}
+
+func (x *RequestWithWrongTypeRepository_Header) Reset() {
+ *x = RequestWithWrongTypeRepository_Header{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RequestWithWrongTypeRepository_Header) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RequestWithWrongTypeRepository_Header) ProtoMessage() {}
+
+func (x *RequestWithWrongTypeRepository_Header) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 RequestWithWrongTypeRepository_Header.ProtoReflect.Descriptor instead.
+func (*RequestWithWrongTypeRepository_Header) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{10, 0}
+}
+
+func (x *RequestWithWrongTypeRepository_Header) GetRepository() *InvalidMethodResponse {
+ if x != nil {
+ return x.Repository
+ }
+ return nil
+}
+
+type RequestWithNestedRepoNotFlagged_Header struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Repository *gitalypb.Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
+}
+
+func (x *RequestWithNestedRepoNotFlagged_Header) Reset() {
+ *x = RequestWithNestedRepoNotFlagged_Header{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_invalid_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RequestWithNestedRepoNotFlagged_Header) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RequestWithNestedRepoNotFlagged_Header) ProtoMessage() {}
+
+func (x *RequestWithNestedRepoNotFlagged_Header) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_invalid_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 RequestWithNestedRepoNotFlagged_Header.ProtoReflect.Descriptor instead.
+func (*RequestWithNestedRepoNotFlagged_Header) Descriptor() ([]byte, []int) {
+ return file_testproto_invalid_proto_rawDescGZIP(), []int{11, 0}
+}
+
+func (x *RequestWithNestedRepoNotFlagged_Header) GetRepository() *gitalypb.Repository {
+ if x != nil {
+ return x.Repository
+ }
+ return nil
+}
+
+var File_testproto_invalid_proto protoreflect.FileDescriptor
+
+var file_testproto_invalid_proto_rawDesc = []byte{
+ 0x0a, 0x17, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x69, 0x6e, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x74, 0x65, 0x73, 0x74, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0a, 0x6c, 0x69, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x1a, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x16,
+ 0x0a, 0x14, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x5a, 0x0a, 0x1c, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69,
+ 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69,
+ 0x74, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x12, 0x3a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 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, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x22, 0x38, 0x0a, 0x11, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x54, 0x61, 0x72,
+ 0x67, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0a, 0x77, 0x72, 0x6f, 0x6e, 0x67,
+ 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x42, 0x04, 0x98, 0xc6, 0x2c,
+ 0x01, 0x52, 0x09, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x22, 0x17, 0x0a, 0x15,
+ 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x59, 0x0a, 0x14, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64,
+ 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a,
+ 0x0d, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x79,
+ 0x70, 0x65, 0x52, 0x0c, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x22, 0x73, 0x0a, 0x12, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x53,
+ 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x27, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
+ 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0x88, 0xc6,
+ 0x2c, 0x01, 0x52, 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12,
+ 0x34, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x52, 0x65,
+ 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x80, 0x01, 0x0a, 0x19, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x57, 0x69, 0x74, 0x68, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x64, 0x52,
+ 0x65, 0x70, 0x6f, 0x12, 0x27, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0x88, 0xc6, 0x2c, 0x01, 0x52,
+ 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x0b,
+ 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 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, 0x0b, 0x64, 0x65, 0x73,
+ 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x6c, 0x0a, 0x1f, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x53, 0x74, 0x6f,
+ 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x64, 0x52, 0x65, 0x70, 0x6f, 0x12, 0x49, 0x0a, 0x0d, 0x69,
+ 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67,
+ 0x65, 0x41, 0x6e, 0x64, 0x52, 0x65, 0x70, 0x6f, 0x52, 0x0c, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x8f, 0x01, 0x0a, 0x20, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x4e, 0x65,
+ 0x73, 0x74, 0x65, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x42, 0x0a, 0x0d, 0x69,
+ 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67,
+ 0x65, 0x52, 0x0c, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
+ 0x27, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0x88, 0xc6, 0x2c, 0x01, 0x52, 0x0b, 0x73, 0x74, 0x6f,
+ 0x72, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x9b, 0x01, 0x0a, 0x1d, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4e, 0x65, 0x73,
+ 0x74, 0x65, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x47, 0x0a, 0x06, 0x68, 0x65,
+ 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x74, 0x65, 0x73,
+ 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69,
+ 0x74, 0x68, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x53, 0x74, 0x6f,
+ 0x72, 0x61, 0x67, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61,
+ 0x64, 0x65, 0x72, 0x1a, 0x31, 0x0a, 0x06, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x27, 0x0a,
+ 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x04, 0x88, 0xc6, 0x2c, 0x01, 0x52, 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61,
+ 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xc2, 0x01, 0x0a, 0x1e, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x57, 0x72, 0x6f, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52,
+ 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x4e, 0x0a, 0x06, 0x68, 0x65, 0x61,
+ 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x74, 0x65, 0x73, 0x74,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74,
+ 0x68, 0x57, 0x72, 0x6f, 0x6e, 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69,
+ 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x42, 0x04, 0x98, 0xc6, 0x2c,
+ 0x01, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x1a, 0x50, 0x0a, 0x06, 0x48, 0x65, 0x61,
+ 0x64, 0x65, 0x72, 0x12, 0x46, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72,
+ 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f,
+ 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x04, 0x90, 0xc6, 0x2c, 0x01, 0x52,
+ 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x22, 0xb0, 0x01, 0x0a, 0x1f,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x65, 0x73, 0x74, 0x65,
+ 0x64, 0x52, 0x65, 0x70, 0x6f, 0x4e, 0x6f, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x67, 0x65, 0x64, 0x12,
+ 0x4f, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x31, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x70,
+ 0x6f, 0x4e, 0x6f, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x67, 0x65, 0x64, 0x2e, 0x48, 0x65, 0x61, 0x64,
+ 0x65, 0x72, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72,
+ 0x1a, 0x3c, 0x0a, 0x06, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x32, 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, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x32, 0x80,
+ 0x01, 0x0a, 0x1c, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x57, 0x69,
+ 0x74, 0x68, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12,
+ 0x5a, 0x0a, 0x0d, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64,
+ 0x12, 0x1f, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76,
+ 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e,
+ 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x1a, 0x04, 0xf0, 0x97, 0x28,
+ 0x01, 0x32, 0x9e, 0x12, 0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x65, 0x72,
+ 0x76, 0x69, 0x63, 0x65, 0x12, 0x55, 0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d,
+ 0x65, 0x74, 0x68, 0x6f, 0x64, 0x30, 0x12, 0x1f, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f,
+ 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5b, 0x0a, 0x0e, 0x49,
+ 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x31, 0x12, 0x1f, 0x2e,
+ 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69,
+ 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20,
+ 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c,
+ 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x00, 0x12, 0x5b, 0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x32, 0x12, 0x1f, 0x2e, 0x74, 0x65, 0x73,
+ 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65,
+ 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x74, 0x65,
+ 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d,
+ 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa,
+ 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x5b, 0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64,
+ 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x34, 0x12, 0x1f, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f,
+ 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68,
+ 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02,
+ 0x08, 0x01, 0x12, 0x65, 0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74,
+ 0x68, 0x6f, 0x64, 0x35, 0x12, 0x29, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x57, 0x72, 0x6f, 0x6e,
+ 0x67, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x1a,
+ 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x66, 0x0a, 0x0e, 0x49, 0x6e, 0x76,
+ 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x36, 0x12, 0x2a, 0x2e, 0x74, 0x65,
+ 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57,
+ 0x69, 0x74, 0x68, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x70, 0x6f, 0x4e, 0x6f, 0x74,
+ 0x46, 0x6c, 0x61, 0x67, 0x67, 0x65, 0x64, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f,
+ 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08,
+ 0x01, 0x12, 0x58, 0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68,
+ 0x6f, 0x64, 0x37, 0x12, 0x1c, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
+ 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x79, 0x70,
+ 0x65, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e,
+ 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x5b, 0x0a, 0x0e, 0x49,
+ 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x38, 0x12, 0x1f, 0x2e,
+ 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69,
+ 0x64, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20,
+ 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c,
+ 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x65, 0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x39, 0x12, 0x27, 0x2e, 0x74, 0x65, 0x73,
+ 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65,
+ 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x52,
+ 0x65, 0x70, 0x6f, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
+ 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x08, 0xfa, 0x97, 0x28, 0x04, 0x08, 0x01, 0x10, 0x02, 0x12,
+ 0x61, 0x0a, 0x0f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64,
+ 0x31, 0x30, 0x12, 0x24, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67,
+ 0x65, 0x41, 0x6e, 0x64, 0x52, 0x65, 0x70, 0x6f, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68,
+ 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02,
+ 0x08, 0x02, 0x12, 0x67, 0x0a, 0x0f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74,
+ 0x68, 0x6f, 0x64, 0x31, 0x31, 0x12, 0x2a, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x65, 0x73,
+ 0x74, 0x65, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x64, 0x52, 0x65, 0x70,
+ 0x6f, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e,
+ 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x5b, 0x0a, 0x0f, 0x49,
+ 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x31, 0x33, 0x12, 0x1c,
+ 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c,
+ 0x69, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x20, 0x2e, 0x74,
+ 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64,
+ 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x08,
+ 0xfa, 0x97, 0x28, 0x04, 0x08, 0x01, 0x10, 0x02, 0x12, 0x6a, 0x0a, 0x0f, 0x49, 0x6e, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x31, 0x34, 0x12, 0x2b, 0x2e, 0x74, 0x65,
+ 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57,
+ 0x69, 0x74, 0x68, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x4e, 0x65, 0x73, 0x74, 0x65,
+ 0x64, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68,
+ 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x08, 0xfa, 0x97, 0x28, 0x04,
+ 0x08, 0x01, 0x10, 0x02, 0x12, 0x63, 0x0a, 0x0f, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d,
+ 0x65, 0x74, 0x68, 0x6f, 0x64, 0x31, 0x35, 0x12, 0x24, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x53,
+ 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x64, 0x52, 0x65, 0x70, 0x6f, 0x1a, 0x20, 0x2e,
+ 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69,
+ 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x08, 0x80, 0x98, 0x28, 0x01, 0xfa, 0x97, 0x28, 0x00, 0x12, 0x6d, 0x0a, 0x20, 0x4d, 0x61, 0x69,
+ 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x4d, 0x69, 0x73, 0x73,
+ 0x69, 0x6e, 0x67, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1f, 0x2e,
+ 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69,
+ 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20,
+ 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c,
+ 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x03, 0x12, 0x7a, 0x0a, 0x22, 0x4d, 0x61, 0x69, 0x6e,
+ 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x55, 0x6e, 0x66, 0x6c, 0x61,
+ 0x67, 0x67, 0x65, 0x64, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x2a,
+ 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x70, 0x6f,
+ 0x4e, 0x6f, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x67, 0x65, 0x64, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73,
+ 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65,
+ 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97,
+ 0x28, 0x02, 0x08, 0x03, 0x12, 0x7f, 0x0a, 0x28, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61,
+ 0x6e, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x57, 0x72, 0x6f, 0x6e, 0x67, 0x4e, 0x65, 0x73, 0x74,
+ 0x65, 0x64, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x12, 0x29, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x57, 0x72, 0x6f, 0x6e, 0x67, 0x54, 0x79, 0x70,
+ 0x65, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x20, 0x2e, 0x74, 0x65,
+ 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d,
+ 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa,
+ 0x97, 0x28, 0x02, 0x08, 0x03, 0x12, 0x6a, 0x0a, 0x20, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e,
+ 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x54,
+ 0x61, 0x72, 0x67, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x2e, 0x74, 0x65, 0x73, 0x74,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x54, 0x61, 0x72,
+ 0x67, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f,
+ 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08,
+ 0x03, 0x12, 0x70, 0x0a, 0x23, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65,
+ 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4e, 0x65, 0x73, 0x74, 0x65,
+ 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4e, 0x65, 0x73, 0x74,
+ 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74,
+ 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28,
+ 0x02, 0x08, 0x03, 0x12, 0x75, 0x0a, 0x23, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e,
+ 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x64,
+ 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x24, 0x2e, 0x74, 0x65, 0x73,
+ 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69,
+ 0x74, 0x68, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x64, 0x52, 0x65, 0x70, 0x6f,
+ 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76,
+ 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x03, 0x12, 0x81, 0x01, 0x0a, 0x29, 0x4d,
+ 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x65,
+ 0x73, 0x74, 0x65, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x64, 0x52, 0x65,
+ 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x2a, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68,
+ 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x64,
+ 0x52, 0x65, 0x70, 0x6f, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x03, 0x12, 0x72,
+ 0x0a, 0x1b, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x74,
+ 0x68, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x27, 0x2e,
+ 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69,
+ 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69,
+ 0x74, 0x68, 0x52, 0x65, 0x70, 0x6f, 0x1a, 0x20, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x2e, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x08, 0xfa, 0x97, 0x28, 0x04, 0x08, 0x03,
+ 0x10, 0x02, 0x42, 0x32, 0x5a, 0x30, 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, 0x35, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x74, 0x65, 0x73,
+ 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_testproto_invalid_proto_rawDescOnce sync.Once
+ file_testproto_invalid_proto_rawDescData = file_testproto_invalid_proto_rawDesc
+)
+
+func file_testproto_invalid_proto_rawDescGZIP() []byte {
+ file_testproto_invalid_proto_rawDescOnce.Do(func() {
+ file_testproto_invalid_proto_rawDescData = protoimpl.X.CompressGZIP(file_testproto_invalid_proto_rawDescData)
+ })
+ return file_testproto_invalid_proto_rawDescData
+}
+
+var file_testproto_invalid_proto_msgTypes = make([]protoimpl.MessageInfo, 15)
+var file_testproto_invalid_proto_goTypes = []interface{}{
+ (*InvalidMethodRequest)(nil), // 0: testproto.InvalidMethodRequest
+ (*InvalidMethodRequestWithRepo)(nil), // 1: testproto.InvalidMethodRequestWithRepo
+ (*InvalidTargetType)(nil), // 2: testproto.InvalidTargetType
+ (*InvalidMethodResponse)(nil), // 3: testproto.InvalidMethodResponse
+ (*InvalidNestedRequest)(nil), // 4: testproto.InvalidNestedRequest
+ (*RequestWithStorage)(nil), // 5: testproto.RequestWithStorage
+ (*RequestWithStorageAndRepo)(nil), // 6: testproto.RequestWithStorageAndRepo
+ (*RequestWithNestedStorageAndRepo)(nil), // 7: testproto.RequestWithNestedStorageAndRepo
+ (*RequestWithMultipleNestedStorage)(nil), // 8: testproto.RequestWithMultipleNestedStorage
+ (*RequestWithInnerNestedStorage)(nil), // 9: testproto.RequestWithInnerNestedStorage
+ (*RequestWithWrongTypeRepository)(nil), // 10: testproto.RequestWithWrongTypeRepository
+ (*RequestWithNestedRepoNotFlagged)(nil), // 11: testproto.RequestWithNestedRepoNotFlagged
+ (*RequestWithInnerNestedStorage_Header)(nil), // 12: testproto.RequestWithInnerNestedStorage.Header
+ (*RequestWithWrongTypeRepository_Header)(nil), // 13: testproto.RequestWithWrongTypeRepository.Header
+ (*RequestWithNestedRepoNotFlagged_Header)(nil), // 14: testproto.RequestWithNestedRepoNotFlagged.Header
+ (*gitalypb.Repository)(nil), // 15: gitaly.Repository
+}
+var file_testproto_invalid_proto_depIdxs = []int32{
+ 15, // 0: testproto.InvalidMethodRequestWithRepo.destination:type_name -> gitaly.Repository
+ 2, // 1: testproto.InvalidNestedRequest.inner_message:type_name -> testproto.InvalidTargetType
+ 15, // 2: testproto.RequestWithStorage.destination:type_name -> gitaly.Repository
+ 15, // 3: testproto.RequestWithStorageAndRepo.destination:type_name -> gitaly.Repository
+ 6, // 4: testproto.RequestWithNestedStorageAndRepo.inner_message:type_name -> testproto.RequestWithStorageAndRepo
+ 5, // 5: testproto.RequestWithMultipleNestedStorage.inner_message:type_name -> testproto.RequestWithStorage
+ 12, // 6: testproto.RequestWithInnerNestedStorage.header:type_name -> testproto.RequestWithInnerNestedStorage.Header
+ 13, // 7: testproto.RequestWithWrongTypeRepository.header:type_name -> testproto.RequestWithWrongTypeRepository.Header
+ 14, // 8: testproto.RequestWithNestedRepoNotFlagged.header:type_name -> testproto.RequestWithNestedRepoNotFlagged.Header
+ 3, // 9: testproto.RequestWithWrongTypeRepository.Header.repository:type_name -> testproto.InvalidMethodResponse
+ 15, // 10: testproto.RequestWithNestedRepoNotFlagged.Header.repository:type_name -> gitaly.Repository
+ 0, // 11: testproto.InterceptedWithOperationType.InvalidMethod:input_type -> testproto.InvalidMethodRequest
+ 0, // 12: testproto.InvalidService.InvalidMethod0:input_type -> testproto.InvalidMethodRequest
+ 0, // 13: testproto.InvalidService.InvalidMethod1:input_type -> testproto.InvalidMethodRequest
+ 0, // 14: testproto.InvalidService.InvalidMethod2:input_type -> testproto.InvalidMethodRequest
+ 0, // 15: testproto.InvalidService.InvalidMethod4:input_type -> testproto.InvalidMethodRequest
+ 10, // 16: testproto.InvalidService.InvalidMethod5:input_type -> testproto.RequestWithWrongTypeRepository
+ 11, // 17: testproto.InvalidService.InvalidMethod6:input_type -> testproto.RequestWithNestedRepoNotFlagged
+ 2, // 18: testproto.InvalidService.InvalidMethod7:input_type -> testproto.InvalidTargetType
+ 4, // 19: testproto.InvalidService.InvalidMethod8:input_type -> testproto.InvalidNestedRequest
+ 1, // 20: testproto.InvalidService.InvalidMethod9:input_type -> testproto.InvalidMethodRequestWithRepo
+ 6, // 21: testproto.InvalidService.InvalidMethod10:input_type -> testproto.RequestWithStorageAndRepo
+ 7, // 22: testproto.InvalidService.InvalidMethod11:input_type -> testproto.RequestWithNestedStorageAndRepo
+ 2, // 23: testproto.InvalidService.InvalidMethod13:input_type -> testproto.InvalidTargetType
+ 8, // 24: testproto.InvalidService.InvalidMethod14:input_type -> testproto.RequestWithMultipleNestedStorage
+ 6, // 25: testproto.InvalidService.InvalidMethod15:input_type -> testproto.RequestWithStorageAndRepo
+ 0, // 26: testproto.InvalidService.MaintenanceWithMissingRepository:input_type -> testproto.InvalidMethodRequest
+ 11, // 27: testproto.InvalidService.MaintenanceWithUnflaggedRepository:input_type -> testproto.RequestWithNestedRepoNotFlagged
+ 10, // 28: testproto.InvalidService.MaintenanceWithWrongNestedRepositoryType:input_type -> testproto.RequestWithWrongTypeRepository
+ 2, // 29: testproto.InvalidService.MaintenanceWithInvalidTargetType:input_type -> testproto.InvalidTargetType
+ 4, // 30: testproto.InvalidService.MaintenanceWithInvalidNestedRequest:input_type -> testproto.InvalidNestedRequest
+ 6, // 31: testproto.InvalidService.MaintenanceWithStorageAndRepository:input_type -> testproto.RequestWithStorageAndRepo
+ 7, // 32: testproto.InvalidService.MaintenanceWithNestedStorageAndRepository:input_type -> testproto.RequestWithNestedStorageAndRepo
+ 1, // 33: testproto.InvalidService.MaintenanceWithStorageScope:input_type -> testproto.InvalidMethodRequestWithRepo
+ 3, // 34: testproto.InterceptedWithOperationType.InvalidMethod:output_type -> testproto.InvalidMethodResponse
+ 3, // 35: testproto.InvalidService.InvalidMethod0:output_type -> testproto.InvalidMethodResponse
+ 3, // 36: testproto.InvalidService.InvalidMethod1:output_type -> testproto.InvalidMethodResponse
+ 3, // 37: testproto.InvalidService.InvalidMethod2:output_type -> testproto.InvalidMethodResponse
+ 3, // 38: testproto.InvalidService.InvalidMethod4:output_type -> testproto.InvalidMethodResponse
+ 3, // 39: testproto.InvalidService.InvalidMethod5:output_type -> testproto.InvalidMethodResponse
+ 3, // 40: testproto.InvalidService.InvalidMethod6:output_type -> testproto.InvalidMethodResponse
+ 3, // 41: testproto.InvalidService.InvalidMethod7:output_type -> testproto.InvalidMethodResponse
+ 3, // 42: testproto.InvalidService.InvalidMethod8:output_type -> testproto.InvalidMethodResponse
+ 3, // 43: testproto.InvalidService.InvalidMethod9:output_type -> testproto.InvalidMethodResponse
+ 3, // 44: testproto.InvalidService.InvalidMethod10:output_type -> testproto.InvalidMethodResponse
+ 3, // 45: testproto.InvalidService.InvalidMethod11:output_type -> testproto.InvalidMethodResponse
+ 3, // 46: testproto.InvalidService.InvalidMethod13:output_type -> testproto.InvalidMethodResponse
+ 3, // 47: testproto.InvalidService.InvalidMethod14:output_type -> testproto.InvalidMethodResponse
+ 3, // 48: testproto.InvalidService.InvalidMethod15:output_type -> testproto.InvalidMethodResponse
+ 3, // 49: testproto.InvalidService.MaintenanceWithMissingRepository:output_type -> testproto.InvalidMethodResponse
+ 3, // 50: testproto.InvalidService.MaintenanceWithUnflaggedRepository:output_type -> testproto.InvalidMethodResponse
+ 3, // 51: testproto.InvalidService.MaintenanceWithWrongNestedRepositoryType:output_type -> testproto.InvalidMethodResponse
+ 3, // 52: testproto.InvalidService.MaintenanceWithInvalidTargetType:output_type -> testproto.InvalidMethodResponse
+ 3, // 53: testproto.InvalidService.MaintenanceWithInvalidNestedRequest:output_type -> testproto.InvalidMethodResponse
+ 3, // 54: testproto.InvalidService.MaintenanceWithStorageAndRepository:output_type -> testproto.InvalidMethodResponse
+ 3, // 55: testproto.InvalidService.MaintenanceWithNestedStorageAndRepository:output_type -> testproto.InvalidMethodResponse
+ 3, // 56: testproto.InvalidService.MaintenanceWithStorageScope:output_type -> testproto.InvalidMethodResponse
+ 34, // [34:57] is the sub-list for method output_type
+ 11, // [11:34] is the sub-list for method input_type
+ 11, // [11:11] is the sub-list for extension type_name
+ 11, // [11:11] is the sub-list for extension extendee
+ 0, // [0:11] is the sub-list for field type_name
+}
+
+func init() { file_testproto_invalid_proto_init() }
+func file_testproto_invalid_proto_init() {
+ if File_testproto_invalid_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_testproto_invalid_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InvalidMethodRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InvalidMethodRequestWithRepo); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InvalidTargetType); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InvalidMethodResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InvalidNestedRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RequestWithStorage); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RequestWithStorageAndRepo); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RequestWithNestedStorageAndRepo); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RequestWithMultipleNestedStorage); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RequestWithInnerNestedStorage); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RequestWithWrongTypeRepository); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RequestWithNestedRepoNotFlagged); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RequestWithInnerNestedStorage_Header); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RequestWithWrongTypeRepository_Header); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_invalid_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RequestWithNestedRepoNotFlagged_Header); 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_testproto_invalid_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 15,
+ NumExtensions: 0,
+ NumServices: 2,
+ },
+ GoTypes: file_testproto_invalid_proto_goTypes,
+ DependencyIndexes: file_testproto_invalid_proto_depIdxs,
+ MessageInfos: file_testproto_invalid_proto_msgTypes,
+ }.Build()
+ File_testproto_invalid_proto = out.File
+ file_testproto_invalid_proto_rawDesc = nil
+ file_testproto_invalid_proto_goTypes = nil
+ file_testproto_invalid_proto_depIdxs = nil
+}
diff --git a/proto/go/gitalypb/testproto/invalid_grpc.pb.go b/proto/go/gitalypb/testproto/invalid_grpc.pb.go
new file mode 100644
index 000000000..a1b777d8f
--- /dev/null
+++ b/proto/go/gitalypb/testproto/invalid_grpc.pb.go
@@ -0,0 +1,978 @@
+// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
+// versions:
+// - protoc-gen-go-grpc v1.2.0
+// - protoc v3.21.7
+// source: testproto/invalid.proto
+
+package testproto
+
+import (
+ context "context"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+// Requires gRPC-Go v1.32.0 or later.
+const _ = grpc.SupportPackageIsVersion7
+
+// InterceptedWithOperationTypeClient is the client API for InterceptedWithOperationType service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type InterceptedWithOperationTypeClient interface {
+ // intercepted services can't have operation type annotations.
+ InvalidMethod(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+}
+
+type interceptedWithOperationTypeClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewInterceptedWithOperationTypeClient(cc grpc.ClientConnInterface) InterceptedWithOperationTypeClient {
+ return &interceptedWithOperationTypeClient{cc}
+}
+
+func (c *interceptedWithOperationTypeClient) InvalidMethod(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InterceptedWithOperationType/InvalidMethod", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// InterceptedWithOperationTypeServer is the server API for InterceptedWithOperationType service.
+// All implementations must embed UnimplementedInterceptedWithOperationTypeServer
+// for forward compatibility
+type InterceptedWithOperationTypeServer interface {
+ // intercepted services can't have operation type annotations.
+ InvalidMethod(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error)
+ mustEmbedUnimplementedInterceptedWithOperationTypeServer()
+}
+
+// UnimplementedInterceptedWithOperationTypeServer must be embedded to have forward compatible implementations.
+type UnimplementedInterceptedWithOperationTypeServer struct {
+}
+
+func (UnimplementedInterceptedWithOperationTypeServer) InvalidMethod(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod not implemented")
+}
+func (UnimplementedInterceptedWithOperationTypeServer) mustEmbedUnimplementedInterceptedWithOperationTypeServer() {
+}
+
+// UnsafeInterceptedWithOperationTypeServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to InterceptedWithOperationTypeServer will
+// result in compilation errors.
+type UnsafeInterceptedWithOperationTypeServer interface {
+ mustEmbedUnimplementedInterceptedWithOperationTypeServer()
+}
+
+func RegisterInterceptedWithOperationTypeServer(s grpc.ServiceRegistrar, srv InterceptedWithOperationTypeServer) {
+ s.RegisterService(&InterceptedWithOperationType_ServiceDesc, srv)
+}
+
+func _InterceptedWithOperationType_InvalidMethod_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidMethodRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InterceptedWithOperationTypeServer).InvalidMethod(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InterceptedWithOperationType/InvalidMethod",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InterceptedWithOperationTypeServer).InvalidMethod(ctx, req.(*InvalidMethodRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// InterceptedWithOperationType_ServiceDesc is the grpc.ServiceDesc for InterceptedWithOperationType service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var InterceptedWithOperationType_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "testproto.InterceptedWithOperationType",
+ HandlerType: (*InterceptedWithOperationTypeServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "InvalidMethod",
+ Handler: _InterceptedWithOperationType_InvalidMethod_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "testproto/invalid.proto",
+}
+
+// InvalidServiceClient is the client API for InvalidService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type InvalidServiceClient interface {
+ // should fail if op_type extension is missing
+ InvalidMethod0(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if op type is unknown
+ InvalidMethod1(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if target repo is not provided for accessor
+ InvalidMethod2(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if missing either target repo or non-repo-scope for mutator
+ InvalidMethod4(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if repository is not of type Repository
+ InvalidMethod5(ctx context.Context, in *RequestWithWrongTypeRepository, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if nested repository isn't flagged
+ InvalidMethod6(ctx context.Context, in *RequestWithNestedRepoNotFlagged, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if target field type is not of type Repository
+ InvalidMethod7(ctx context.Context, in *InvalidTargetType, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if nested target field type is not of type Repository
+ InvalidMethod8(ctx context.Context, in *InvalidNestedRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if target repo is specified for storage scoped RPC
+ InvalidMethod9(ctx context.Context, in *InvalidMethodRequestWithRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if storage is specified for implicit repository scoped RPC
+ InvalidMethod10(ctx context.Context, in *RequestWithStorageAndRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if storage is specified for repository scoped RPC
+ InvalidMethod11(ctx context.Context, in *RequestWithNestedStorageAndRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if storage isn't specified for storage scoped RPC
+ InvalidMethod13(ctx context.Context, in *InvalidTargetType, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // should fail if multiple storage is specified for storage scoped RPC
+ InvalidMethod14(ctx context.Context, in *RequestWithMultipleNestedStorage, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ // Intercepted methods must not have operation type annotations.
+ InvalidMethod15(ctx context.Context, in *RequestWithStorageAndRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ MaintenanceWithMissingRepository(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ MaintenanceWithUnflaggedRepository(ctx context.Context, in *RequestWithNestedRepoNotFlagged, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ MaintenanceWithWrongNestedRepositoryType(ctx context.Context, in *RequestWithWrongTypeRepository, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ MaintenanceWithInvalidTargetType(ctx context.Context, in *InvalidTargetType, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ MaintenanceWithInvalidNestedRequest(ctx context.Context, in *InvalidNestedRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ MaintenanceWithStorageAndRepository(ctx context.Context, in *RequestWithStorageAndRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ MaintenanceWithNestedStorageAndRepository(ctx context.Context, in *RequestWithNestedStorageAndRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+ MaintenanceWithStorageScope(ctx context.Context, in *InvalidMethodRequestWithRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error)
+}
+
+type invalidServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewInvalidServiceClient(cc grpc.ClientConnInterface) InvalidServiceClient {
+ return &invalidServiceClient{cc}
+}
+
+func (c *invalidServiceClient) InvalidMethod0(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod0", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod1(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod1", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod2(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod2", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod4(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod4", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod5(ctx context.Context, in *RequestWithWrongTypeRepository, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod5", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod6(ctx context.Context, in *RequestWithNestedRepoNotFlagged, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod6", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod7(ctx context.Context, in *InvalidTargetType, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod7", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod8(ctx context.Context, in *InvalidNestedRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod8", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod9(ctx context.Context, in *InvalidMethodRequestWithRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod9", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod10(ctx context.Context, in *RequestWithStorageAndRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod10", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod11(ctx context.Context, in *RequestWithNestedStorageAndRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod11", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod13(ctx context.Context, in *InvalidTargetType, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod13", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod14(ctx context.Context, in *RequestWithMultipleNestedStorage, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod14", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) InvalidMethod15(ctx context.Context, in *RequestWithStorageAndRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/InvalidMethod15", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) MaintenanceWithMissingRepository(ctx context.Context, in *InvalidMethodRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/MaintenanceWithMissingRepository", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) MaintenanceWithUnflaggedRepository(ctx context.Context, in *RequestWithNestedRepoNotFlagged, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/MaintenanceWithUnflaggedRepository", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) MaintenanceWithWrongNestedRepositoryType(ctx context.Context, in *RequestWithWrongTypeRepository, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/MaintenanceWithWrongNestedRepositoryType", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) MaintenanceWithInvalidTargetType(ctx context.Context, in *InvalidTargetType, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/MaintenanceWithInvalidTargetType", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) MaintenanceWithInvalidNestedRequest(ctx context.Context, in *InvalidNestedRequest, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/MaintenanceWithInvalidNestedRequest", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) MaintenanceWithStorageAndRepository(ctx context.Context, in *RequestWithStorageAndRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/MaintenanceWithStorageAndRepository", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) MaintenanceWithNestedStorageAndRepository(ctx context.Context, in *RequestWithNestedStorageAndRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/MaintenanceWithNestedStorageAndRepository", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *invalidServiceClient) MaintenanceWithStorageScope(ctx context.Context, in *InvalidMethodRequestWithRepo, opts ...grpc.CallOption) (*InvalidMethodResponse, error) {
+ out := new(InvalidMethodResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InvalidService/MaintenanceWithStorageScope", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// InvalidServiceServer is the server API for InvalidService service.
+// All implementations must embed UnimplementedInvalidServiceServer
+// for forward compatibility
+type InvalidServiceServer interface {
+ // should fail if op_type extension is missing
+ InvalidMethod0(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error)
+ // should fail if op type is unknown
+ InvalidMethod1(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error)
+ // should fail if target repo is not provided for accessor
+ InvalidMethod2(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error)
+ // should fail if missing either target repo or non-repo-scope for mutator
+ InvalidMethod4(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error)
+ // should fail if repository is not of type Repository
+ InvalidMethod5(context.Context, *RequestWithWrongTypeRepository) (*InvalidMethodResponse, error)
+ // should fail if nested repository isn't flagged
+ InvalidMethod6(context.Context, *RequestWithNestedRepoNotFlagged) (*InvalidMethodResponse, error)
+ // should fail if target field type is not of type Repository
+ InvalidMethod7(context.Context, *InvalidTargetType) (*InvalidMethodResponse, error)
+ // should fail if nested target field type is not of type Repository
+ InvalidMethod8(context.Context, *InvalidNestedRequest) (*InvalidMethodResponse, error)
+ // should fail if target repo is specified for storage scoped RPC
+ InvalidMethod9(context.Context, *InvalidMethodRequestWithRepo) (*InvalidMethodResponse, error)
+ // should fail if storage is specified for implicit repository scoped RPC
+ InvalidMethod10(context.Context, *RequestWithStorageAndRepo) (*InvalidMethodResponse, error)
+ // should fail if storage is specified for repository scoped RPC
+ InvalidMethod11(context.Context, *RequestWithNestedStorageAndRepo) (*InvalidMethodResponse, error)
+ // should fail if storage isn't specified for storage scoped RPC
+ InvalidMethod13(context.Context, *InvalidTargetType) (*InvalidMethodResponse, error)
+ // should fail if multiple storage is specified for storage scoped RPC
+ InvalidMethod14(context.Context, *RequestWithMultipleNestedStorage) (*InvalidMethodResponse, error)
+ // Intercepted methods must not have operation type annotations.
+ InvalidMethod15(context.Context, *RequestWithStorageAndRepo) (*InvalidMethodResponse, error)
+ MaintenanceWithMissingRepository(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error)
+ MaintenanceWithUnflaggedRepository(context.Context, *RequestWithNestedRepoNotFlagged) (*InvalidMethodResponse, error)
+ MaintenanceWithWrongNestedRepositoryType(context.Context, *RequestWithWrongTypeRepository) (*InvalidMethodResponse, error)
+ MaintenanceWithInvalidTargetType(context.Context, *InvalidTargetType) (*InvalidMethodResponse, error)
+ MaintenanceWithInvalidNestedRequest(context.Context, *InvalidNestedRequest) (*InvalidMethodResponse, error)
+ MaintenanceWithStorageAndRepository(context.Context, *RequestWithStorageAndRepo) (*InvalidMethodResponse, error)
+ MaintenanceWithNestedStorageAndRepository(context.Context, *RequestWithNestedStorageAndRepo) (*InvalidMethodResponse, error)
+ MaintenanceWithStorageScope(context.Context, *InvalidMethodRequestWithRepo) (*InvalidMethodResponse, error)
+ mustEmbedUnimplementedInvalidServiceServer()
+}
+
+// UnimplementedInvalidServiceServer must be embedded to have forward compatible implementations.
+type UnimplementedInvalidServiceServer struct {
+}
+
+func (UnimplementedInvalidServiceServer) InvalidMethod0(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod0 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod1(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod1 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod2(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod2 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod4(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod4 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod5(context.Context, *RequestWithWrongTypeRepository) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod5 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod6(context.Context, *RequestWithNestedRepoNotFlagged) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod6 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod7(context.Context, *InvalidTargetType) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod7 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod8(context.Context, *InvalidNestedRequest) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod8 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod9(context.Context, *InvalidMethodRequestWithRepo) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod9 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod10(context.Context, *RequestWithStorageAndRepo) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod10 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod11(context.Context, *RequestWithNestedStorageAndRepo) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod11 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod13(context.Context, *InvalidTargetType) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod13 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod14(context.Context, *RequestWithMultipleNestedStorage) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod14 not implemented")
+}
+func (UnimplementedInvalidServiceServer) InvalidMethod15(context.Context, *RequestWithStorageAndRepo) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method InvalidMethod15 not implemented")
+}
+func (UnimplementedInvalidServiceServer) MaintenanceWithMissingRepository(context.Context, *InvalidMethodRequest) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MaintenanceWithMissingRepository not implemented")
+}
+func (UnimplementedInvalidServiceServer) MaintenanceWithUnflaggedRepository(context.Context, *RequestWithNestedRepoNotFlagged) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MaintenanceWithUnflaggedRepository not implemented")
+}
+func (UnimplementedInvalidServiceServer) MaintenanceWithWrongNestedRepositoryType(context.Context, *RequestWithWrongTypeRepository) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MaintenanceWithWrongNestedRepositoryType not implemented")
+}
+func (UnimplementedInvalidServiceServer) MaintenanceWithInvalidTargetType(context.Context, *InvalidTargetType) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MaintenanceWithInvalidTargetType not implemented")
+}
+func (UnimplementedInvalidServiceServer) MaintenanceWithInvalidNestedRequest(context.Context, *InvalidNestedRequest) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MaintenanceWithInvalidNestedRequest not implemented")
+}
+func (UnimplementedInvalidServiceServer) MaintenanceWithStorageAndRepository(context.Context, *RequestWithStorageAndRepo) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MaintenanceWithStorageAndRepository not implemented")
+}
+func (UnimplementedInvalidServiceServer) MaintenanceWithNestedStorageAndRepository(context.Context, *RequestWithNestedStorageAndRepo) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MaintenanceWithNestedStorageAndRepository not implemented")
+}
+func (UnimplementedInvalidServiceServer) MaintenanceWithStorageScope(context.Context, *InvalidMethodRequestWithRepo) (*InvalidMethodResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method MaintenanceWithStorageScope not implemented")
+}
+func (UnimplementedInvalidServiceServer) mustEmbedUnimplementedInvalidServiceServer() {}
+
+// UnsafeInvalidServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to InvalidServiceServer will
+// result in compilation errors.
+type UnsafeInvalidServiceServer interface {
+ mustEmbedUnimplementedInvalidServiceServer()
+}
+
+func RegisterInvalidServiceServer(s grpc.ServiceRegistrar, srv InvalidServiceServer) {
+ s.RegisterService(&InvalidService_ServiceDesc, srv)
+}
+
+func _InvalidService_InvalidMethod0_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidMethodRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod0(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod0",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod0(ctx, req.(*InvalidMethodRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod1_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidMethodRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod1(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod1",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod1(ctx, req.(*InvalidMethodRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod2_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidMethodRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod2(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod2",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod2(ctx, req.(*InvalidMethodRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod4_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidMethodRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod4(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod4",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod4(ctx, req.(*InvalidMethodRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod5_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RequestWithWrongTypeRepository)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod5(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod5",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod5(ctx, req.(*RequestWithWrongTypeRepository))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod6_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RequestWithNestedRepoNotFlagged)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod6(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod6",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod6(ctx, req.(*RequestWithNestedRepoNotFlagged))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod7_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidTargetType)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod7(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod7",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod7(ctx, req.(*InvalidTargetType))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod8_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidNestedRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod8(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod8",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod8(ctx, req.(*InvalidNestedRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod9_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidMethodRequestWithRepo)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod9(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod9",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod9(ctx, req.(*InvalidMethodRequestWithRepo))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod10_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RequestWithStorageAndRepo)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod10(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod10",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod10(ctx, req.(*RequestWithStorageAndRepo))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod11_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RequestWithNestedStorageAndRepo)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod11(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod11",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod11(ctx, req.(*RequestWithNestedStorageAndRepo))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod13_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidTargetType)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod13(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod13",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod13(ctx, req.(*InvalidTargetType))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod14_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RequestWithMultipleNestedStorage)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod14(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod14",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod14(ctx, req.(*RequestWithMultipleNestedStorage))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_InvalidMethod15_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RequestWithStorageAndRepo)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).InvalidMethod15(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/InvalidMethod15",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).InvalidMethod15(ctx, req.(*RequestWithStorageAndRepo))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_MaintenanceWithMissingRepository_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidMethodRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).MaintenanceWithMissingRepository(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/MaintenanceWithMissingRepository",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).MaintenanceWithMissingRepository(ctx, req.(*InvalidMethodRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_MaintenanceWithUnflaggedRepository_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RequestWithNestedRepoNotFlagged)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).MaintenanceWithUnflaggedRepository(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/MaintenanceWithUnflaggedRepository",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).MaintenanceWithUnflaggedRepository(ctx, req.(*RequestWithNestedRepoNotFlagged))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_MaintenanceWithWrongNestedRepositoryType_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RequestWithWrongTypeRepository)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).MaintenanceWithWrongNestedRepositoryType(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/MaintenanceWithWrongNestedRepositoryType",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).MaintenanceWithWrongNestedRepositoryType(ctx, req.(*RequestWithWrongTypeRepository))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_MaintenanceWithInvalidTargetType_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidTargetType)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).MaintenanceWithInvalidTargetType(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/MaintenanceWithInvalidTargetType",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).MaintenanceWithInvalidTargetType(ctx, req.(*InvalidTargetType))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_MaintenanceWithInvalidNestedRequest_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidNestedRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).MaintenanceWithInvalidNestedRequest(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/MaintenanceWithInvalidNestedRequest",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).MaintenanceWithInvalidNestedRequest(ctx, req.(*InvalidNestedRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_MaintenanceWithStorageAndRepository_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RequestWithStorageAndRepo)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).MaintenanceWithStorageAndRepository(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/MaintenanceWithStorageAndRepository",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).MaintenanceWithStorageAndRepository(ctx, req.(*RequestWithStorageAndRepo))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_MaintenanceWithNestedStorageAndRepository_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RequestWithNestedStorageAndRepo)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).MaintenanceWithNestedStorageAndRepository(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/MaintenanceWithNestedStorageAndRepository",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).MaintenanceWithNestedStorageAndRepository(ctx, req.(*RequestWithNestedStorageAndRepo))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _InvalidService_MaintenanceWithStorageScope_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(InvalidMethodRequestWithRepo)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InvalidServiceServer).MaintenanceWithStorageScope(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InvalidService/MaintenanceWithStorageScope",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InvalidServiceServer).MaintenanceWithStorageScope(ctx, req.(*InvalidMethodRequestWithRepo))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// InvalidService_ServiceDesc is the grpc.ServiceDesc for InvalidService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var InvalidService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "testproto.InvalidService",
+ HandlerType: (*InvalidServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "InvalidMethod0",
+ Handler: _InvalidService_InvalidMethod0_Handler,
+ },
+ {
+ MethodName: "InvalidMethod1",
+ Handler: _InvalidService_InvalidMethod1_Handler,
+ },
+ {
+ MethodName: "InvalidMethod2",
+ Handler: _InvalidService_InvalidMethod2_Handler,
+ },
+ {
+ MethodName: "InvalidMethod4",
+ Handler: _InvalidService_InvalidMethod4_Handler,
+ },
+ {
+ MethodName: "InvalidMethod5",
+ Handler: _InvalidService_InvalidMethod5_Handler,
+ },
+ {
+ MethodName: "InvalidMethod6",
+ Handler: _InvalidService_InvalidMethod6_Handler,
+ },
+ {
+ MethodName: "InvalidMethod7",
+ Handler: _InvalidService_InvalidMethod7_Handler,
+ },
+ {
+ MethodName: "InvalidMethod8",
+ Handler: _InvalidService_InvalidMethod8_Handler,
+ },
+ {
+ MethodName: "InvalidMethod9",
+ Handler: _InvalidService_InvalidMethod9_Handler,
+ },
+ {
+ MethodName: "InvalidMethod10",
+ Handler: _InvalidService_InvalidMethod10_Handler,
+ },
+ {
+ MethodName: "InvalidMethod11",
+ Handler: _InvalidService_InvalidMethod11_Handler,
+ },
+ {
+ MethodName: "InvalidMethod13",
+ Handler: _InvalidService_InvalidMethod13_Handler,
+ },
+ {
+ MethodName: "InvalidMethod14",
+ Handler: _InvalidService_InvalidMethod14_Handler,
+ },
+ {
+ MethodName: "InvalidMethod15",
+ Handler: _InvalidService_InvalidMethod15_Handler,
+ },
+ {
+ MethodName: "MaintenanceWithMissingRepository",
+ Handler: _InvalidService_MaintenanceWithMissingRepository_Handler,
+ },
+ {
+ MethodName: "MaintenanceWithUnflaggedRepository",
+ Handler: _InvalidService_MaintenanceWithUnflaggedRepository_Handler,
+ },
+ {
+ MethodName: "MaintenanceWithWrongNestedRepositoryType",
+ Handler: _InvalidService_MaintenanceWithWrongNestedRepositoryType_Handler,
+ },
+ {
+ MethodName: "MaintenanceWithInvalidTargetType",
+ Handler: _InvalidService_MaintenanceWithInvalidTargetType_Handler,
+ },
+ {
+ MethodName: "MaintenanceWithInvalidNestedRequest",
+ Handler: _InvalidService_MaintenanceWithInvalidNestedRequest_Handler,
+ },
+ {
+ MethodName: "MaintenanceWithStorageAndRepository",
+ Handler: _InvalidService_MaintenanceWithStorageAndRepository_Handler,
+ },
+ {
+ MethodName: "MaintenanceWithNestedStorageAndRepository",
+ Handler: _InvalidService_MaintenanceWithNestedStorageAndRepository_Handler,
+ },
+ {
+ MethodName: "MaintenanceWithStorageScope",
+ Handler: _InvalidService_MaintenanceWithStorageScope_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "testproto/invalid.proto",
+}
diff --git a/proto/go/gitalypb/testproto/valid.pb.go b/proto/go/gitalypb/testproto/valid.pb.go
new file mode 100644
index 000000000..403c08d43
--- /dev/null
+++ b/proto/go/gitalypb/testproto/valid.pb.go
@@ -0,0 +1,898 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.28.1
+// protoc v3.21.7
+// source: testproto/valid.proto
+
+package testproto
+
+import (
+ gitalypb "gitlab.com/gitlab-org/gitaly/v15/proto/go/gitalypb"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ reflect "reflect"
+ sync "sync"
+)
+
+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)
+)
+
+type ValidRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Destination *gitalypb.Repository `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
+}
+
+func (x *ValidRequest) Reset() {
+ *x = ValidRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_valid_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidRequest) ProtoMessage() {}
+
+func (x *ValidRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_valid_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 ValidRequest.ProtoReflect.Descriptor instead.
+func (*ValidRequest) Descriptor() ([]byte, []int) {
+ return file_testproto_valid_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *ValidRequest) GetDestination() *gitalypb.Repository {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
+
+type ValidRequestWithoutRepo struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *ValidRequestWithoutRepo) Reset() {
+ *x = ValidRequestWithoutRepo{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_valid_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidRequestWithoutRepo) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidRequestWithoutRepo) ProtoMessage() {}
+
+func (x *ValidRequestWithoutRepo) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_valid_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 ValidRequestWithoutRepo.ProtoReflect.Descriptor instead.
+func (*ValidRequestWithoutRepo) Descriptor() ([]byte, []int) {
+ return file_testproto_valid_proto_rawDescGZIP(), []int{1}
+}
+
+type ValidStorageRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ StorageName string `protobuf:"bytes,1,opt,name=storage_name,json=storageName,proto3" json:"storage_name,omitempty"`
+}
+
+func (x *ValidStorageRequest) Reset() {
+ *x = ValidStorageRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_valid_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidStorageRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidStorageRequest) ProtoMessage() {}
+
+func (x *ValidStorageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_valid_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 ValidStorageRequest.ProtoReflect.Descriptor instead.
+func (*ValidStorageRequest) Descriptor() ([]byte, []int) {
+ return file_testproto_valid_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ValidStorageRequest) GetStorageName() string {
+ if x != nil {
+ return x.StorageName
+ }
+ return ""
+}
+
+type ValidResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *ValidResponse) Reset() {
+ *x = ValidResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_valid_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidResponse) ProtoMessage() {}
+
+func (x *ValidResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_valid_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 ValidResponse.ProtoReflect.Descriptor instead.
+func (*ValidResponse) Descriptor() ([]byte, []int) {
+ return file_testproto_valid_proto_rawDescGZIP(), []int{3}
+}
+
+type ValidNestedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ InnerMessage *ValidRequest `protobuf:"bytes,1,opt,name=inner_message,json=innerMessage,proto3" json:"inner_message,omitempty"`
+}
+
+func (x *ValidNestedRequest) Reset() {
+ *x = ValidNestedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_valid_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidNestedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidNestedRequest) ProtoMessage() {}
+
+func (x *ValidNestedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_valid_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 ValidNestedRequest.ProtoReflect.Descriptor instead.
+func (*ValidNestedRequest) Descriptor() ([]byte, []int) {
+ return file_testproto_valid_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *ValidNestedRequest) GetInnerMessage() *ValidRequest {
+ if x != nil {
+ return x.InnerMessage
+ }
+ return nil
+}
+
+type ValidStorageNestedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ InnerMessage *ValidStorageRequest `protobuf:"bytes,1,opt,name=inner_message,json=innerMessage,proto3" json:"inner_message,omitempty"`
+}
+
+func (x *ValidStorageNestedRequest) Reset() {
+ *x = ValidStorageNestedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_valid_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidStorageNestedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidStorageNestedRequest) ProtoMessage() {}
+
+func (x *ValidStorageNestedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_valid_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 ValidStorageNestedRequest.ProtoReflect.Descriptor instead.
+func (*ValidStorageNestedRequest) Descriptor() ([]byte, []int) {
+ return file_testproto_valid_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *ValidStorageNestedRequest) GetInnerMessage() *ValidStorageRequest {
+ if x != nil {
+ return x.InnerMessage
+ }
+ return nil
+}
+
+type ValidNestedSharedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ NestedTargetRepo *gitalypb.ObjectPool `protobuf:"bytes,1,opt,name=nested_target_repo,json=nestedTargetRepo,proto3" json:"nested_target_repo,omitempty"`
+}
+
+func (x *ValidNestedSharedRequest) Reset() {
+ *x = ValidNestedSharedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_valid_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidNestedSharedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidNestedSharedRequest) ProtoMessage() {}
+
+func (x *ValidNestedSharedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_valid_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 ValidNestedSharedRequest.ProtoReflect.Descriptor instead.
+func (*ValidNestedSharedRequest) Descriptor() ([]byte, []int) {
+ return file_testproto_valid_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *ValidNestedSharedRequest) GetNestedTargetRepo() *gitalypb.ObjectPool {
+ if x != nil {
+ return x.NestedTargetRepo
+ }
+ return nil
+}
+
+type ValidInnerNestedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Header *ValidInnerNestedRequest_Header `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
+}
+
+func (x *ValidInnerNestedRequest) Reset() {
+ *x = ValidInnerNestedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_valid_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidInnerNestedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidInnerNestedRequest) ProtoMessage() {}
+
+func (x *ValidInnerNestedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_valid_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 ValidInnerNestedRequest.ProtoReflect.Descriptor instead.
+func (*ValidInnerNestedRequest) Descriptor() ([]byte, []int) {
+ return file_testproto_valid_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *ValidInnerNestedRequest) GetHeader() *ValidInnerNestedRequest_Header {
+ if x != nil {
+ return x.Header
+ }
+ return nil
+}
+
+type ValidStorageInnerNestedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Header *ValidStorageInnerNestedRequest_Header `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
+}
+
+func (x *ValidStorageInnerNestedRequest) Reset() {
+ *x = ValidStorageInnerNestedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_valid_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidStorageInnerNestedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidStorageInnerNestedRequest) ProtoMessage() {}
+
+func (x *ValidStorageInnerNestedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_valid_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 ValidStorageInnerNestedRequest.ProtoReflect.Descriptor instead.
+func (*ValidStorageInnerNestedRequest) Descriptor() ([]byte, []int) {
+ return file_testproto_valid_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *ValidStorageInnerNestedRequest) GetHeader() *ValidStorageInnerNestedRequest_Header {
+ if x != nil {
+ return x.Header
+ }
+ return nil
+}
+
+type ValidInnerNestedRequest_Header struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ Destination *gitalypb.Repository `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
+}
+
+func (x *ValidInnerNestedRequest_Header) Reset() {
+ *x = ValidInnerNestedRequest_Header{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_valid_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidInnerNestedRequest_Header) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidInnerNestedRequest_Header) ProtoMessage() {}
+
+func (x *ValidInnerNestedRequest_Header) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_valid_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 ValidInnerNestedRequest_Header.ProtoReflect.Descriptor instead.
+func (*ValidInnerNestedRequest_Header) Descriptor() ([]byte, []int) {
+ return file_testproto_valid_proto_rawDescGZIP(), []int{7, 0}
+}
+
+func (x *ValidInnerNestedRequest_Header) GetDestination() *gitalypb.Repository {
+ if x != nil {
+ return x.Destination
+ }
+ return nil
+}
+
+type ValidStorageInnerNestedRequest_Header struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ StorageName string `protobuf:"bytes,1,opt,name=storage_name,json=storageName,proto3" json:"storage_name,omitempty"`
+}
+
+func (x *ValidStorageInnerNestedRequest_Header) Reset() {
+ *x = ValidStorageInnerNestedRequest_Header{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_testproto_valid_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidStorageInnerNestedRequest_Header) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidStorageInnerNestedRequest_Header) ProtoMessage() {}
+
+func (x *ValidStorageInnerNestedRequest_Header) ProtoReflect() protoreflect.Message {
+ mi := &file_testproto_valid_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 ValidStorageInnerNestedRequest_Header.ProtoReflect.Descriptor instead.
+func (*ValidStorageInnerNestedRequest_Header) Descriptor() ([]byte, []int) {
+ return file_testproto_valid_proto_rawDescGZIP(), []int{8, 0}
+}
+
+func (x *ValidStorageInnerNestedRequest_Header) GetStorageName() string {
+ if x != nil {
+ return x.StorageName
+ }
+ return ""
+}
+
+var File_testproto_valid_proto protoreflect.FileDescriptor
+
+var file_testproto_valid_proto_rawDesc = []byte{
+ 0x0a, 0x15, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x61, 0x6c, 0x69,
+ 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x0a, 0x6c, 0x69, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0c,
+ 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x4a, 0x0a, 0x0c,
+ 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x0b,
+ 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 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, 0x0b, 0x64, 0x65, 0x73,
+ 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x19, 0x0a, 0x17, 0x56, 0x61, 0x6c, 0x69,
+ 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74, 0x52,
+ 0x65, 0x70, 0x6f, 0x22, 0x3e, 0x0a, 0x13, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x74, 0x6f, 0x72,
+ 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0c, 0x73, 0x74,
+ 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x04, 0x88, 0xc6, 0x2c, 0x01, 0x52, 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4e,
+ 0x61, 0x6d, 0x65, 0x22, 0x0f, 0x0a, 0x0d, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x52, 0x0a, 0x12, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x4e, 0x65, 0x73,
+ 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x0d, 0x69, 0x6e,
+ 0x6e, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x17, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61,
+ 0x6c, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0c, 0x69, 0x6e, 0x6e, 0x65,
+ 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x60, 0x0a, 0x19, 0x56, 0x61, 0x6c, 0x69,
+ 0x64, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x0d, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x6d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x74,
+ 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x74,
+ 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0c, 0x69, 0x6e,
+ 0x6e, 0x65, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x62, 0x0a, 0x18, 0x56, 0x61,
+ 0x6c, 0x69, 0x64, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x12, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64,
+ 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x79, 0x2e, 0x4f, 0x62, 0x6a, 0x65,
+ 0x63, 0x74, 0x50, 0x6f, 0x6f, 0x6c, 0x42, 0x04, 0x98, 0xc6, 0x2c, 0x01, 0x52, 0x10, 0x6e, 0x65,
+ 0x73, 0x74, 0x65, 0x64, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x22, 0xa2,
+ 0x01, 0x0a, 0x17, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4e, 0x65, 0x73,
+ 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x68, 0x65,
+ 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x74, 0x65, 0x73,
+ 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x6e, 0x65,
+ 0x72, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x48,
+ 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x1a, 0x44, 0x0a,
+ 0x06, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x3a, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69,
+ 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 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, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x22, 0x9d, 0x01, 0x0a, 0x1e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x74, 0x6f,
+ 0x72, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x48, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x49,
+ 0x6e, 0x6e, 0x65, 0x72, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72,
+ 0x1a, 0x31, 0x0a, 0x06, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0c, 0x73, 0x74,
+ 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x04, 0x88, 0xc6, 0x2c, 0x01, 0x52, 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x4e,
+ 0x61, 0x6d, 0x65, 0x32, 0x5b, 0x0a, 0x12, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74,
+ 0x65, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3f, 0x0a, 0x0a, 0x54, 0x65, 0x73,
+ 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x17, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c,
+ 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x1a, 0x04, 0xf0, 0x97, 0x28, 0x01,
+ 0x32, 0xd0, 0x09, 0x0a, 0x0c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x12, 0x47, 0x0a, 0x0a, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12,
+ 0x17, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69,
+ 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x02, 0x12, 0x48, 0x0a, 0x0b, 0x54, 0x65,
+ 0x73, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x32, 0x12, 0x17, 0x2e, 0x74, 0x65, 0x73, 0x74,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56,
+ 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97,
+ 0x28, 0x02, 0x08, 0x01, 0x12, 0x48, 0x0a, 0x0b, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x68,
+ 0x6f, 0x64, 0x33, 0x12, 0x17, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
+ 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x74,
+ 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x4e,
+ 0x0a, 0x0b, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x35, 0x12, 0x1d, 0x2e,
+ 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x4e,
+ 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x74,
+ 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x54,
+ 0x0a, 0x0b, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x36, 0x12, 0x23, 0x2e,
+ 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x4e,
+ 0x65, 0x73, 0x74, 0x65, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56,
+ 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97,
+ 0x28, 0x02, 0x08, 0x01, 0x12, 0x53, 0x0a, 0x0b, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x68,
+ 0x6f, 0x64, 0x37, 0x12, 0x22, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
+ 0x56, 0x61, 0x6c, 0x69, 0x64, 0x49, 0x6e, 0x6e, 0x65, 0x72, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x01, 0x12, 0x51, 0x0a, 0x0b, 0x54, 0x65, 0x73,
+ 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x38, 0x12, 0x1e, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x08, 0xfa, 0x97, 0x28, 0x04, 0x08, 0x01, 0x10, 0x02, 0x12, 0x57, 0x0a, 0x0b,
+ 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x39, 0x12, 0x24, 0x2e, 0x74, 0x65,
+ 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x74, 0x6f,
+ 0x72, 0x61, 0x67, 0x65, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61,
+ 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x08, 0xfa, 0x97, 0x28,
+ 0x04, 0x08, 0x01, 0x10, 0x02, 0x12, 0x4e, 0x0a, 0x0c, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74,
+ 0x68, 0x6f, 0x64, 0x31, 0x30, 0x12, 0x1e, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x04, 0x80, 0x98, 0x28, 0x01, 0x12, 0x4c, 0x0a, 0x0f, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x69,
+ 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x17, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61,
+ 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28,
+ 0x02, 0x08, 0x03, 0x12, 0x5d, 0x0a, 0x20, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x69, 0x6e, 0x74,
+ 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x45, 0x78, 0x70, 0x6c, 0x69, 0x63,
+ 0x69, 0x74, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x17, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c,
+ 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02,
+ 0x08, 0x03, 0x12, 0x63, 0x0a, 0x20, 0x54, 0x65, 0x73, 0x74, 0x4d, 0x61, 0x69, 0x6e, 0x74, 0x65,
+ 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x03, 0x12, 0x6f, 0x0a, 0x26, 0x54, 0x65, 0x73, 0x74, 0x4d,
+ 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x57, 0x69, 0x74, 0x68, 0x4e, 0x65,
+ 0x73, 0x74, 0x65, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x23, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61,
+ 0x6c, 0x69, 0x64, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x64, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x06, 0xfa, 0x97, 0x28, 0x02, 0x08, 0x03, 0x12, 0x69, 0x0a, 0x21, 0x54, 0x65, 0x73, 0x74,
+ 0x4d, 0x75, 0x74, 0x61, 0x74, 0x6f, 0x72, 0x57, 0x69, 0x74, 0x68, 0x49, 0x6e, 0x6e, 0x65, 0x72,
+ 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x2e,
+ 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x49,
+ 0x6e, 0x6e, 0x65, 0x72, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x18, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61,
+ 0x6c, 0x69, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x06, 0xfa, 0x97, 0x28,
+ 0x02, 0x08, 0x03, 0x42, 0x32, 0x5a, 0x30, 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, 0x35, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x74, 0x65,
+ 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_testproto_valid_proto_rawDescOnce sync.Once
+ file_testproto_valid_proto_rawDescData = file_testproto_valid_proto_rawDesc
+)
+
+func file_testproto_valid_proto_rawDescGZIP() []byte {
+ file_testproto_valid_proto_rawDescOnce.Do(func() {
+ file_testproto_valid_proto_rawDescData = protoimpl.X.CompressGZIP(file_testproto_valid_proto_rawDescData)
+ })
+ return file_testproto_valid_proto_rawDescData
+}
+
+var file_testproto_valid_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
+var file_testproto_valid_proto_goTypes = []interface{}{
+ (*ValidRequest)(nil), // 0: testproto.ValidRequest
+ (*ValidRequestWithoutRepo)(nil), // 1: testproto.ValidRequestWithoutRepo
+ (*ValidStorageRequest)(nil), // 2: testproto.ValidStorageRequest
+ (*ValidResponse)(nil), // 3: testproto.ValidResponse
+ (*ValidNestedRequest)(nil), // 4: testproto.ValidNestedRequest
+ (*ValidStorageNestedRequest)(nil), // 5: testproto.ValidStorageNestedRequest
+ (*ValidNestedSharedRequest)(nil), // 6: testproto.ValidNestedSharedRequest
+ (*ValidInnerNestedRequest)(nil), // 7: testproto.ValidInnerNestedRequest
+ (*ValidStorageInnerNestedRequest)(nil), // 8: testproto.ValidStorageInnerNestedRequest
+ (*ValidInnerNestedRequest_Header)(nil), // 9: testproto.ValidInnerNestedRequest.Header
+ (*ValidStorageInnerNestedRequest_Header)(nil), // 10: testproto.ValidStorageInnerNestedRequest.Header
+ (*gitalypb.Repository)(nil), // 11: gitaly.Repository
+ (*gitalypb.ObjectPool)(nil), // 12: gitaly.ObjectPool
+}
+var file_testproto_valid_proto_depIdxs = []int32{
+ 11, // 0: testproto.ValidRequest.destination:type_name -> gitaly.Repository
+ 0, // 1: testproto.ValidNestedRequest.inner_message:type_name -> testproto.ValidRequest
+ 2, // 2: testproto.ValidStorageNestedRequest.inner_message:type_name -> testproto.ValidStorageRequest
+ 12, // 3: testproto.ValidNestedSharedRequest.nested_target_repo:type_name -> gitaly.ObjectPool
+ 9, // 4: testproto.ValidInnerNestedRequest.header:type_name -> testproto.ValidInnerNestedRequest.Header
+ 10, // 5: testproto.ValidStorageInnerNestedRequest.header:type_name -> testproto.ValidStorageInnerNestedRequest.Header
+ 11, // 6: testproto.ValidInnerNestedRequest.Header.destination:type_name -> gitaly.Repository
+ 0, // 7: testproto.InterceptedService.TestMethod:input_type -> testproto.ValidRequest
+ 0, // 8: testproto.ValidService.TestMethod:input_type -> testproto.ValidRequest
+ 0, // 9: testproto.ValidService.TestMethod2:input_type -> testproto.ValidRequest
+ 0, // 10: testproto.ValidService.TestMethod3:input_type -> testproto.ValidRequest
+ 4, // 11: testproto.ValidService.TestMethod5:input_type -> testproto.ValidNestedRequest
+ 6, // 12: testproto.ValidService.TestMethod6:input_type -> testproto.ValidNestedSharedRequest
+ 7, // 13: testproto.ValidService.TestMethod7:input_type -> testproto.ValidInnerNestedRequest
+ 2, // 14: testproto.ValidService.TestMethod8:input_type -> testproto.ValidStorageRequest
+ 5, // 15: testproto.ValidService.TestMethod9:input_type -> testproto.ValidStorageNestedRequest
+ 2, // 16: testproto.ValidService.TestMethod10:input_type -> testproto.ValidStorageRequest
+ 0, // 17: testproto.ValidService.TestMaintenance:input_type -> testproto.ValidRequest
+ 0, // 18: testproto.ValidService.TestMaintenanceWithExplicitScope:input_type -> testproto.ValidRequest
+ 4, // 19: testproto.ValidService.TestMaintenanceWithNestedRequest:input_type -> testproto.ValidNestedRequest
+ 6, // 20: testproto.ValidService.TestMaintenanceWithNestedSharedRequest:input_type -> testproto.ValidNestedSharedRequest
+ 7, // 21: testproto.ValidService.TestMutatorWithInnerNestedRequest:input_type -> testproto.ValidInnerNestedRequest
+ 3, // 22: testproto.InterceptedService.TestMethod:output_type -> testproto.ValidResponse
+ 3, // 23: testproto.ValidService.TestMethod:output_type -> testproto.ValidResponse
+ 3, // 24: testproto.ValidService.TestMethod2:output_type -> testproto.ValidResponse
+ 3, // 25: testproto.ValidService.TestMethod3:output_type -> testproto.ValidResponse
+ 3, // 26: testproto.ValidService.TestMethod5:output_type -> testproto.ValidResponse
+ 3, // 27: testproto.ValidService.TestMethod6:output_type -> testproto.ValidResponse
+ 3, // 28: testproto.ValidService.TestMethod7:output_type -> testproto.ValidResponse
+ 3, // 29: testproto.ValidService.TestMethod8:output_type -> testproto.ValidResponse
+ 3, // 30: testproto.ValidService.TestMethod9:output_type -> testproto.ValidResponse
+ 3, // 31: testproto.ValidService.TestMethod10:output_type -> testproto.ValidResponse
+ 3, // 32: testproto.ValidService.TestMaintenance:output_type -> testproto.ValidResponse
+ 3, // 33: testproto.ValidService.TestMaintenanceWithExplicitScope:output_type -> testproto.ValidResponse
+ 3, // 34: testproto.ValidService.TestMaintenanceWithNestedRequest:output_type -> testproto.ValidResponse
+ 3, // 35: testproto.ValidService.TestMaintenanceWithNestedSharedRequest:output_type -> testproto.ValidResponse
+ 3, // 36: testproto.ValidService.TestMutatorWithInnerNestedRequest:output_type -> testproto.ValidResponse
+ 22, // [22:37] is the sub-list for method output_type
+ 7, // [7:22] is the sub-list for method input_type
+ 7, // [7:7] is the sub-list for extension type_name
+ 7, // [7:7] is the sub-list for extension extendee
+ 0, // [0:7] is the sub-list for field type_name
+}
+
+func init() { file_testproto_valid_proto_init() }
+func file_testproto_valid_proto_init() {
+ if File_testproto_valid_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_testproto_valid_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_valid_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidRequestWithoutRepo); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_valid_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidStorageRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_valid_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_valid_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidNestedRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_valid_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidStorageNestedRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_valid_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidNestedSharedRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_valid_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidInnerNestedRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_valid_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidStorageInnerNestedRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_valid_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidInnerNestedRequest_Header); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_testproto_valid_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidStorageInnerNestedRequest_Header); 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_testproto_valid_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 11,
+ NumExtensions: 0,
+ NumServices: 2,
+ },
+ GoTypes: file_testproto_valid_proto_goTypes,
+ DependencyIndexes: file_testproto_valid_proto_depIdxs,
+ MessageInfos: file_testproto_valid_proto_msgTypes,
+ }.Build()
+ File_testproto_valid_proto = out.File
+ file_testproto_valid_proto_rawDesc = nil
+ file_testproto_valid_proto_goTypes = nil
+ file_testproto_valid_proto_depIdxs = nil
+}
diff --git a/proto/go/gitalypb/testproto/valid_grpc.pb.go b/proto/go/gitalypb/testproto/valid_grpc.pb.go
new file mode 100644
index 000000000..ce761c40a
--- /dev/null
+++ b/proto/go/gitalypb/testproto/valid_grpc.pb.go
@@ -0,0 +1,661 @@
+// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
+// versions:
+// - protoc-gen-go-grpc v1.2.0
+// - protoc v3.21.7
+// source: testproto/valid.proto
+
+package testproto
+
+import (
+ context "context"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+// Requires gRPC-Go v1.32.0 or later.
+const _ = grpc.SupportPackageIsVersion7
+
+// InterceptedServiceClient is the client API for InterceptedService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type InterceptedServiceClient interface {
+ TestMethod(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+}
+
+type interceptedServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewInterceptedServiceClient(cc grpc.ClientConnInterface) InterceptedServiceClient {
+ return &interceptedServiceClient{cc}
+}
+
+func (c *interceptedServiceClient) TestMethod(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.InterceptedService/TestMethod", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// InterceptedServiceServer is the server API for InterceptedService service.
+// All implementations must embed UnimplementedInterceptedServiceServer
+// for forward compatibility
+type InterceptedServiceServer interface {
+ TestMethod(context.Context, *ValidRequest) (*ValidResponse, error)
+ mustEmbedUnimplementedInterceptedServiceServer()
+}
+
+// UnimplementedInterceptedServiceServer must be embedded to have forward compatible implementations.
+type UnimplementedInterceptedServiceServer struct {
+}
+
+func (UnimplementedInterceptedServiceServer) TestMethod(context.Context, *ValidRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMethod not implemented")
+}
+func (UnimplementedInterceptedServiceServer) mustEmbedUnimplementedInterceptedServiceServer() {}
+
+// UnsafeInterceptedServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to InterceptedServiceServer will
+// result in compilation errors.
+type UnsafeInterceptedServiceServer interface {
+ mustEmbedUnimplementedInterceptedServiceServer()
+}
+
+func RegisterInterceptedServiceServer(s grpc.ServiceRegistrar, srv InterceptedServiceServer) {
+ s.RegisterService(&InterceptedService_ServiceDesc, srv)
+}
+
+func _InterceptedService_TestMethod_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(InterceptedServiceServer).TestMethod(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.InterceptedService/TestMethod",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(InterceptedServiceServer).TestMethod(ctx, req.(*ValidRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// InterceptedService_ServiceDesc is the grpc.ServiceDesc for InterceptedService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var InterceptedService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "testproto.InterceptedService",
+ HandlerType: (*InterceptedServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "TestMethod",
+ Handler: _InterceptedService_TestMethod_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "testproto/valid.proto",
+}
+
+// ValidServiceClient is the client API for ValidService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type ValidServiceClient interface {
+ TestMethod(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMethod2(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMethod3(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMethod5(ctx context.Context, in *ValidNestedRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMethod6(ctx context.Context, in *ValidNestedSharedRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMethod7(ctx context.Context, in *ValidInnerNestedRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMethod8(ctx context.Context, in *ValidStorageRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMethod9(ctx context.Context, in *ValidStorageNestedRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ // Intercepted methods do not need operation type annotations.
+ TestMethod10(ctx context.Context, in *ValidStorageRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMaintenance(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMaintenanceWithExplicitScope(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMaintenanceWithNestedRequest(ctx context.Context, in *ValidNestedRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMaintenanceWithNestedSharedRequest(ctx context.Context, in *ValidNestedSharedRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+ TestMutatorWithInnerNestedRequest(ctx context.Context, in *ValidInnerNestedRequest, opts ...grpc.CallOption) (*ValidResponse, error)
+}
+
+type validServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewValidServiceClient(cc grpc.ClientConnInterface) ValidServiceClient {
+ return &validServiceClient{cc}
+}
+
+func (c *validServiceClient) TestMethod(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMethod", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMethod2(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMethod2", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMethod3(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMethod3", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMethod5(ctx context.Context, in *ValidNestedRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMethod5", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMethod6(ctx context.Context, in *ValidNestedSharedRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMethod6", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMethod7(ctx context.Context, in *ValidInnerNestedRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMethod7", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMethod8(ctx context.Context, in *ValidStorageRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMethod8", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMethod9(ctx context.Context, in *ValidStorageNestedRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMethod9", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMethod10(ctx context.Context, in *ValidStorageRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMethod10", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMaintenance(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMaintenance", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMaintenanceWithExplicitScope(ctx context.Context, in *ValidRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMaintenanceWithExplicitScope", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMaintenanceWithNestedRequest(ctx context.Context, in *ValidNestedRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMaintenanceWithNestedRequest", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMaintenanceWithNestedSharedRequest(ctx context.Context, in *ValidNestedSharedRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMaintenanceWithNestedSharedRequest", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *validServiceClient) TestMutatorWithInnerNestedRequest(ctx context.Context, in *ValidInnerNestedRequest, opts ...grpc.CallOption) (*ValidResponse, error) {
+ out := new(ValidResponse)
+ err := c.cc.Invoke(ctx, "/testproto.ValidService/TestMutatorWithInnerNestedRequest", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// ValidServiceServer is the server API for ValidService service.
+// All implementations must embed UnimplementedValidServiceServer
+// for forward compatibility
+type ValidServiceServer interface {
+ TestMethod(context.Context, *ValidRequest) (*ValidResponse, error)
+ TestMethod2(context.Context, *ValidRequest) (*ValidResponse, error)
+ TestMethod3(context.Context, *ValidRequest) (*ValidResponse, error)
+ TestMethod5(context.Context, *ValidNestedRequest) (*ValidResponse, error)
+ TestMethod6(context.Context, *ValidNestedSharedRequest) (*ValidResponse, error)
+ TestMethod7(context.Context, *ValidInnerNestedRequest) (*ValidResponse, error)
+ TestMethod8(context.Context, *ValidStorageRequest) (*ValidResponse, error)
+ TestMethod9(context.Context, *ValidStorageNestedRequest) (*ValidResponse, error)
+ // Intercepted methods do not need operation type annotations.
+ TestMethod10(context.Context, *ValidStorageRequest) (*ValidResponse, error)
+ TestMaintenance(context.Context, *ValidRequest) (*ValidResponse, error)
+ TestMaintenanceWithExplicitScope(context.Context, *ValidRequest) (*ValidResponse, error)
+ TestMaintenanceWithNestedRequest(context.Context, *ValidNestedRequest) (*ValidResponse, error)
+ TestMaintenanceWithNestedSharedRequest(context.Context, *ValidNestedSharedRequest) (*ValidResponse, error)
+ TestMutatorWithInnerNestedRequest(context.Context, *ValidInnerNestedRequest) (*ValidResponse, error)
+ mustEmbedUnimplementedValidServiceServer()
+}
+
+// UnimplementedValidServiceServer must be embedded to have forward compatible implementations.
+type UnimplementedValidServiceServer struct {
+}
+
+func (UnimplementedValidServiceServer) TestMethod(context.Context, *ValidRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMethod not implemented")
+}
+func (UnimplementedValidServiceServer) TestMethod2(context.Context, *ValidRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMethod2 not implemented")
+}
+func (UnimplementedValidServiceServer) TestMethod3(context.Context, *ValidRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMethod3 not implemented")
+}
+func (UnimplementedValidServiceServer) TestMethod5(context.Context, *ValidNestedRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMethod5 not implemented")
+}
+func (UnimplementedValidServiceServer) TestMethod6(context.Context, *ValidNestedSharedRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMethod6 not implemented")
+}
+func (UnimplementedValidServiceServer) TestMethod7(context.Context, *ValidInnerNestedRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMethod7 not implemented")
+}
+func (UnimplementedValidServiceServer) TestMethod8(context.Context, *ValidStorageRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMethod8 not implemented")
+}
+func (UnimplementedValidServiceServer) TestMethod9(context.Context, *ValidStorageNestedRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMethod9 not implemented")
+}
+func (UnimplementedValidServiceServer) TestMethod10(context.Context, *ValidStorageRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMethod10 not implemented")
+}
+func (UnimplementedValidServiceServer) TestMaintenance(context.Context, *ValidRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMaintenance not implemented")
+}
+func (UnimplementedValidServiceServer) TestMaintenanceWithExplicitScope(context.Context, *ValidRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMaintenanceWithExplicitScope not implemented")
+}
+func (UnimplementedValidServiceServer) TestMaintenanceWithNestedRequest(context.Context, *ValidNestedRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMaintenanceWithNestedRequest not implemented")
+}
+func (UnimplementedValidServiceServer) TestMaintenanceWithNestedSharedRequest(context.Context, *ValidNestedSharedRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMaintenanceWithNestedSharedRequest not implemented")
+}
+func (UnimplementedValidServiceServer) TestMutatorWithInnerNestedRequest(context.Context, *ValidInnerNestedRequest) (*ValidResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TestMutatorWithInnerNestedRequest not implemented")
+}
+func (UnimplementedValidServiceServer) mustEmbedUnimplementedValidServiceServer() {}
+
+// UnsafeValidServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to ValidServiceServer will
+// result in compilation errors.
+type UnsafeValidServiceServer interface {
+ mustEmbedUnimplementedValidServiceServer()
+}
+
+func RegisterValidServiceServer(s grpc.ServiceRegistrar, srv ValidServiceServer) {
+ s.RegisterService(&ValidService_ServiceDesc, srv)
+}
+
+func _ValidService_TestMethod_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMethod(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMethod",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMethod(ctx, req.(*ValidRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMethod2_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMethod2(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMethod2",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMethod2(ctx, req.(*ValidRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMethod3_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMethod3(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMethod3",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMethod3(ctx, req.(*ValidRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMethod5_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidNestedRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMethod5(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMethod5",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMethod5(ctx, req.(*ValidNestedRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMethod6_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidNestedSharedRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMethod6(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMethod6",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMethod6(ctx, req.(*ValidNestedSharedRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMethod7_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidInnerNestedRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMethod7(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMethod7",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMethod7(ctx, req.(*ValidInnerNestedRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMethod8_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidStorageRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMethod8(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMethod8",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMethod8(ctx, req.(*ValidStorageRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMethod9_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidStorageNestedRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMethod9(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMethod9",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMethod9(ctx, req.(*ValidStorageNestedRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMethod10_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidStorageRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMethod10(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMethod10",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMethod10(ctx, req.(*ValidStorageRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMaintenance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMaintenance(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMaintenance",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMaintenance(ctx, req.(*ValidRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMaintenanceWithExplicitScope_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMaintenanceWithExplicitScope(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMaintenanceWithExplicitScope",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMaintenanceWithExplicitScope(ctx, req.(*ValidRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMaintenanceWithNestedRequest_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidNestedRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMaintenanceWithNestedRequest(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMaintenanceWithNestedRequest",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMaintenanceWithNestedRequest(ctx, req.(*ValidNestedRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMaintenanceWithNestedSharedRequest_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidNestedSharedRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMaintenanceWithNestedSharedRequest(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMaintenanceWithNestedSharedRequest",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMaintenanceWithNestedSharedRequest(ctx, req.(*ValidNestedSharedRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ValidService_TestMutatorWithInnerNestedRequest_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ValidInnerNestedRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ValidServiceServer).TestMutatorWithInnerNestedRequest(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/testproto.ValidService/TestMutatorWithInnerNestedRequest",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ValidServiceServer).TestMutatorWithInnerNestedRequest(ctx, req.(*ValidInnerNestedRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// ValidService_ServiceDesc is the grpc.ServiceDesc for ValidService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var ValidService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "testproto.ValidService",
+ HandlerType: (*ValidServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "TestMethod",
+ Handler: _ValidService_TestMethod_Handler,
+ },
+ {
+ MethodName: "TestMethod2",
+ Handler: _ValidService_TestMethod2_Handler,
+ },
+ {
+ MethodName: "TestMethod3",
+ Handler: _ValidService_TestMethod3_Handler,
+ },
+ {
+ MethodName: "TestMethod5",
+ Handler: _ValidService_TestMethod5_Handler,
+ },
+ {
+ MethodName: "TestMethod6",
+ Handler: _ValidService_TestMethod6_Handler,
+ },
+ {
+ MethodName: "TestMethod7",
+ Handler: _ValidService_TestMethod7_Handler,
+ },
+ {
+ MethodName: "TestMethod8",
+ Handler: _ValidService_TestMethod8_Handler,
+ },
+ {
+ MethodName: "TestMethod9",
+ Handler: _ValidService_TestMethod9_Handler,
+ },
+ {
+ MethodName: "TestMethod10",
+ Handler: _ValidService_TestMethod10_Handler,
+ },
+ {
+ MethodName: "TestMaintenance",
+ Handler: _ValidService_TestMaintenance_Handler,
+ },
+ {
+ MethodName: "TestMaintenanceWithExplicitScope",
+ Handler: _ValidService_TestMaintenanceWithExplicitScope_Handler,
+ },
+ {
+ MethodName: "TestMaintenanceWithNestedRequest",
+ Handler: _ValidService_TestMaintenanceWithNestedRequest_Handler,
+ },
+ {
+ MethodName: "TestMaintenanceWithNestedSharedRequest",
+ Handler: _ValidService_TestMaintenanceWithNestedSharedRequest_Handler,
+ },
+ {
+ MethodName: "TestMutatorWithInnerNestedRequest",
+ Handler: _ValidService_TestMutatorWithInnerNestedRequest_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "testproto/valid.proto",
+}
diff --git a/proto/testproto/invalid.proto b/proto/testproto/invalid.proto
new file mode 100644
index 000000000..d9b993c89
--- /dev/null
+++ b/proto/testproto/invalid.proto
@@ -0,0 +1,213 @@
+syntax = "proto3";
+
+package testproto;
+
+import "lint.proto";
+import "shared.proto";
+
+option go_package = "gitlab.com/gitlab-org/gitaly/v15/proto/testproto";
+
+message InvalidMethodRequest {
+}
+
+message InvalidMethodRequestWithRepo {
+ gitaly.Repository destination = 1 [(gitaly.target_repository)=true];
+}
+
+message InvalidTargetType {
+ int32 wrong_type = 1 [(gitaly.target_repository)=true];
+}
+
+message InvalidMethodResponse{
+}
+
+message InvalidNestedRequest{
+ InvalidTargetType inner_message = 1;
+}
+
+message RequestWithStorage {
+ string storage_name = 1 [(gitaly.storage)=true];
+ gitaly.Repository destination = 2;
+}
+
+message RequestWithStorageAndRepo {
+ string storage_name = 1 [(gitaly.storage)=true];
+ gitaly.Repository destination = 2 [(gitaly.target_repository)=true];
+}
+
+message RequestWithNestedStorageAndRepo{
+ RequestWithStorageAndRepo inner_message = 1;
+}
+
+message RequestWithMultipleNestedStorage{
+ RequestWithStorage inner_message = 1;
+ string storage_name = 2 [(gitaly.storage)=true];
+}
+
+message RequestWithInnerNestedStorage {
+ message Header {
+ string storage_name = 1 [(gitaly.storage) = true];
+ }
+
+ Header header = 1;
+}
+
+message RequestWithWrongTypeRepository {
+ message Header {
+ InvalidMethodResponse repository = 1 [(gitaly.repository) = true];
+ }
+
+ Header header = 1 [(gitaly.target_repository) = true];
+}
+
+message RequestWithNestedRepoNotFlagged {
+ message Header {
+ gitaly.Repository repository = 1;
+ }
+
+ Header header = 1 [(gitaly.target_repository) = true];
+}
+
+service InterceptedWithOperationType {
+ option (gitaly.intercepted) = true;
+
+ // intercepted services can't have operation type annotations.
+ rpc InvalidMethod(InvalidMethodRequest) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: ACCESSOR
+ };
+ }
+}
+
+service InvalidService {
+ // should fail if op_type extension is missing
+ rpc InvalidMethod0(InvalidMethodRequest) returns (InvalidMethodResponse) {}
+
+ // should fail if op type is unknown
+ rpc InvalidMethod1(InvalidMethodRequest) returns (InvalidMethodResponse) {
+ option (gitaly.op_type).op = UNKNOWN;
+ }
+ // should fail if target repo is not provided for accessor
+ rpc InvalidMethod2(InvalidMethodRequest) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: ACCESSOR
+ };
+ }
+ // should fail if missing either target repo or non-repo-scope for mutator
+ rpc InvalidMethod4(InvalidMethodRequest) returns (InvalidMethodResponse) {
+ option (gitaly.op_type).op = MUTATOR;
+ }
+
+ // should fail if repository is not of type Repository
+ rpc InvalidMethod5(RequestWithWrongTypeRepository) returns (InvalidMethodResponse) {
+ option (gitaly.op_type).op = MUTATOR;
+ }
+
+ // should fail if nested repository isn't flagged
+ rpc InvalidMethod6(RequestWithNestedRepoNotFlagged) returns (InvalidMethodResponse) {
+ option (gitaly.op_type).op = MUTATOR;
+ }
+ // should fail if target field type is not of type Repository
+ rpc InvalidMethod7(InvalidTargetType) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ };
+ }
+
+ // should fail if nested target field type is not of type Repository
+ rpc InvalidMethod8(InvalidNestedRequest) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ };
+ }
+ // should fail if target repo is specified for storage scoped RPC
+ rpc InvalidMethod9(InvalidMethodRequestWithRepo) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ scope_level: STORAGE
+ };
+ }
+
+ // should fail if storage is specified for implicit repository scoped RPC
+ rpc InvalidMethod10(RequestWithStorageAndRepo) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: ACCESSOR
+ };
+ }
+
+ // should fail if storage is specified for repository scoped RPC
+ rpc InvalidMethod11(RequestWithNestedStorageAndRepo) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ scope_level: REPOSITORY
+ };
+ }
+
+ // should fail if storage isn't specified for storage scoped RPC
+ rpc InvalidMethod13(InvalidTargetType) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ scope_level: STORAGE
+ };
+ }
+
+ // should fail if multiple storage is specified for storage scoped RPC
+ rpc InvalidMethod14(RequestWithMultipleNestedStorage) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ scope_level: STORAGE
+ };
+ }
+
+ // Intercepted methods must not have operation type annotations.
+ rpc InvalidMethod15(RequestWithStorageAndRepo) returns (InvalidMethodResponse) {
+ option (gitaly.intercepted_method) = true;
+ option (gitaly.op_type) = {};
+ };
+
+ rpc MaintenanceWithMissingRepository(InvalidMethodRequest) returns (InvalidMethodResponse) {
+ option (gitaly.op_type).op = MAINTENANCE;
+ }
+
+ rpc MaintenanceWithUnflaggedRepository(RequestWithNestedRepoNotFlagged) returns (InvalidMethodResponse) {
+ option (gitaly.op_type).op = MAINTENANCE;
+ }
+
+ rpc MaintenanceWithWrongNestedRepositoryType(RequestWithWrongTypeRepository) returns (InvalidMethodResponse) {
+ option (gitaly.op_type).op = MAINTENANCE;
+ }
+
+ rpc MaintenanceWithInvalidTargetType(InvalidTargetType) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: MAINTENANCE
+ };
+ }
+
+ rpc MaintenanceWithInvalidNestedRequest(InvalidNestedRequest) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: MAINTENANCE
+ };
+ }
+
+ rpc MaintenanceWithStorageAndRepository(RequestWithStorageAndRepo) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: MAINTENANCE
+ scope_level: REPOSITORY
+ };
+ }
+
+ rpc MaintenanceWithNestedStorageAndRepository(RequestWithNestedStorageAndRepo) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: MAINTENANCE
+ scope_level: REPOSITORY
+ };
+ }
+
+ rpc MaintenanceWithStorageScope(InvalidMethodRequestWithRepo) returns (InvalidMethodResponse) {
+ option (gitaly.op_type) = {
+ op: MAINTENANCE
+ scope_level: STORAGE
+ };
+ }
+
+}
diff --git a/proto/testproto/valid.proto b/proto/testproto/valid.proto
new file mode 100644
index 000000000..0a023d100
--- /dev/null
+++ b/proto/testproto/valid.proto
@@ -0,0 +1,148 @@
+syntax = "proto3";
+
+package testproto;
+
+import "lint.proto";
+import "shared.proto";
+
+option go_package = "gitlab.com/gitlab-org/gitaly/v15/proto/testproto";
+
+message ValidRequest {
+ gitaly.Repository destination = 1 [(gitaly.target_repository)=true];
+}
+
+message ValidRequestWithoutRepo {
+}
+
+message ValidStorageRequest {
+ string storage_name = 1 [(gitaly.storage)=true];
+}
+
+message ValidResponse{
+}
+
+message ValidNestedRequest{
+ ValidRequest inner_message = 1;
+}
+
+message ValidStorageNestedRequest{
+ ValidStorageRequest inner_message = 1;
+}
+
+message ValidNestedSharedRequest {
+ gitaly.ObjectPool nested_target_repo = 1 [(gitaly.target_repository)=true];
+}
+
+message ValidInnerNestedRequest {
+ message Header {
+ gitaly.Repository destination = 1 [(gitaly.target_repository)=true];
+ }
+
+ Header header = 1;
+}
+
+message ValidStorageInnerNestedRequest {
+ message Header {
+ string storage_name = 1 [(gitaly.storage) = true];
+ }
+
+ Header header = 1;
+}
+
+service InterceptedService {
+ // intercepted services do not need method operation and scope
+ // annotations.
+ option (gitaly.intercepted) = true;
+
+ rpc TestMethod(ValidRequest) returns (ValidResponse);
+}
+
+service ValidService {
+ rpc TestMethod(ValidRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: ACCESSOR
+ };
+ }
+
+ rpc TestMethod2(ValidRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ };
+ }
+
+ rpc TestMethod3(ValidRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ scope_level: REPOSITORY // repo can be explicitly included
+ };
+ }
+
+ rpc TestMethod5(ValidNestedRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ };
+ }
+
+ rpc TestMethod6(ValidNestedSharedRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ };
+ }
+
+ rpc TestMethod7(ValidInnerNestedRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ };
+ }
+
+ rpc TestMethod8(ValidStorageRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ scope_level: STORAGE
+ };
+ }
+
+ rpc TestMethod9(ValidStorageNestedRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MUTATOR
+ scope_level: STORAGE
+ };
+ }
+
+ // Intercepted methods do not need operation type annotations.
+ rpc TestMethod10(ValidStorageRequest) returns (ValidResponse) {
+ option (gitaly.intercepted_method) = true;
+ }
+
+ rpc TestMaintenance(ValidRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MAINTENANCE
+ };
+ }
+
+ rpc TestMaintenanceWithExplicitScope(ValidRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MAINTENANCE
+ scope_level: REPOSITORY // repo can be explicitly included
+ };
+ }
+
+ rpc TestMaintenanceWithNestedRequest(ValidNestedRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MAINTENANCE
+ };
+ }
+
+ rpc TestMaintenanceWithNestedSharedRequest(ValidNestedSharedRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MAINTENANCE
+ };
+ }
+
+ rpc TestMutatorWithInnerNestedRequest(ValidInnerNestedRequest) returns (ValidResponse) {
+ option (gitaly.op_type) = {
+ op: MAINTENANCE
+ };
+ }
+
+}