From f8dd545315e1e00df4fccfeb8013fb9cc3e66172 Mon Sep 17 00:00:00 2001 From: cybersiddhu Date: Fri, 31 Jan 2025 19:10:59 +0000 Subject: [PATCH] update on 01-31-2025:19:10:59 --- .../analysis/analysis.validator.pb.go | 2 +- dictybaseapis/content/content.validator.pb.go | 2 +- .../feature_annotation.pb.go | 649 +++++++++++++++--- .../feature_annotation.validator.pb.go | 37 +- .../feature_annotation_grpc.pb.go | 121 +++- ...eature_annotation_organism.validator.pb.go | 2 +- .../publication/publication.validator.pb.go | 2 +- dictybaseapis/stock/stock.validator.pb.go | 4 +- 8 files changed, 731 insertions(+), 88 deletions(-) diff --git a/dictybaseapis/analysis/analysis.validator.pb.go b/dictybaseapis/analysis/analysis.validator.pb.go index 3d431d8..a2b5dc8 100644 --- a/dictybaseapis/analysis/analysis.validator.pb.go +++ b/dictybaseapis/analysis/analysis.validator.pb.go @@ -7,8 +7,8 @@ import ( fmt "fmt" math "math" proto "github.com/golang/protobuf/proto" - _ "google.golang.org/protobuf/types/known/emptypb" _ "github.com/mwitkow/go-proto-validators" + _ "google.golang.org/protobuf/types/known/emptypb" github_com_mwitkow_go_proto_validators "github.com/mwitkow/go-proto-validators" ) diff --git a/dictybaseapis/content/content.validator.pb.go b/dictybaseapis/content/content.validator.pb.go index 29d24ca..9ca059c 100644 --- a/dictybaseapis/content/content.validator.pb.go +++ b/dictybaseapis/content/content.validator.pb.go @@ -7,10 +7,10 @@ import ( fmt "fmt" math "math" proto "github.com/golang/protobuf/proto" + _ "google.golang.org/protobuf/types/known/timestamppb" _ "github.com/mwitkow/go-proto-validators" _ "google.golang.org/protobuf/types/known/emptypb" _ "google.golang.org/protobuf/types/known/fieldmaskpb" - _ "google.golang.org/protobuf/types/known/timestamppb" regexp "regexp" github_com_mwitkow_go_proto_validators "github.com/mwitkow/go-proto-validators" ) diff --git a/dictybaseapis/feature_annotation/feature_annotation.pb.go b/dictybaseapis/feature_annotation/feature_annotation.pb.go index e1e7dcd..6f0c81d 100644 --- a/dictybaseapis/feature_annotation/feature_annotation.pb.go +++ b/dictybaseapis/feature_annotation/feature_annotation.pb.go @@ -647,6 +647,13 @@ type TagProperty struct { Tag string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"` Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + // email id of the user who created the tag + CreatedBy string `protobuf:"bytes,3,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"` + // email id of the user who updated the tag + UpdatedBy string `protobuf:"bytes,4,opt,name=updated_by,json=updatedBy,proto3" json:"updated_by,omitempty"` + // Timestamp for creation and update + CreatedAt *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` + UpdatedAt *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"` } func (x *TagProperty) Reset() { @@ -695,6 +702,162 @@ func (x *TagProperty) GetValue() string { return "" } +func (x *TagProperty) GetCreatedBy() string { + if x != nil { + return x.CreatedBy + } + return "" +} + +func (x *TagProperty) GetUpdatedBy() string { + if x != nil { + return x.UpdatedBy + } + return "" +} + +func (x *TagProperty) GetCreatedAt() *timestamppb.Timestamp { + if x != nil { + return x.CreatedAt + } + return nil +} + +func (x *TagProperty) GetUpdatedAt() *timestamppb.Timestamp { + if x != nil { + return x.UpdatedAt + } + return nil +} + +type TagPropertyCreate struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Tag string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"` + Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + // email id of the user who created the tag + CreatedBy string `protobuf:"bytes,3,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"` +} + +func (x *TagPropertyCreate) Reset() { + *x = TagPropertyCreate{} + if protoimpl.UnsafeEnabled { + mi := &file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TagPropertyCreate) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TagPropertyCreate) ProtoMessage() {} + +func (x *TagPropertyCreate) ProtoReflect() protoreflect.Message { + mi := &file_dictybase_feature_annotation_feature_annotation_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 TagPropertyCreate.ProtoReflect.Descriptor instead. +func (*TagPropertyCreate) Descriptor() ([]byte, []int) { + return file_dictybase_feature_annotation_feature_annotation_proto_rawDescGZIP(), []int{8} +} + +func (x *TagPropertyCreate) GetTag() string { + if x != nil { + return x.Tag + } + return "" +} + +func (x *TagPropertyCreate) GetValue() string { + if x != nil { + return x.Value + } + return "" +} + +func (x *TagPropertyCreate) GetCreatedBy() string { + if x != nil { + return x.CreatedBy + } + return "" +} + +type TagPropertyUpdate struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Tag string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"` + Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + // email id of the user who created the tag + UpdatedBy string `protobuf:"bytes,3,opt,name=updated_by,json=updatedBy,proto3" json:"updated_by,omitempty"` +} + +func (x *TagPropertyUpdate) Reset() { + *x = TagPropertyUpdate{} + if protoimpl.UnsafeEnabled { + mi := &file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TagPropertyUpdate) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TagPropertyUpdate) ProtoMessage() {} + +func (x *TagPropertyUpdate) ProtoReflect() protoreflect.Message { + mi := &file_dictybase_feature_annotation_feature_annotation_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 TagPropertyUpdate.ProtoReflect.Descriptor instead. +func (*TagPropertyUpdate) Descriptor() ([]byte, []int) { + return file_dictybase_feature_annotation_feature_annotation_proto_rawDescGZIP(), []int{9} +} + +func (x *TagPropertyUpdate) GetTag() string { + if x != nil { + return x.Tag + } + return "" +} + +func (x *TagPropertyUpdate) GetValue() string { + if x != nil { + return x.Value + } + return "" +} + +func (x *TagPropertyUpdate) GetUpdatedBy() string { + if x != nil { + return x.UpdatedBy + } + return "" +} + // deprecated type Dbxref struct { state protoimpl.MessageState @@ -711,7 +874,7 @@ type Dbxref struct { func (x *Dbxref) Reset() { *x = Dbxref{} if protoimpl.UnsafeEnabled { - mi := &file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[8] + mi := &file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -724,7 +887,7 @@ func (x *Dbxref) String() string { func (*Dbxref) ProtoMessage() {} func (x *Dbxref) ProtoReflect() protoreflect.Message { - mi := &file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[8] + mi := &file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -737,7 +900,7 @@ func (x *Dbxref) ProtoReflect() protoreflect.Message { // Deprecated: Use Dbxref.ProtoReflect.Descriptor instead. func (*Dbxref) Descriptor() ([]byte, []int) { - return file_dictybase_feature_annotation_feature_annotation_proto_rawDescGZIP(), []int{8} + return file_dictybase_feature_annotation_feature_annotation_proto_rawDescGZIP(), []int{10} } func (x *Dbxref) GetDbxrefId() string { @@ -761,6 +924,178 @@ func (x *Dbxref) GetDatabase() string { return "" } +// Request messages for tag operations +type AddTagRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // ID of feature annotation to modify + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + // Tag to be added + Tag *TagPropertyCreate `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"` +} + +func (x *AddTagRequest) Reset() { + *x = AddTagRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AddTagRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AddTagRequest) ProtoMessage() {} + +func (x *AddTagRequest) ProtoReflect() protoreflect.Message { + mi := &file_dictybase_feature_annotation_feature_annotation_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 AddTagRequest.ProtoReflect.Descriptor instead. +func (*AddTagRequest) Descriptor() ([]byte, []int) { + return file_dictybase_feature_annotation_feature_annotation_proto_rawDescGZIP(), []int{11} +} + +func (x *AddTagRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *AddTagRequest) GetTag() *TagPropertyCreate { + if x != nil { + return x.Tag + } + return nil +} + +type UpdateTagRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // ID of feature annotation to modify + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + // Updated tag values + Tag *TagPropertyUpdate `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"` +} + +func (x *UpdateTagRequest) Reset() { + *x = UpdateTagRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateTagRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateTagRequest) ProtoMessage() {} + +func (x *UpdateTagRequest) ProtoReflect() protoreflect.Message { + mi := &file_dictybase_feature_annotation_feature_annotation_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 UpdateTagRequest.ProtoReflect.Descriptor instead. +func (*UpdateTagRequest) Descriptor() ([]byte, []int) { + return file_dictybase_feature_annotation_feature_annotation_proto_rawDescGZIP(), []int{12} +} + +func (x *UpdateTagRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *UpdateTagRequest) GetTag() *TagPropertyUpdate { + if x != nil { + return x.Tag + } + return nil +} + +type RemoveTagRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // ID of feature annotation to modify + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + // Tag to remove + Tag string `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"` +} + +func (x *RemoveTagRequest) Reset() { + *x = RemoveTagRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RemoveTagRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RemoveTagRequest) ProtoMessage() {} + +func (x *RemoveTagRequest) ProtoReflect() protoreflect.Message { + mi := &file_dictybase_feature_annotation_feature_annotation_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 RemoveTagRequest.ProtoReflect.Descriptor instead. +func (*RemoveTagRequest) Descriptor() ([]byte, []int) { + return file_dictybase_feature_annotation_feature_annotation_proto_rawDescGZIP(), []int{13} +} + +func (x *RemoveTagRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *RemoveTagRequest) GetTag() string { + if x != nil { + return x.Tag + } + return "" +} + var File_dictybase_feature_annotation_feature_annotation_proto protoreflect.FileDescriptor var file_dictybase_feature_annotation_feature_annotation_proto_rawDesc = []byte{ @@ -896,61 +1231,142 @@ var file_dictybase_feature_annotation_feature_annotation_proto_rawDesc = []byte{ 0x12, 0x1a, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x08, 0xba, 0x48, 0x05, 0x72, 0x03, 0x88, 0x01, 0x01, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, - 0x65, 0x6c, 0x22, 0x45, 0x0a, 0x0b, 0x54, 0x61, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, - 0x79, 0x12, 0x18, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, - 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x1c, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, - 0x01, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x6b, 0x0a, 0x06, 0x44, 0x62, 0x78, - 0x72, 0x65, 0x66, 0x12, 0x23, 0x0a, 0x09, 0x64, 0x62, 0x78, 0x72, 0x65, 0x66, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, - 0x64, 0x62, 0x78, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x64, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x32, 0x94, 0x04, 0x0a, 0x18, 0x46, 0x65, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x65, - 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x32, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4e, - 0x65, 0x77, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x1a, 0x2f, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, + 0x65, 0x6c, 0x22, 0xfd, 0x02, 0x0a, 0x0b, 0x54, 0x61, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, + 0x74, 0x79, 0x12, 0x18, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x06, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x1c, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, + 0xc8, 0x01, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x5f, 0x0a, 0x0a, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x40, + 0xba, 0x48, 0x3d, 0xba, 0x01, 0x3a, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x65, 0x6d, + 0x61, 0x69, 0x6c, 0x12, 0x1b, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, + 0x62, 0x65, 0x20, 0x61, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, 0x65, 0x6d, 0x61, 0x69, 0x6c, + 0x1a, 0x0e, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x73, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x28, 0x29, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x5f, 0x0a, 0x0a, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x40, 0xba, 0x48, 0x3d, 0xba, 0x01, 0x3a, 0x0a, 0x0b, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x5f, 0x65, + 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x1b, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x20, 0x6d, 0x75, 0x73, 0x74, + 0x20, 0x62, 0x65, 0x20, 0x61, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, 0x65, 0x6d, 0x61, 0x69, + 0x6c, 0x1a, 0x0e, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x73, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x28, + 0x29, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x39, 0x0a, 0x0a, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x39, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x22, 0xac, 0x01, 0x0a, 0x11, 0x54, 0x61, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, + 0x74, 0x79, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x03, 0x74, + 0x61, 0x67, 0x12, 0x1c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x12, 0x5f, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x40, 0xba, 0x48, 0x3d, 0xba, 0x01, 0x3a, 0x0a, 0x0b, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x1b, 0x65, 0x6d, 0x61, 0x69, 0x6c, + 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x61, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, + 0x20, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x1a, 0x0e, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x73, 0x45, + 0x6d, 0x61, 0x69, 0x6c, 0x28, 0x29, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, + 0x79, 0x22, 0xac, 0x01, 0x0a, 0x11, 0x54, 0x61, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, + 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x03, 0x74, 0x61, + 0x67, 0x12, 0x1c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, + 0x5f, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x40, 0xba, 0x48, 0x3d, 0xba, 0x01, 0x3a, 0x0a, 0x0b, 0x76, 0x61, 0x6c, + 0x69, 0x64, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x1b, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x20, + 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x61, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, + 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x1a, 0x0e, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x69, 0x73, 0x45, 0x6d, + 0x61, 0x69, 0x6c, 0x28, 0x29, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, + 0x22, 0x6b, 0x0a, 0x06, 0x44, 0x62, 0x78, 0x72, 0x65, 0x66, 0x12, 0x23, 0x0a, 0x09, 0x64, 0x62, + 0x78, 0x72, 0x65, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xba, + 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x08, 0x64, 0x62, 0x78, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x08, 0x64, 0x61, 0x74, + 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, + 0xc8, 0x01, 0x01, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x22, 0x72, 0x0a, + 0x0d, 0x41, 0x64, 0x64, 0x54, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, + 0x01, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x49, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x12, 0x7c, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x46, 0x65, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, - 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x46, 0x65, - 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x1a, 0x2f, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, - 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0x00, 0x12, 0x83, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, - 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x35, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, - 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x1a, 0x2f, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, + 0x6f, 0x6e, 0x2e, 0x54, 0x61, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x03, 0x74, 0x61, + 0x67, 0x22, 0x75, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x61, 0x67, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x49, 0x0a, + 0x03, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x64, 0x69, 0x63, + 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x61, 0x67, 0x50, 0x72, 0x6f, + 0x70, 0x65, 0x72, 0x74, 0x79, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x06, 0xba, 0x48, 0x03, + 0xc8, 0x01, 0x01, 0x52, 0x03, 0x74, 0x61, 0x67, 0x22, 0x44, 0x0a, 0x10, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x54, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x06, 0xba, 0x48, 0x03, 0xc8, 0x01, 0x01, 0x52, 0x03, 0x74, 0x61, 0x67, 0x32, 0xde, + 0x06, 0x0a, 0x18, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x80, 0x01, 0x0a, 0x17, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, - 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, - 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x12, 0x71, 0x0a, 0x17, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, - 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, - 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x42, 0x95, 0x01, - 0x0a, 0x15, 0x6f, 0x72, 0x67, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, - 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x16, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, - 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, - 0x01, 0x5a, 0x54, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x64, 0x69, - 0x63, 0x74, 0x79, 0x42, 0x61, 0x73, 0x65, 0x2f, 0x67, 0x6f, 0x2d, 0x67, 0x65, 0x6e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x2f, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x61, 0x70, 0x69, - 0x73, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x3b, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, - 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x08, 0x44, 0x49, 0x43, - 0x54, 0x59, 0x41, 0x50, 0x49, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4e, 0x65, 0x77, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, + 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x2f, 0x2e, 0x64, 0x69, + 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, + 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x12, 0x7c, + 0x0a, 0x14, 0x47, 0x65, 0x74, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, + 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x1a, 0x2f, 0x2e, 0x64, 0x69, 0x63, 0x74, + 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x12, 0x83, 0x01, 0x0a, + 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, + 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, + 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, + 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x1a, + 0x2f, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x46, + 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0x00, 0x12, 0x71, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x2e, + 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, + 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x68, 0x0a, 0x06, 0x41, 0x64, 0x64, 0x54, 0x61, 0x67, 0x12, + 0x2b, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, + 0x64, 0x64, 0x54, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x64, + 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x46, 0x65, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x12, + 0x6e, 0x0a, 0x09, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x61, 0x67, 0x12, 0x2e, 0x2e, 0x64, + 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x54, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x64, + 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x46, 0x65, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x12, + 0x6e, 0x0a, 0x09, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x54, 0x61, 0x67, 0x12, 0x2e, 0x2e, 0x64, + 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x6d, 0x6f, + 0x76, 0x65, 0x54, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x64, + 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x46, 0x65, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x00, 0x42, + 0x95, 0x01, 0x0a, 0x15, 0x6f, 0x72, 0x67, 0x2e, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, + 0x65, 0x2e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x42, 0x16, 0x46, 0x65, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x50, 0x01, 0x5a, 0x54, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, + 0x64, 0x69, 0x63, 0x74, 0x79, 0x42, 0x61, 0x73, 0x65, 0x2f, 0x67, 0x6f, 0x2d, 0x67, 0x65, 0x6e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x64, 0x69, 0x63, 0x74, 0x79, 0x62, 0x61, 0x73, 0x65, 0x61, + 0x70, 0x69, 0x73, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, + 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3b, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x08, 0x44, + 0x49, 0x43, 0x54, 0x59, 0x41, 0x50, 0x49, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -965,7 +1381,7 @@ func file_dictybase_feature_annotation_feature_annotation_proto_rawDescGZIP() [] return file_dictybase_feature_annotation_feature_annotation_proto_rawDescData } -var file_dictybase_feature_annotation_feature_annotation_proto_msgTypes = make([]protoimpl.MessageInfo, 9) +var file_dictybase_feature_annotation_feature_annotation_proto_msgTypes = make([]protoimpl.MessageInfo, 14) var file_dictybase_feature_annotation_feature_annotation_proto_goTypes = []interface{}{ (*FeatureAnnotation)(nil), // 0: dictybase.feature_annotation.FeatureAnnotation (*FeatureAnnotationAttributes)(nil), // 1: dictybase.feature_annotation.FeatureAnnotationAttributes @@ -975,34 +1391,49 @@ var file_dictybase_feature_annotation_feature_annotation_proto_goTypes = []inter (*DeleteFeatureAnnotationRequest)(nil), // 5: dictybase.feature_annotation.DeleteFeatureAnnotationRequest (*DbLink)(nil), // 6: dictybase.feature_annotation.DbLink (*TagProperty)(nil), // 7: dictybase.feature_annotation.TagProperty - (*Dbxref)(nil), // 8: dictybase.feature_annotation.Dbxref - (*timestamppb.Timestamp)(nil), // 9: google.protobuf.Timestamp - (*emptypb.Empty)(nil), // 10: google.protobuf.Empty + (*TagPropertyCreate)(nil), // 8: dictybase.feature_annotation.TagPropertyCreate + (*TagPropertyUpdate)(nil), // 9: dictybase.feature_annotation.TagPropertyUpdate + (*Dbxref)(nil), // 10: dictybase.feature_annotation.Dbxref + (*AddTagRequest)(nil), // 11: dictybase.feature_annotation.AddTagRequest + (*UpdateTagRequest)(nil), // 12: dictybase.feature_annotation.UpdateTagRequest + (*RemoveTagRequest)(nil), // 13: dictybase.feature_annotation.RemoveTagRequest + (*timestamppb.Timestamp)(nil), // 14: google.protobuf.Timestamp + (*emptypb.Empty)(nil), // 15: google.protobuf.Empty } var file_dictybase_feature_annotation_feature_annotation_proto_depIdxs = []int32{ 1, // 0: dictybase.feature_annotation.FeatureAnnotation.attributes:type_name -> dictybase.feature_annotation.FeatureAnnotationAttributes - 9, // 1: dictybase.feature_annotation.FeatureAnnotation.created_at:type_name -> google.protobuf.Timestamp - 9, // 2: dictybase.feature_annotation.FeatureAnnotation.updated_at:type_name -> google.protobuf.Timestamp - 8, // 3: dictybase.feature_annotation.FeatureAnnotationAttributes.dbxrefs:type_name -> dictybase.feature_annotation.Dbxref + 14, // 1: dictybase.feature_annotation.FeatureAnnotation.created_at:type_name -> google.protobuf.Timestamp + 14, // 2: dictybase.feature_annotation.FeatureAnnotation.updated_at:type_name -> google.protobuf.Timestamp + 10, // 3: dictybase.feature_annotation.FeatureAnnotationAttributes.dbxrefs:type_name -> dictybase.feature_annotation.Dbxref 6, // 4: dictybase.feature_annotation.FeatureAnnotationAttributes.dblinks:type_name -> dictybase.feature_annotation.DbLink 7, // 5: dictybase.feature_annotation.FeatureAnnotationAttributes.properties:type_name -> dictybase.feature_annotation.TagProperty 1, // 6: dictybase.feature_annotation.FeatureAnnotationUpdate.attributes:type_name -> dictybase.feature_annotation.FeatureAnnotationAttributes 1, // 7: dictybase.feature_annotation.NewFeatureAnnotation.attributes:type_name -> dictybase.feature_annotation.FeatureAnnotationAttributes - 9, // 8: dictybase.feature_annotation.NewFeatureAnnotation.created_at:type_name -> google.protobuf.Timestamp - 9, // 9: dictybase.feature_annotation.NewFeatureAnnotation.updated_at:type_name -> google.protobuf.Timestamp - 3, // 10: dictybase.feature_annotation.FeatureAnnotationService.CreateFeatureAnnotation:input_type -> dictybase.feature_annotation.NewFeatureAnnotation - 4, // 11: dictybase.feature_annotation.FeatureAnnotationService.GetFeatureAnnotation:input_type -> dictybase.feature_annotation.FeatureAnnotationId - 2, // 12: dictybase.feature_annotation.FeatureAnnotationService.UpdateFeatureAnnotation:input_type -> dictybase.feature_annotation.FeatureAnnotationUpdate - 5, // 13: dictybase.feature_annotation.FeatureAnnotationService.DeleteFeatureAnnotation:input_type -> dictybase.feature_annotation.DeleteFeatureAnnotationRequest - 0, // 14: dictybase.feature_annotation.FeatureAnnotationService.CreateFeatureAnnotation:output_type -> dictybase.feature_annotation.FeatureAnnotation - 0, // 15: dictybase.feature_annotation.FeatureAnnotationService.GetFeatureAnnotation:output_type -> dictybase.feature_annotation.FeatureAnnotation - 0, // 16: dictybase.feature_annotation.FeatureAnnotationService.UpdateFeatureAnnotation:output_type -> dictybase.feature_annotation.FeatureAnnotation - 10, // 17: dictybase.feature_annotation.FeatureAnnotationService.DeleteFeatureAnnotation:output_type -> google.protobuf.Empty - 14, // [14:18] is the sub-list for method output_type - 10, // [10:14] is the sub-list for method input_type - 10, // [10:10] is the sub-list for extension type_name - 10, // [10:10] is the sub-list for extension extendee - 0, // [0:10] is the sub-list for field type_name + 14, // 8: dictybase.feature_annotation.NewFeatureAnnotation.created_at:type_name -> google.protobuf.Timestamp + 14, // 9: dictybase.feature_annotation.NewFeatureAnnotation.updated_at:type_name -> google.protobuf.Timestamp + 14, // 10: dictybase.feature_annotation.TagProperty.created_at:type_name -> google.protobuf.Timestamp + 14, // 11: dictybase.feature_annotation.TagProperty.updated_at:type_name -> google.protobuf.Timestamp + 8, // 12: dictybase.feature_annotation.AddTagRequest.tag:type_name -> dictybase.feature_annotation.TagPropertyCreate + 9, // 13: dictybase.feature_annotation.UpdateTagRequest.tag:type_name -> dictybase.feature_annotation.TagPropertyUpdate + 3, // 14: dictybase.feature_annotation.FeatureAnnotationService.CreateFeatureAnnotation:input_type -> dictybase.feature_annotation.NewFeatureAnnotation + 4, // 15: dictybase.feature_annotation.FeatureAnnotationService.GetFeatureAnnotation:input_type -> dictybase.feature_annotation.FeatureAnnotationId + 2, // 16: dictybase.feature_annotation.FeatureAnnotationService.UpdateFeatureAnnotation:input_type -> dictybase.feature_annotation.FeatureAnnotationUpdate + 5, // 17: dictybase.feature_annotation.FeatureAnnotationService.DeleteFeatureAnnotation:input_type -> dictybase.feature_annotation.DeleteFeatureAnnotationRequest + 11, // 18: dictybase.feature_annotation.FeatureAnnotationService.AddTag:input_type -> dictybase.feature_annotation.AddTagRequest + 12, // 19: dictybase.feature_annotation.FeatureAnnotationService.UpdateTag:input_type -> dictybase.feature_annotation.UpdateTagRequest + 13, // 20: dictybase.feature_annotation.FeatureAnnotationService.RemoveTag:input_type -> dictybase.feature_annotation.RemoveTagRequest + 0, // 21: dictybase.feature_annotation.FeatureAnnotationService.CreateFeatureAnnotation:output_type -> dictybase.feature_annotation.FeatureAnnotation + 0, // 22: dictybase.feature_annotation.FeatureAnnotationService.GetFeatureAnnotation:output_type -> dictybase.feature_annotation.FeatureAnnotation + 0, // 23: dictybase.feature_annotation.FeatureAnnotationService.UpdateFeatureAnnotation:output_type -> dictybase.feature_annotation.FeatureAnnotation + 15, // 24: dictybase.feature_annotation.FeatureAnnotationService.DeleteFeatureAnnotation:output_type -> google.protobuf.Empty + 0, // 25: dictybase.feature_annotation.FeatureAnnotationService.AddTag:output_type -> dictybase.feature_annotation.FeatureAnnotation + 0, // 26: dictybase.feature_annotation.FeatureAnnotationService.UpdateTag:output_type -> dictybase.feature_annotation.FeatureAnnotation + 0, // 27: dictybase.feature_annotation.FeatureAnnotationService.RemoveTag:output_type -> dictybase.feature_annotation.FeatureAnnotation + 21, // [21:28] is the sub-list for method output_type + 14, // [14:21] is the sub-list for method input_type + 14, // [14:14] is the sub-list for extension type_name + 14, // [14:14] is the sub-list for extension extendee + 0, // [0:14] is the sub-list for field type_name } func init() { file_dictybase_feature_annotation_feature_annotation_proto_init() } @@ -1108,6 +1539,30 @@ func file_dictybase_feature_annotation_feature_annotation_proto_init() { } } file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TagPropertyCreate); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TagPropertyUpdate); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Dbxref); i { case 0: return &v.state @@ -1119,6 +1574,42 @@ func file_dictybase_feature_annotation_feature_annotation_proto_init() { return nil } } + file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AddTagRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateTagRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_dictybase_feature_annotation_feature_annotation_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RemoveTagRequest); 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{ @@ -1126,7 +1617,7 @@ func file_dictybase_feature_annotation_feature_annotation_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_dictybase_feature_annotation_feature_annotation_proto_rawDesc, NumEnums: 0, - NumMessages: 9, + NumMessages: 14, NumExtensions: 0, NumServices: 1, }, diff --git a/dictybaseapis/feature_annotation/feature_annotation.validator.pb.go b/dictybaseapis/feature_annotation/feature_annotation.validator.pb.go index 139d9c0..f53886c 100644 --- a/dictybaseapis/feature_annotation/feature_annotation.validator.pb.go +++ b/dictybaseapis/feature_annotation/feature_annotation.validator.pb.go @@ -7,9 +7,9 @@ import ( fmt "fmt" math "math" proto "github.com/golang/protobuf/proto" + _ "google.golang.org/protobuf/types/known/timestamppb" _ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate" _ "google.golang.org/protobuf/types/known/emptypb" - _ "google.golang.org/protobuf/types/known/timestamppb" github_com_mwitkow_go_proto_validators "github.com/mwitkow/go-proto-validators" ) @@ -96,8 +96,43 @@ func (this *DbLink) Validate() error { return nil } func (this *TagProperty) Validate() error { + if this.CreatedAt != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.CreatedAt); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("CreatedAt", err) + } + } + if this.UpdatedAt != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.UpdatedAt); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("UpdatedAt", err) + } + } + return nil +} +func (this *TagPropertyCreate) Validate() error { + return nil +} +func (this *TagPropertyUpdate) Validate() error { return nil } func (this *Dbxref) Validate() error { return nil } +func (this *AddTagRequest) Validate() error { + if this.Tag != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Tag); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Tag", err) + } + } + return nil +} +func (this *UpdateTagRequest) Validate() error { + if this.Tag != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Tag); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Tag", err) + } + } + return nil +} +func (this *RemoveTagRequest) Validate() error { + return nil +} diff --git a/dictybaseapis/feature_annotation/feature_annotation_grpc.pb.go b/dictybaseapis/feature_annotation/feature_annotation_grpc.pb.go index 1b1917b..56c1276 100644 --- a/dictybaseapis/feature_annotation/feature_annotation_grpc.pb.go +++ b/dictybaseapis/feature_annotation/feature_annotation_grpc.pb.go @@ -24,6 +24,9 @@ const ( FeatureAnnotationService_GetFeatureAnnotation_FullMethodName = "/dictybase.feature_annotation.FeatureAnnotationService/GetFeatureAnnotation" FeatureAnnotationService_UpdateFeatureAnnotation_FullMethodName = "/dictybase.feature_annotation.FeatureAnnotationService/UpdateFeatureAnnotation" FeatureAnnotationService_DeleteFeatureAnnotation_FullMethodName = "/dictybase.feature_annotation.FeatureAnnotationService/DeleteFeatureAnnotation" + FeatureAnnotationService_AddTag_FullMethodName = "/dictybase.feature_annotation.FeatureAnnotationService/AddTag" + FeatureAnnotationService_UpdateTag_FullMethodName = "/dictybase.feature_annotation.FeatureAnnotationService/UpdateTag" + FeatureAnnotationService_RemoveTag_FullMethodName = "/dictybase.feature_annotation.FeatureAnnotationService/RemoveTag" ) // FeatureAnnotationServiceClient is the client API for FeatureAnnotationService service. @@ -34,10 +37,16 @@ type FeatureAnnotationServiceClient interface { CreateFeatureAnnotation(ctx context.Context, in *NewFeatureAnnotation, opts ...grpc.CallOption) (*FeatureAnnotation, error) // Retrieves the specified feature annotation GetFeatureAnnotation(ctx context.Context, in *FeatureAnnotationId, opts ...grpc.CallOption) (*FeatureAnnotation, error) - // Update an existing feature annotation + // Update an existing feature annotation. Any given tag will be appended to the existing tags UpdateFeatureAnnotation(ctx context.Context, in *FeatureAnnotationUpdate, opts ...grpc.CallOption) (*FeatureAnnotation, error) // Delete an existing feature annotation DeleteFeatureAnnotation(ctx context.Context, in *DeleteFeatureAnnotationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + // Add tag to an existing feature annotation + AddTag(ctx context.Context, in *AddTagRequest, opts ...grpc.CallOption) (*FeatureAnnotation, error) + // Update an existing tag in a feature annotation + UpdateTag(ctx context.Context, in *UpdateTagRequest, opts ...grpc.CallOption) (*FeatureAnnotation, error) + // Remove a tag from a feature annotation + RemoveTag(ctx context.Context, in *RemoveTagRequest, opts ...grpc.CallOption) (*FeatureAnnotation, error) } type featureAnnotationServiceClient struct { @@ -84,6 +93,33 @@ func (c *featureAnnotationServiceClient) DeleteFeatureAnnotation(ctx context.Con return out, nil } +func (c *featureAnnotationServiceClient) AddTag(ctx context.Context, in *AddTagRequest, opts ...grpc.CallOption) (*FeatureAnnotation, error) { + out := new(FeatureAnnotation) + err := c.cc.Invoke(ctx, FeatureAnnotationService_AddTag_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *featureAnnotationServiceClient) UpdateTag(ctx context.Context, in *UpdateTagRequest, opts ...grpc.CallOption) (*FeatureAnnotation, error) { + out := new(FeatureAnnotation) + err := c.cc.Invoke(ctx, FeatureAnnotationService_UpdateTag_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *featureAnnotationServiceClient) RemoveTag(ctx context.Context, in *RemoveTagRequest, opts ...grpc.CallOption) (*FeatureAnnotation, error) { + out := new(FeatureAnnotation) + err := c.cc.Invoke(ctx, FeatureAnnotationService_RemoveTag_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // FeatureAnnotationServiceServer is the server API for FeatureAnnotationService service. // All implementations must embed UnimplementedFeatureAnnotationServiceServer // for forward compatibility @@ -92,10 +128,16 @@ type FeatureAnnotationServiceServer interface { CreateFeatureAnnotation(context.Context, *NewFeatureAnnotation) (*FeatureAnnotation, error) // Retrieves the specified feature annotation GetFeatureAnnotation(context.Context, *FeatureAnnotationId) (*FeatureAnnotation, error) - // Update an existing feature annotation + // Update an existing feature annotation. Any given tag will be appended to the existing tags UpdateFeatureAnnotation(context.Context, *FeatureAnnotationUpdate) (*FeatureAnnotation, error) // Delete an existing feature annotation DeleteFeatureAnnotation(context.Context, *DeleteFeatureAnnotationRequest) (*emptypb.Empty, error) + // Add tag to an existing feature annotation + AddTag(context.Context, *AddTagRequest) (*FeatureAnnotation, error) + // Update an existing tag in a feature annotation + UpdateTag(context.Context, *UpdateTagRequest) (*FeatureAnnotation, error) + // Remove a tag from a feature annotation + RemoveTag(context.Context, *RemoveTagRequest) (*FeatureAnnotation, error) mustEmbedUnimplementedFeatureAnnotationServiceServer() } @@ -115,6 +157,15 @@ func (UnimplementedFeatureAnnotationServiceServer) UpdateFeatureAnnotation(conte func (UnimplementedFeatureAnnotationServiceServer) DeleteFeatureAnnotation(context.Context, *DeleteFeatureAnnotationRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method DeleteFeatureAnnotation not implemented") } +func (UnimplementedFeatureAnnotationServiceServer) AddTag(context.Context, *AddTagRequest) (*FeatureAnnotation, error) { + return nil, status.Errorf(codes.Unimplemented, "method AddTag not implemented") +} +func (UnimplementedFeatureAnnotationServiceServer) UpdateTag(context.Context, *UpdateTagRequest) (*FeatureAnnotation, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateTag not implemented") +} +func (UnimplementedFeatureAnnotationServiceServer) RemoveTag(context.Context, *RemoveTagRequest) (*FeatureAnnotation, error) { + return nil, status.Errorf(codes.Unimplemented, "method RemoveTag not implemented") +} func (UnimplementedFeatureAnnotationServiceServer) mustEmbedUnimplementedFeatureAnnotationServiceServer() { } @@ -201,6 +252,60 @@ func _FeatureAnnotationService_DeleteFeatureAnnotation_Handler(srv interface{}, return interceptor(ctx, in, info, handler) } +func _FeatureAnnotationService_AddTag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(AddTagRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FeatureAnnotationServiceServer).AddTag(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: FeatureAnnotationService_AddTag_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FeatureAnnotationServiceServer).AddTag(ctx, req.(*AddTagRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _FeatureAnnotationService_UpdateTag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateTagRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FeatureAnnotationServiceServer).UpdateTag(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: FeatureAnnotationService_UpdateTag_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FeatureAnnotationServiceServer).UpdateTag(ctx, req.(*UpdateTagRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _FeatureAnnotationService_RemoveTag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(RemoveTagRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(FeatureAnnotationServiceServer).RemoveTag(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: FeatureAnnotationService_RemoveTag_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(FeatureAnnotationServiceServer).RemoveTag(ctx, req.(*RemoveTagRequest)) + } + return interceptor(ctx, in, info, handler) +} + // FeatureAnnotationService_ServiceDesc is the grpc.ServiceDesc for FeatureAnnotationService service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -224,6 +329,18 @@ var FeatureAnnotationService_ServiceDesc = grpc.ServiceDesc{ MethodName: "DeleteFeatureAnnotation", Handler: _FeatureAnnotationService_DeleteFeatureAnnotation_Handler, }, + { + MethodName: "AddTag", + Handler: _FeatureAnnotationService_AddTag_Handler, + }, + { + MethodName: "UpdateTag", + Handler: _FeatureAnnotationService_UpdateTag_Handler, + }, + { + MethodName: "RemoveTag", + Handler: _FeatureAnnotationService_RemoveTag_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "dictybase/feature_annotation/feature_annotation.proto", diff --git a/dictybaseapis/feature_annotation/feature_annotation_organism.validator.pb.go b/dictybaseapis/feature_annotation/feature_annotation_organism.validator.pb.go index 7803b96..67ae5e0 100644 --- a/dictybaseapis/feature_annotation/feature_annotation_organism.validator.pb.go +++ b/dictybaseapis/feature_annotation/feature_annotation_organism.validator.pb.go @@ -7,9 +7,9 @@ import ( fmt "fmt" math "math" proto "github.com/golang/protobuf/proto" + _ "google.golang.org/protobuf/types/known/emptypb" _ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate" _ "github.com/dictyBase/go-genproto/dictybaseapis/organism" - _ "google.golang.org/protobuf/types/known/emptypb" ) // Reference imports to suppress errors if they are not otherwise used. diff --git a/dictybaseapis/publication/publication.validator.pb.go b/dictybaseapis/publication/publication.validator.pb.go index c341b43..a1fa214 100644 --- a/dictybaseapis/publication/publication.validator.pb.go +++ b/dictybaseapis/publication/publication.validator.pb.go @@ -7,9 +7,9 @@ import ( fmt "fmt" math "math" proto "github.com/golang/protobuf/proto" + _ "github.com/mwitkow/go-proto-validators" _ "google.golang.org/protobuf/types/known/emptypb" _ "google.golang.org/protobuf/types/known/timestamppb" - _ "github.com/mwitkow/go-proto-validators" github_com_mwitkow_go_proto_validators "github.com/mwitkow/go-proto-validators" ) diff --git a/dictybaseapis/stock/stock.validator.pb.go b/dictybaseapis/stock/stock.validator.pb.go index 8b2146e..3211323 100644 --- a/dictybaseapis/stock/stock.validator.pb.go +++ b/dictybaseapis/stock/stock.validator.pb.go @@ -7,10 +7,10 @@ import ( fmt "fmt" math "math" proto "github.com/golang/protobuf/proto" - _ "github.com/dictyBase/go-genproto/dictybaseapis/api/upload" - _ "github.com/mwitkow/go-proto-validators" _ "google.golang.org/protobuf/types/known/emptypb" _ "google.golang.org/protobuf/types/known/timestamppb" + _ "github.com/dictyBase/go-genproto/dictybaseapis/api/upload" + _ "github.com/mwitkow/go-proto-validators" regexp "regexp" github_com_mwitkow_go_proto_validators "github.com/mwitkow/go-proto-validators" )