mirror of
https://github.com/protocolbuffers/protobuf-go.git
synced 2025-02-22 12:39:52 +00:00
encoding/textpb: clean-up code and fix error handling inside closures
In marshalMap, replace Map.Range and sortMap with internal/mapsort.Range. Also, make sure to capture fatal error properly for return. In appendExtensions, capture fatal error properly for return. Added a testcase that shows this was a bug. In unmarshalAny, remove unnecessary checks and use internal/fieldnum for Any's field numbers. Change-Id: Id8574d5b4eb820ad961f6ad5e886f8ae2e9b90f0 Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/170627 Reviewed-by: Damien Neil <dneil@google.com>
This commit is contained in:
parent
ac50359592
commit
09b28a97f7
@ -1368,6 +1368,14 @@ var xxx_File_pb2_test_proto_extDescs = []protoiface.ExtensionDescV1{
|
|||||||
Tag: "bytes,24,opt,name=opt_ext_nested",
|
Tag: "bytes,24,opt,name=opt_ext_nested",
|
||||||
Filename: "pb2/test.proto",
|
Filename: "pb2/test.proto",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
ExtendedType: (*Extensions)(nil),
|
||||||
|
ExtensionType: (*PartialRequired)(nil),
|
||||||
|
Field: 25,
|
||||||
|
Name: "pb2.opt_ext_partial",
|
||||||
|
Tag: "bytes,25,opt,name=opt_ext_partial",
|
||||||
|
Filename: "pb2/test.proto",
|
||||||
|
},
|
||||||
{
|
{
|
||||||
ExtendedType: (*Extensions)(nil),
|
ExtendedType: (*Extensions)(nil),
|
||||||
ExtensionType: ([]uint32)(nil),
|
ExtensionType: ([]uint32)(nil),
|
||||||
@ -1432,6 +1440,14 @@ var xxx_File_pb2_test_proto_extDescs = []protoiface.ExtensionDescV1{
|
|||||||
Tag: "bytes,54,opt,name=opt_ext_nested",
|
Tag: "bytes,54,opt,name=opt_ext_nested",
|
||||||
Filename: "pb2/test.proto",
|
Filename: "pb2/test.proto",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
ExtendedType: (*Extensions)(nil),
|
||||||
|
ExtensionType: (*PartialRequired)(nil),
|
||||||
|
Field: 55,
|
||||||
|
Name: "pb2.ExtensionsContainer.opt_ext_partial",
|
||||||
|
Tag: "bytes,55,opt,name=opt_ext_partial",
|
||||||
|
Filename: "pb2/test.proto",
|
||||||
|
},
|
||||||
{
|
{
|
||||||
ExtendedType: (*Extensions)(nil),
|
ExtendedType: (*Extensions)(nil),
|
||||||
ExtensionType: ([]string)(nil),
|
ExtensionType: ([]string)(nil),
|
||||||
@ -1502,50 +1518,56 @@ var (
|
|||||||
// extend pb2.Extensions { optional pb2.Nested opt_ext_nested = 24; }
|
// extend pb2.Extensions { optional pb2.Nested opt_ext_nested = 24; }
|
||||||
E_OptExtNested = &xxx_File_pb2_test_proto_extDescs[3]
|
E_OptExtNested = &xxx_File_pb2_test_proto_extDescs[3]
|
||||||
|
|
||||||
|
// extend pb2.Extensions { optional pb2.PartialRequired opt_ext_partial = 25; }
|
||||||
|
E_OptExtPartial = &xxx_File_pb2_test_proto_extDescs[4]
|
||||||
|
|
||||||
// extend pb2.Extensions { repeated fixed32 rpt_ext_fixed32 = 31; }
|
// extend pb2.Extensions { repeated fixed32 rpt_ext_fixed32 = 31; }
|
||||||
E_RptExtFixed32 = &xxx_File_pb2_test_proto_extDescs[4]
|
E_RptExtFixed32 = &xxx_File_pb2_test_proto_extDescs[5]
|
||||||
|
|
||||||
// extend pb2.Extensions { repeated pb2.Enum rpt_ext_enum = 32; }
|
// extend pb2.Extensions { repeated pb2.Enum rpt_ext_enum = 32; }
|
||||||
E_RptExtEnum = &xxx_File_pb2_test_proto_extDescs[5]
|
E_RptExtEnum = &xxx_File_pb2_test_proto_extDescs[6]
|
||||||
|
|
||||||
// extend pb2.Extensions { repeated pb2.Nested rpt_ext_nested = 33; }
|
// extend pb2.Extensions { repeated pb2.Nested rpt_ext_nested = 33; }
|
||||||
E_RptExtNested = &xxx_File_pb2_test_proto_extDescs[6]
|
E_RptExtNested = &xxx_File_pb2_test_proto_extDescs[7]
|
||||||
|
|
||||||
// extend pb2.MessageSet { optional pb2.FakeMessageSetExtension message_set_extension = 50; }
|
// extend pb2.MessageSet { optional pb2.FakeMessageSetExtension message_set_extension = 50; }
|
||||||
E_MessageSetExtension = &xxx_File_pb2_test_proto_extDescs[7]
|
E_MessageSetExtension = &xxx_File_pb2_test_proto_extDescs[8]
|
||||||
|
|
||||||
// extend pb2.Extensions { optional bool opt_ext_bool = 51; }
|
// extend pb2.Extensions { optional bool opt_ext_bool = 51; }
|
||||||
E_ExtensionsContainer_OptExtBool = &xxx_File_pb2_test_proto_extDescs[8]
|
E_ExtensionsContainer_OptExtBool = &xxx_File_pb2_test_proto_extDescs[9]
|
||||||
|
|
||||||
// extend pb2.Extensions { optional string opt_ext_string = 52; }
|
// extend pb2.Extensions { optional string opt_ext_string = 52; }
|
||||||
E_ExtensionsContainer_OptExtString = &xxx_File_pb2_test_proto_extDescs[9]
|
E_ExtensionsContainer_OptExtString = &xxx_File_pb2_test_proto_extDescs[10]
|
||||||
|
|
||||||
// extend pb2.Extensions { optional pb2.Enum opt_ext_enum = 53; }
|
// extend pb2.Extensions { optional pb2.Enum opt_ext_enum = 53; }
|
||||||
E_ExtensionsContainer_OptExtEnum = &xxx_File_pb2_test_proto_extDescs[10]
|
E_ExtensionsContainer_OptExtEnum = &xxx_File_pb2_test_proto_extDescs[11]
|
||||||
|
|
||||||
// extend pb2.Extensions { optional pb2.Nested opt_ext_nested = 54; }
|
// extend pb2.Extensions { optional pb2.Nested opt_ext_nested = 54; }
|
||||||
E_ExtensionsContainer_OptExtNested = &xxx_File_pb2_test_proto_extDescs[11]
|
E_ExtensionsContainer_OptExtNested = &xxx_File_pb2_test_proto_extDescs[12]
|
||||||
|
|
||||||
|
// extend pb2.Extensions { optional pb2.PartialRequired opt_ext_partial = 55; }
|
||||||
|
E_ExtensionsContainer_OptExtPartial = &xxx_File_pb2_test_proto_extDescs[13]
|
||||||
|
|
||||||
// extend pb2.Extensions { repeated string rpt_ext_string = 61; }
|
// extend pb2.Extensions { repeated string rpt_ext_string = 61; }
|
||||||
E_ExtensionsContainer_RptExtString = &xxx_File_pb2_test_proto_extDescs[12]
|
E_ExtensionsContainer_RptExtString = &xxx_File_pb2_test_proto_extDescs[14]
|
||||||
|
|
||||||
// extend pb2.Extensions { repeated pb2.Enum rpt_ext_enum = 62; }
|
// extend pb2.Extensions { repeated pb2.Enum rpt_ext_enum = 62; }
|
||||||
E_ExtensionsContainer_RptExtEnum = &xxx_File_pb2_test_proto_extDescs[13]
|
E_ExtensionsContainer_RptExtEnum = &xxx_File_pb2_test_proto_extDescs[15]
|
||||||
|
|
||||||
// extend pb2.Extensions { repeated pb2.Nested rpt_ext_nested = 63; }
|
// extend pb2.Extensions { repeated pb2.Nested rpt_ext_nested = 63; }
|
||||||
E_ExtensionsContainer_RptExtNested = &xxx_File_pb2_test_proto_extDescs[14]
|
E_ExtensionsContainer_RptExtNested = &xxx_File_pb2_test_proto_extDescs[16]
|
||||||
|
|
||||||
// extend pb2.MessageSet { optional pb2.MessageSetExtension message_set_extension = 10; }
|
// extend pb2.MessageSet { optional pb2.MessageSetExtension message_set_extension = 10; }
|
||||||
E_MessageSetExtension_MessageSetExtension = &xxx_File_pb2_test_proto_extDescs[15]
|
E_MessageSetExtension_MessageSetExtension = &xxx_File_pb2_test_proto_extDescs[17]
|
||||||
|
|
||||||
// extend pb2.MessageSet { optional pb2.MessageSetExtension not_message_set_extension = 20; }
|
// extend pb2.MessageSet { optional pb2.MessageSetExtension not_message_set_extension = 20; }
|
||||||
E_MessageSetExtension_NotMessageSetExtension = &xxx_File_pb2_test_proto_extDescs[16]
|
E_MessageSetExtension_NotMessageSetExtension = &xxx_File_pb2_test_proto_extDescs[18]
|
||||||
|
|
||||||
// extend pb2.MessageSet { optional pb2.Nested ext_nested = 30; }
|
// extend pb2.MessageSet { optional pb2.Nested ext_nested = 30; }
|
||||||
E_MessageSetExtension_ExtNested = &xxx_File_pb2_test_proto_extDescs[17]
|
E_MessageSetExtension_ExtNested = &xxx_File_pb2_test_proto_extDescs[19]
|
||||||
|
|
||||||
// extend pb2.FakeMessageSet { optional pb2.FakeMessageSetExtension message_set_extension = 10; }
|
// extend pb2.FakeMessageSet { optional pb2.FakeMessageSetExtension message_set_extension = 10; }
|
||||||
E_FakeMessageSetExtension_MessageSetExtension = &xxx_File_pb2_test_proto_extDescs[18]
|
E_FakeMessageSetExtension_MessageSetExtension = &xxx_File_pb2_test_proto_extDescs[20]
|
||||||
)
|
)
|
||||||
var File_pb2_test_proto protoreflect.FileDescriptor
|
var File_pb2_test_proto protoreflect.FileDescriptor
|
||||||
|
|
||||||
@ -1714,7 +1736,7 @@ var xxx_File_pb2_test_proto_rawDesc = []byte{
|
|||||||
0x70, 0x74, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x65, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6f,
|
0x70, 0x74, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x65, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6f,
|
||||||
0x70, 0x74, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x69, 0x6e,
|
0x70, 0x74, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x69, 0x6e,
|
||||||
0x74, 0x33, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x49, 0x6e,
|
0x74, 0x33, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x49, 0x6e,
|
||||||
0x74, 0x33, 0x32, 0x2a, 0x04, 0x08, 0x14, 0x10, 0x65, 0x22, 0xba, 0x03, 0x0a, 0x13, 0x45, 0x78,
|
0x74, 0x33, 0x32, 0x2a, 0x04, 0x08, 0x14, 0x10, 0x65, 0x22, 0x89, 0x04, 0x0a, 0x13, 0x45, 0x78,
|
||||||
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
|
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
|
||||||
0x72, 0x32, 0x31, 0x0a, 0x0c, 0x6f, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x62, 0x6f, 0x6f,
|
0x72, 0x32, 0x31, 0x0a, 0x0c, 0x6f, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x62, 0x6f, 0x6f,
|
||||||
0x6c, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
|
0x6c, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
|
||||||
@ -1730,156 +1752,166 @@ var xxx_File_pb2_test_proto_rawDesc = []byte{
|
|||||||
0x5f, 0x65, 0x78, 0x74, 0x5f, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x0f, 0x2e, 0x70, 0x62,
|
0x5f, 0x65, 0x78, 0x74, 0x5f, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x0f, 0x2e, 0x70, 0x62,
|
||||||
0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x36, 0x20, 0x01,
|
0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x36, 0x20, 0x01,
|
||||||
0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52,
|
0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52,
|
||||||
0x0c, 0x6f, 0x70, 0x74, 0x45, 0x78, 0x74, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x32, 0x35, 0x0a,
|
0x0c, 0x6f, 0x70, 0x74, 0x45, 0x78, 0x74, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x32, 0x4d, 0x0a,
|
||||||
0x0e, 0x72, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12,
|
0x0f, 0x6f, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c,
|
||||||
0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73,
|
0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
|
||||||
0x18, 0x3d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74, 0x53, 0x74,
|
0x73, 0x18, 0x37, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x50, 0x61,
|
||||||
0x72, 0x69, 0x6e, 0x67, 0x32, 0x3c, 0x0a, 0x0c, 0x72, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f,
|
0x72, 0x74, 0x69, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x52, 0x0d, 0x6f,
|
||||||
0x65, 0x6e, 0x75, 0x6d, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e,
|
0x70, 0x74, 0x45, 0x78, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x32, 0x35, 0x0a, 0x0e,
|
||||||
0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x3e, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x70, 0x62,
|
0x72, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x0f,
|
||||||
0x32, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x0a, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74, 0x45, 0x6e,
|
0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18,
|
||||||
0x75, 0x6d, 0x32, 0x42, 0x0a, 0x0e, 0x72, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x6e, 0x65,
|
0x3d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74, 0x53, 0x74, 0x72,
|
||||||
0x73, 0x74, 0x65, 0x64, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e,
|
0x69, 0x6e, 0x67, 0x32, 0x3c, 0x0a, 0x0c, 0x72, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x65,
|
||||||
0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x3f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62,
|
0x6e, 0x75, 0x6d, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73,
|
||||||
0x32, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x0c, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74,
|
0x69, 0x6f, 0x6e, 0x73, 0x18, 0x3e, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x70, 0x62, 0x32,
|
||||||
0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x22, 0x1a, 0x0a, 0x0a, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
|
0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x0a, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74, 0x45, 0x6e, 0x75,
|
||||||
0x65, 0x53, 0x65, 0x74, 0x2a, 0x08, 0x08, 0x04, 0x10, 0xff, 0xff, 0xff, 0xff, 0x07, 0x3a, 0x02,
|
0x6d, 0x32, 0x42, 0x0a, 0x0e, 0x72, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x6e, 0x65, 0x73,
|
||||||
0x08, 0x01, 0x22, 0xb6, 0x02, 0x0a, 0x13, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65,
|
0x74, 0x65, 0x64, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73,
|
||||||
0x74, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x70,
|
0x69, 0x6f, 0x6e, 0x73, 0x18, 0x3f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x32,
|
||||||
0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
|
0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x0c, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74, 0x4e,
|
||||||
0x6f, 0x70, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x32, 0x5d, 0x0a, 0x15, 0x6d, 0x65, 0x73,
|
0x65, 0x73, 0x74, 0x65, 0x64, 0x22, 0x1a, 0x0a, 0x0a, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
|
||||||
0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
|
0x53, 0x65, 0x74, 0x2a, 0x08, 0x08, 0x04, 0x10, 0xff, 0xff, 0xff, 0xff, 0x07, 0x3a, 0x02, 0x08,
|
||||||
0x6f, 0x6e, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
|
0x01, 0x22, 0xb6, 0x02, 0x0a, 0x13, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74,
|
||||||
0x53, 0x65, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x62, 0x32, 0x2e,
|
0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x70, 0x74,
|
||||||
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73,
|
0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f,
|
||||||
0x69, 0x6f, 0x6e, 0x52, 0x13, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45,
|
0x70, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x32, 0x5d, 0x0a, 0x15, 0x6d, 0x65, 0x73, 0x73,
|
||||||
0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x32, 0x64, 0x0a, 0x19, 0x6e, 0x6f, 0x74, 0x5f,
|
0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
|
||||||
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x65,
|
0x6e, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53,
|
||||||
0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73,
|
0x65, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x4d,
|
||||||
0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70,
|
|
||||||
0x62, 0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74,
|
|
||||||
0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x16, 0x6e, 0x6f, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61,
|
|
||||||
0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x32, 0x3b,
|
|
||||||
0x0a, 0x0a, 0x65, 0x78, 0x74, 0x5f, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x0f, 0x2e, 0x70,
|
|
||||||
0x62, 0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x18, 0x1e, 0x20,
|
|
||||||
0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64,
|
|
||||||
0x52, 0x09, 0x65, 0x78, 0x74, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x22, 0x1a, 0x0a, 0x0e, 0x46,
|
|
||||||
0x61, 0x6b, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x2a, 0x08, 0x08,
|
|
||||||
0x04, 0x10, 0x80, 0x80, 0x80, 0x80, 0x02, 0x22, 0x9f, 0x01, 0x0a, 0x17, 0x46, 0x61, 0x6b, 0x65,
|
|
||||||
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73,
|
|
||||||
0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x70, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e,
|
|
||||||
0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x53, 0x74, 0x72, 0x69,
|
|
||||||
0x6e, 0x67, 0x32, 0x65, 0x0a, 0x15, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65,
|
|
||||||
0x74, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x13, 0x2e, 0x70, 0x62,
|
|
||||||
0x32, 0x2e, 0x46, 0x61, 0x6b, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74,
|
|
||||||
0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x46, 0x61, 0x6b,
|
|
||||||
0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x6e,
|
|
||||||
0x73, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74,
|
|
||||||
0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x08, 0x0a, 0x0a, 0x4b, 0x6e,
|
|
||||||
0x6f, 0x77, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f,
|
|
||||||
0x62, 0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
|
|
||||||
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f,
|
|
||||||
0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x42, 0x6f, 0x6f, 0x6c, 0x12,
|
|
||||||
0x38, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x18, 0x02, 0x20, 0x01,
|
|
||||||
0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
|
|
||||||
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52,
|
|
||||||
0x08, 0x6f, 0x70, 0x74, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x38, 0x0a, 0x09, 0x6f, 0x70, 0x74,
|
|
||||||
0x5f, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67,
|
|
||||||
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49,
|
|
||||||
0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x49, 0x6e,
|
|
||||||
0x74, 0x36, 0x34, 0x12, 0x3b, 0x0a, 0x0a, 0x6f, 0x70, 0x74, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x33,
|
|
||||||
0x32, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
||||||
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32,
|
|
||||||
0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x55, 0x69, 0x6e, 0x74, 0x33, 0x32,
|
|
||||||
0x12, 0x3b, 0x0a, 0x0a, 0x6f, 0x70, 0x74, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x05,
|
|
||||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
|
|
||||||
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c,
|
|
||||||
0x75, 0x65, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x12, 0x38, 0x0a,
|
|
||||||
0x09, 0x6f, 0x70, 0x74, 0x5f, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
|
|
||||||
0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
|
|
||||||
0x75, 0x66, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x6f,
|
|
||||||
0x70, 0x74, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x3b, 0x0a, 0x0a, 0x6f, 0x70, 0x74, 0x5f, 0x64,
|
|
||||||
0x6f, 0x75, 0x62, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f,
|
|
||||||
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f,
|
|
||||||
0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x44, 0x6f,
|
|
||||||
0x75, 0x62, 0x6c, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x6f, 0x70, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69,
|
|
||||||
0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
|
||||||
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e,
|
|
||||||
0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e,
|
|
||||||
0x67, 0x12, 0x38, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x09,
|
|
||||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
|
|
||||||
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, 0x75,
|
|
||||||
0x65, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x0c, 0x6f,
|
|
||||||
0x70, 0x74, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28,
|
|
||||||
0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
|
||||||
0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6f, 0x70,
|
|
||||||
0x74, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x0d, 0x6f, 0x70, 0x74,
|
|
||||||
0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x15, 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, 0x0c, 0x6f, 0x70,
|
|
||||||
0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x36, 0x0a, 0x0a, 0x6f, 0x70,
|
|
||||||
0x74, 0x5f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17,
|
|
||||||
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
|
|
||||||
0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x53, 0x74, 0x72, 0x75,
|
|
||||||
0x63, 0x74, 0x12, 0x35, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x1a,
|
|
||||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
|
|
||||||
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65,
|
|
||||||
0x52, 0x07, 0x6f, 0x70, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x33, 0x0a, 0x09, 0x6f, 0x70, 0x74,
|
|
||||||
0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67,
|
|
||||||
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56,
|
|
||||||
0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x35,
|
|
||||||
0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0e,
|
|
||||||
0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
|
|
||||||
0x75, 0x66, 0x2e, 0x4e, 0x75, 0x6c, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x6f, 0x70,
|
|
||||||
0x74, 0x4e, 0x75, 0x6c, 0x6c, 0x12, 0x33, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x65, 0x6d, 0x70,
|
|
||||||
0x74, 0x79, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
|
||||||
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
|
|
||||||
0x52, 0x08, 0x6f, 0x70, 0x74, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70,
|
|
||||||
0x74, 0x5f, 0x61, 0x6e, 0x79, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f,
|
|
||||||
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e,
|
|
||||||
0x79, 0x52, 0x06, 0x6f, 0x70, 0x74, 0x41, 0x6e, 0x79, 0x12, 0x3f, 0x0a, 0x0d, 0x6f, 0x70, 0x74,
|
|
||||||
0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0b,
|
|
||||||
0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
|
|
||||||
0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0c, 0x6f, 0x70,
|
|
||||||
0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x6d, 0x61, 0x73, 0x6b, 0x2a, 0x21, 0x0a, 0x04, 0x45, 0x6e,
|
|
||||||
0x75, 0x6d, 0x12, 0x07, 0x0a, 0x03, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x54,
|
|
||||||
0x57, 0x4f, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x45, 0x4e, 0x10, 0x0a, 0x3a, 0x31, 0x0a,
|
|
||||||
0x0c, 0x6f, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x12, 0x0f, 0x2e,
|
|
||||||
0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x15,
|
|
||||||
0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6f, 0x70, 0x74, 0x45, 0x78, 0x74, 0x42, 0x6f, 0x6f, 0x6c,
|
|
||||||
0x3a, 0x35, 0x0a, 0x0e, 0x6f, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69,
|
|
||||||
0x6e, 0x67, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
|
|
||||||
0x6f, 0x6e, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x74, 0x45, 0x78,
|
|
||||||
0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x3a, 0x3c, 0x0a, 0x0c, 0x6f, 0x70, 0x74, 0x5f, 0x65,
|
|
||||||
0x78, 0x74, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78,
|
|
||||||
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09,
|
|
||||||
0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x0a, 0x6f, 0x70, 0x74, 0x45, 0x78,
|
|
||||||
0x74, 0x45, 0x6e, 0x75, 0x6d, 0x3a, 0x42, 0x0a, 0x0e, 0x6f, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74,
|
|
||||||
0x5f, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78,
|
|
||||||
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b,
|
|
||||||
0x2e, 0x70, 0x62, 0x32, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x0c, 0x6f, 0x70, 0x74,
|
|
||||||
0x45, 0x78, 0x74, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x3a, 0x37, 0x0a, 0x0f, 0x72, 0x70, 0x74,
|
|
||||||
0x5f, 0x65, 0x78, 0x74, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x12, 0x0f, 0x2e, 0x70,
|
|
||||||
0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x1f, 0x20,
|
|
||||||
0x03, 0x28, 0x07, 0x52, 0x0d, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74, 0x46, 0x69, 0x78, 0x65, 0x64,
|
|
||||||
0x33, 0x32, 0x3a, 0x3c, 0x0a, 0x0c, 0x72, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x65, 0x6e,
|
|
||||||
0x75, 0x6d, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
|
|
||||||
0x6f, 0x6e, 0x73, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x70, 0x62, 0x32, 0x2e,
|
|
||||||
0x45, 0x6e, 0x75, 0x6d, 0x52, 0x0a, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74, 0x45, 0x6e, 0x75, 0x6d,
|
|
||||||
0x3a, 0x42, 0x0a, 0x0e, 0x72, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x6e, 0x65, 0x73, 0x74,
|
|
||||||
0x65, 0x64, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
|
|
||||||
0x6f, 0x6e, 0x73, 0x18, 0x21, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x32, 0x2e,
|
|
||||||
0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x0c, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74, 0x4e, 0x65,
|
|
||||||
0x73, 0x74, 0x65, 0x64, 0x3a, 0x61, 0x0a, 0x15, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f,
|
|
||||||
0x73, 0x65, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0f, 0x2e,
|
|
||||||
0x70, 0x62, 0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x18, 0x32,
|
|
||||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x46, 0x61, 0x6b, 0x65, 0x4d,
|
|
||||||
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
|
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
|
||||||
0x6f, 0x6e, 0x52, 0x13, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78,
|
0x6f, 0x6e, 0x52, 0x13, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78,
|
||||||
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x37, 0x5a, 0x35, 0x67, 0x69, 0x74, 0x68, 0x75,
|
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x32, 0x64, 0x0a, 0x19, 0x6e, 0x6f, 0x74, 0x5f, 0x6d,
|
||||||
0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2f, 0x70, 0x72, 0x6f,
|
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e,
|
||||||
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x76, 0x32, 0x2f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e,
|
0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61,
|
||||||
0x67, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2f, 0x70, 0x62, 0x32,
|
0x67, 0x65, 0x53, 0x65, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x62,
|
||||||
|
0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65,
|
||||||
|
0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x16, 0x6e, 0x6f, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
|
||||||
|
0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x32, 0x3b, 0x0a,
|
||||||
|
0x0a, 0x65, 0x78, 0x74, 0x5f, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x0f, 0x2e, 0x70, 0x62,
|
||||||
|
0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x18, 0x1e, 0x20, 0x01,
|
||||||
|
0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52,
|
||||||
|
0x09, 0x65, 0x78, 0x74, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x22, 0x1a, 0x0a, 0x0e, 0x46, 0x61,
|
||||||
|
0x6b, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x2a, 0x08, 0x08, 0x04,
|
||||||
|
0x10, 0x80, 0x80, 0x80, 0x80, 0x02, 0x22, 0x9f, 0x01, 0x0a, 0x17, 0x46, 0x61, 0x6b, 0x65, 0x4d,
|
||||||
|
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
|
||||||
|
0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x70, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67,
|
||||||
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e,
|
||||||
|
0x67, 0x32, 0x65, 0x0a, 0x15, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x74,
|
||||||
|
0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x13, 0x2e, 0x70, 0x62, 0x32,
|
||||||
|
0x2e, 0x46, 0x61, 0x6b, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x18,
|
||||||
|
0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x46, 0x61, 0x6b, 0x65,
|
||||||
|
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73,
|
||||||
|
0x69, 0x6f, 0x6e, 0x52, 0x13, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45,
|
||||||
|
0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x08, 0x0a, 0x0a, 0x4b, 0x6e, 0x6f,
|
||||||
|
0x77, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x62,
|
||||||
|
0x6f, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
||||||
|
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c,
|
||||||
|
0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x38,
|
||||||
|
0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x18, 0x02, 0x20, 0x01, 0x28,
|
||||||
|
0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
||||||
|
0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08,
|
||||||
|
0x6f, 0x70, 0x74, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x12, 0x38, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f,
|
||||||
|
0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f,
|
||||||
|
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e,
|
||||||
|
0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x49, 0x6e, 0x74,
|
||||||
|
0x36, 0x34, 0x12, 0x3b, 0x0a, 0x0a, 0x6f, 0x70, 0x74, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32,
|
||||||
|
0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
|
||||||
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56,
|
||||||
|
0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x55, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x12,
|
||||||
|
0x3b, 0x0a, 0x0a, 0x6f, 0x70, 0x74, 0x5f, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x18, 0x05, 0x20,
|
||||||
|
0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
|
||||||
|
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75,
|
||||||
|
0x65, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x55, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x12, 0x38, 0x0a, 0x09,
|
||||||
|
0x6f, 0x70, 0x74, 0x5f, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
||||||
|
0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
|
||||||
|
0x66, 0x2e, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x08, 0x6f, 0x70,
|
||||||
|
0x74, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x12, 0x3b, 0x0a, 0x0a, 0x6f, 0x70, 0x74, 0x5f, 0x64, 0x6f,
|
||||||
|
0x75, 0x62, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f,
|
||||||
|
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x6f, 0x75,
|
||||||
|
0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x44, 0x6f, 0x75,
|
||||||
|
0x62, 0x6c, 0x65, 0x12, 0x3b, 0x0a, 0x0a, 0x6f, 0x70, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e,
|
||||||
|
0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
||||||
|
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
|
||||||
|
0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67,
|
||||||
|
0x12, 0x38, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20,
|
||||||
|
0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
|
||||||
|
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65,
|
||||||
|
0x52, 0x08, 0x6f, 0x70, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x0c, 0x6f, 0x70,
|
||||||
|
0x74, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b,
|
||||||
|
0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
|
||||||
|
0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6f, 0x70, 0x74,
|
||||||
|
0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x0d, 0x6f, 0x70, 0x74, 0x5f,
|
||||||
|
0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x15, 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, 0x0c, 0x6f, 0x70, 0x74,
|
||||||
|
0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x36, 0x0a, 0x0a, 0x6f, 0x70, 0x74,
|
||||||
|
0x5f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e,
|
||||||
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
|
||||||
|
0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x09, 0x6f, 0x70, 0x74, 0x53, 0x74, 0x72, 0x75, 0x63,
|
||||||
|
0x74, 0x12, 0x35, 0x0a, 0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x1a, 0x20,
|
||||||
|
0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
|
||||||
|
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52,
|
||||||
|
0x07, 0x6f, 0x70, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x33, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f,
|
||||||
|
0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f,
|
||||||
|
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61,
|
||||||
|
0x6c, 0x75, 0x65, 0x52, 0x08, 0x6f, 0x70, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x35, 0x0a,
|
||||||
|
0x08, 0x6f, 0x70, 0x74, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0e, 0x32,
|
||||||
|
0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
|
||||||
|
0x66, 0x2e, 0x4e, 0x75, 0x6c, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x6f, 0x70, 0x74,
|
||||||
|
0x4e, 0x75, 0x6c, 0x6c, 0x12, 0x33, 0x0a, 0x09, 0x6f, 0x70, 0x74, 0x5f, 0x65, 0x6d, 0x70, 0x74,
|
||||||
|
0x79, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
||||||
|
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x52,
|
||||||
|
0x08, 0x6f, 0x70, 0x74, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74,
|
||||||
|
0x5f, 0x61, 0x6e, 0x79, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f,
|
||||||
|
0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79,
|
||||||
|
0x52, 0x06, 0x6f, 0x70, 0x74, 0x41, 0x6e, 0x79, 0x12, 0x3f, 0x0a, 0x0d, 0x6f, 0x70, 0x74, 0x5f,
|
||||||
|
0x66, 0x69, 0x65, 0x6c, 0x64, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x28, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
||||||
|
0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
|
||||||
|
0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0c, 0x6f, 0x70, 0x74,
|
||||||
|
0x46, 0x69, 0x65, 0x6c, 0x64, 0x6d, 0x61, 0x73, 0x6b, 0x2a, 0x21, 0x0a, 0x04, 0x45, 0x6e, 0x75,
|
||||||
|
0x6d, 0x12, 0x07, 0x0a, 0x03, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x57,
|
||||||
|
0x4f, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x45, 0x4e, 0x10, 0x0a, 0x3a, 0x31, 0x0a, 0x0c,
|
||||||
|
0x6f, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x12, 0x0f, 0x2e, 0x70,
|
||||||
|
0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x15, 0x20,
|
||||||
|
0x01, 0x28, 0x08, 0x52, 0x0a, 0x6f, 0x70, 0x74, 0x45, 0x78, 0x74, 0x42, 0x6f, 0x6f, 0x6c, 0x3a,
|
||||||
|
0x35, 0x0a, 0x0e, 0x6f, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e,
|
||||||
|
0x67, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
|
||||||
|
0x6e, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x74, 0x45, 0x78, 0x74,
|
||||||
|
0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x3a, 0x3c, 0x0a, 0x0c, 0x6f, 0x70, 0x74, 0x5f, 0x65, 0x78,
|
||||||
|
0x74, 0x5f, 0x65, 0x6e, 0x75, 0x6d, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74,
|
||||||
|
0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x09, 0x2e,
|
||||||
|
0x70, 0x62, 0x32, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x0a, 0x6f, 0x70, 0x74, 0x45, 0x78, 0x74,
|
||||||
|
0x45, 0x6e, 0x75, 0x6d, 0x3a, 0x42, 0x0a, 0x0e, 0x6f, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f,
|
||||||
|
0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74,
|
||||||
|
0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
|
||||||
|
0x70, 0x62, 0x32, 0x2e, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x0c, 0x6f, 0x70, 0x74, 0x45,
|
||||||
|
0x78, 0x74, 0x4e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x3a, 0x4d, 0x0a, 0x0f, 0x6f, 0x70, 0x74, 0x5f,
|
||||||
|
0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x0f, 0x2e, 0x70, 0x62,
|
||||||
|
0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x19, 0x20, 0x01,
|
||||||
|
0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c,
|
||||||
|
0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x52, 0x0d, 0x6f, 0x70, 0x74, 0x45, 0x78, 0x74,
|
||||||
|
0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x3a, 0x37, 0x0a, 0x0f, 0x72, 0x70, 0x74, 0x5f, 0x65,
|
||||||
|
0x78, 0x74, 0x5f, 0x66, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32, 0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32,
|
||||||
|
0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x1f, 0x20, 0x03, 0x28,
|
||||||
|
0x07, 0x52, 0x0d, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74, 0x46, 0x69, 0x78, 0x65, 0x64, 0x33, 0x32,
|
||||||
|
0x3a, 0x3c, 0x0a, 0x0c, 0x72, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x65, 0x6e, 0x75, 0x6d,
|
||||||
|
0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
|
||||||
|
0x73, 0x18, 0x20, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x09, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x6e,
|
||||||
|
0x75, 0x6d, 0x52, 0x0a, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74, 0x45, 0x6e, 0x75, 0x6d, 0x3a, 0x42,
|
||||||
|
0x0a, 0x0e, 0x72, 0x70, 0x74, 0x5f, 0x65, 0x78, 0x74, 0x5f, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64,
|
||||||
|
0x12, 0x0f, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
|
||||||
|
0x73, 0x18, 0x21, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x4e, 0x65,
|
||||||
|
0x73, 0x74, 0x65, 0x64, 0x52, 0x0c, 0x72, 0x70, 0x74, 0x45, 0x78, 0x74, 0x4e, 0x65, 0x73, 0x74,
|
||||||
|
0x65, 0x64, 0x3a, 0x61, 0x0a, 0x15, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65,
|
||||||
|
0x74, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0f, 0x2e, 0x70, 0x62,
|
||||||
|
0x32, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x18, 0x32, 0x20, 0x01,
|
||||||
|
0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x62, 0x32, 0x2e, 0x46, 0x61, 0x6b, 0x65, 0x4d, 0x65, 0x73,
|
||||||
|
0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
|
||||||
|
0x52, 0x13, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x74, 0x45, 0x78, 0x74, 0x65,
|
||||||
|
0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x37, 0x5a, 0x35, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
|
||||||
|
0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
||||||
|
0x62, 0x75, 0x66, 0x2f, 0x76, 0x32, 0x2f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x2f,
|
||||||
|
0x74, 0x65, 0x73, 0x74, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x2f, 0x70, 0x62, 0x32,
|
||||||
}
|
}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
@ -1943,6 +1975,7 @@ var xxx_File_pb2_test_proto_depIdxs = []int32{
|
|||||||
11, // pb2.opt_ext_string:extendee -> pb2.Extensions
|
11, // pb2.opt_ext_string:extendee -> pb2.Extensions
|
||||||
11, // pb2.opt_ext_enum:extendee -> pb2.Extensions
|
11, // pb2.opt_ext_enum:extendee -> pb2.Extensions
|
||||||
11, // pb2.opt_ext_nested:extendee -> pb2.Extensions
|
11, // pb2.opt_ext_nested:extendee -> pb2.Extensions
|
||||||
|
11, // pb2.opt_ext_partial:extendee -> pb2.Extensions
|
||||||
11, // pb2.rpt_ext_fixed32:extendee -> pb2.Extensions
|
11, // pb2.rpt_ext_fixed32:extendee -> pb2.Extensions
|
||||||
11, // pb2.rpt_ext_enum:extendee -> pb2.Extensions
|
11, // pb2.rpt_ext_enum:extendee -> pb2.Extensions
|
||||||
11, // pb2.rpt_ext_nested:extendee -> pb2.Extensions
|
11, // pb2.rpt_ext_nested:extendee -> pb2.Extensions
|
||||||
@ -1951,6 +1984,7 @@ var xxx_File_pb2_test_proto_depIdxs = []int32{
|
|||||||
11, // pb2.ExtensionsContainer.opt_ext_string:extendee -> pb2.Extensions
|
11, // pb2.ExtensionsContainer.opt_ext_string:extendee -> pb2.Extensions
|
||||||
11, // pb2.ExtensionsContainer.opt_ext_enum:extendee -> pb2.Extensions
|
11, // pb2.ExtensionsContainer.opt_ext_enum:extendee -> pb2.Extensions
|
||||||
11, // pb2.ExtensionsContainer.opt_ext_nested:extendee -> pb2.Extensions
|
11, // pb2.ExtensionsContainer.opt_ext_nested:extendee -> pb2.Extensions
|
||||||
|
11, // pb2.ExtensionsContainer.opt_ext_partial:extendee -> pb2.Extensions
|
||||||
11, // pb2.ExtensionsContainer.rpt_ext_string:extendee -> pb2.Extensions
|
11, // pb2.ExtensionsContainer.rpt_ext_string:extendee -> pb2.Extensions
|
||||||
11, // pb2.ExtensionsContainer.rpt_ext_enum:extendee -> pb2.Extensions
|
11, // pb2.ExtensionsContainer.rpt_ext_enum:extendee -> pb2.Extensions
|
||||||
11, // pb2.ExtensionsContainer.rpt_ext_nested:extendee -> pb2.Extensions
|
11, // pb2.ExtensionsContainer.rpt_ext_nested:extendee -> pb2.Extensions
|
||||||
@ -1996,11 +2030,13 @@ var xxx_File_pb2_test_proto_depIdxs = []int32{
|
|||||||
9, // pb2.IndirectRequired.StrToNestedEntry.value:type_name -> pb2.NestedWithRequired
|
9, // pb2.IndirectRequired.StrToNestedEntry.value:type_name -> pb2.NestedWithRequired
|
||||||
0, // pb2.opt_ext_enum:type_name -> pb2.Enum
|
0, // pb2.opt_ext_enum:type_name -> pb2.Enum
|
||||||
5, // pb2.opt_ext_nested:type_name -> pb2.Nested
|
5, // pb2.opt_ext_nested:type_name -> pb2.Nested
|
||||||
|
8, // pb2.opt_ext_partial:type_name -> pb2.PartialRequired
|
||||||
0, // pb2.rpt_ext_enum:type_name -> pb2.Enum
|
0, // pb2.rpt_ext_enum:type_name -> pb2.Enum
|
||||||
5, // pb2.rpt_ext_nested:type_name -> pb2.Nested
|
5, // pb2.rpt_ext_nested:type_name -> pb2.Nested
|
||||||
16, // pb2.message_set_extension:type_name -> pb2.FakeMessageSetExtension
|
16, // pb2.message_set_extension:type_name -> pb2.FakeMessageSetExtension
|
||||||
0, // pb2.ExtensionsContainer.opt_ext_enum:type_name -> pb2.Enum
|
0, // pb2.ExtensionsContainer.opt_ext_enum:type_name -> pb2.Enum
|
||||||
5, // pb2.ExtensionsContainer.opt_ext_nested:type_name -> pb2.Nested
|
5, // pb2.ExtensionsContainer.opt_ext_nested:type_name -> pb2.Nested
|
||||||
|
8, // pb2.ExtensionsContainer.opt_ext_partial:type_name -> pb2.PartialRequired
|
||||||
0, // pb2.ExtensionsContainer.rpt_ext_enum:type_name -> pb2.Enum
|
0, // pb2.ExtensionsContainer.rpt_ext_enum:type_name -> pb2.Enum
|
||||||
5, // pb2.ExtensionsContainer.rpt_ext_nested:type_name -> pb2.Nested
|
5, // pb2.ExtensionsContainer.rpt_ext_nested:type_name -> pb2.Nested
|
||||||
14, // pb2.MessageSetExtension.message_set_extension:type_name -> pb2.MessageSetExtension
|
14, // pb2.MessageSetExtension.message_set_extension:type_name -> pb2.MessageSetExtension
|
||||||
@ -2014,7 +2050,7 @@ func xxx_File_pb2_test_proto_init() {
|
|||||||
if File_pb2_test_proto != nil {
|
if File_pb2_test_proto != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
extensionTypes := make([]protoreflect.ExtensionType, 19)
|
extensionTypes := make([]protoreflect.ExtensionType, 21)
|
||||||
File_pb2_test_proto = protoimpl.FileBuilder{
|
File_pb2_test_proto = protoimpl.FileBuilder{
|
||||||
RawDescriptor: xxx_File_pb2_test_proto_rawDesc,
|
RawDescriptor: xxx_File_pb2_test_proto_rawDesc,
|
||||||
GoTypes: xxx_File_pb2_test_proto_goTypes,
|
GoTypes: xxx_File_pb2_test_proto_goTypes,
|
||||||
|
@ -146,6 +146,7 @@ extend Extensions {
|
|||||||
optional string opt_ext_string = 22;
|
optional string opt_ext_string = 22;
|
||||||
optional Enum opt_ext_enum = 23;
|
optional Enum opt_ext_enum = 23;
|
||||||
optional Nested opt_ext_nested = 24;
|
optional Nested opt_ext_nested = 24;
|
||||||
|
optional PartialRequired opt_ext_partial = 25;
|
||||||
|
|
||||||
repeated fixed32 rpt_ext_fixed32 = 31;
|
repeated fixed32 rpt_ext_fixed32 = 31;
|
||||||
repeated Enum rpt_ext_enum = 32;
|
repeated Enum rpt_ext_enum = 32;
|
||||||
@ -158,6 +159,7 @@ message ExtensionsContainer {
|
|||||||
optional string opt_ext_string = 52;
|
optional string opt_ext_string = 52;
|
||||||
optional Enum opt_ext_enum = 53;
|
optional Enum opt_ext_enum = 53;
|
||||||
optional Nested opt_ext_nested = 54;
|
optional Nested opt_ext_nested = 54;
|
||||||
|
optional PartialRequired opt_ext_partial = 55;
|
||||||
|
|
||||||
repeated string rpt_ext_string = 61;
|
repeated string rpt_ext_string = 61;
|
||||||
repeated Enum rpt_ext_enum = 62;
|
repeated Enum rpt_ext_enum = 62;
|
||||||
|
@ -11,6 +11,8 @@ import (
|
|||||||
"github.com/golang/protobuf/v2/internal/encoding/text"
|
"github.com/golang/protobuf/v2/internal/encoding/text"
|
||||||
"github.com/golang/protobuf/v2/internal/encoding/wire"
|
"github.com/golang/protobuf/v2/internal/encoding/wire"
|
||||||
"github.com/golang/protobuf/v2/internal/errors"
|
"github.com/golang/protobuf/v2/internal/errors"
|
||||||
|
"github.com/golang/protobuf/v2/internal/fieldnum"
|
||||||
|
"github.com/golang/protobuf/v2/internal/mapsort"
|
||||||
"github.com/golang/protobuf/v2/internal/pragma"
|
"github.com/golang/protobuf/v2/internal/pragma"
|
||||||
"github.com/golang/protobuf/v2/proto"
|
"github.com/golang/protobuf/v2/proto"
|
||||||
pref "github.com/golang/protobuf/v2/reflect/protoreflect"
|
pref "github.com/golang/protobuf/v2/reflect/protoreflect"
|
||||||
@ -188,7 +190,7 @@ func (o MarshalOptions) marshalSingular(val pref.Value, fd pref.FieldDescriptor)
|
|||||||
return o.marshalMessage(val.Message())
|
return o.marshalMessage(val.Message())
|
||||||
}
|
}
|
||||||
|
|
||||||
return text.Value{}, errors.New("%v has unknown kind: %v", fd.FullName(), kind)
|
panic(fmt.Sprintf("%v has unknown kind: %v", fd.FullName(), kind))
|
||||||
}
|
}
|
||||||
|
|
||||||
// marshalList converts a protoreflect.List to []text.Value.
|
// marshalList converts a protoreflect.List to []text.Value.
|
||||||
@ -224,12 +226,15 @@ func (o MarshalOptions) marshalMap(mmap pref.Map, fd pref.FieldDescriptor) ([]te
|
|||||||
keyType := msgFields.ByNumber(1)
|
keyType := msgFields.ByNumber(1)
|
||||||
valType := msgFields.ByNumber(2)
|
valType := msgFields.ByNumber(2)
|
||||||
|
|
||||||
mmap.Range(func(key pref.MapKey, val pref.Value) bool {
|
var err error
|
||||||
keyTxtVal, err := o.marshalSingular(key.Value(), keyType)
|
mapsort.Range(mmap, keyType.Kind(), func(key pref.MapKey, val pref.Value) bool {
|
||||||
|
var keyTxtVal text.Value
|
||||||
|
keyTxtVal, err = o.marshalSingular(key.Value(), keyType)
|
||||||
if !nerr.Merge(err) {
|
if !nerr.Merge(err) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
valTxtVal, err := o.marshalSingular(val, valType)
|
var valTxtVal text.Value
|
||||||
|
valTxtVal, err = o.marshalSingular(val, valType)
|
||||||
if !nerr.Merge(err) {
|
if !nerr.Merge(err) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
@ -239,65 +244,22 @@ func (o MarshalOptions) marshalMap(mmap pref.Map, fd pref.FieldDescriptor) ([]te
|
|||||||
{mapValueName, valTxtVal},
|
{mapValueName, valTxtVal},
|
||||||
})
|
})
|
||||||
values = append(values, msg)
|
values = append(values, msg)
|
||||||
|
err = nil
|
||||||
return true
|
return true
|
||||||
})
|
})
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
sortMap(keyType.Kind(), values)
|
|
||||||
return values, nerr.E
|
return values, nerr.E
|
||||||
}
|
}
|
||||||
|
|
||||||
// sortMap orders list based on value of key field for deterministic output.
|
|
||||||
// TODO: Improve sort comparison of text.Value for map keys.
|
|
||||||
func sortMap(keyKind pref.Kind, values []text.Value) {
|
|
||||||
less := func(i, j int) bool {
|
|
||||||
mi := values[i].Message()
|
|
||||||
mj := values[j].Message()
|
|
||||||
return mi[0][1].String() < mj[0][1].String()
|
|
||||||
}
|
|
||||||
switch keyKind {
|
|
||||||
case pref.Int32Kind, pref.Sint32Kind, pref.Sfixed32Kind:
|
|
||||||
less = func(i, j int) bool {
|
|
||||||
mi := values[i].Message()
|
|
||||||
mj := values[j].Message()
|
|
||||||
ni, _ := mi[0][1].Int(false)
|
|
||||||
nj, _ := mj[0][1].Int(false)
|
|
||||||
return ni < nj
|
|
||||||
}
|
|
||||||
case pref.Int64Kind, pref.Sint64Kind, pref.Sfixed64Kind:
|
|
||||||
less = func(i, j int) bool {
|
|
||||||
mi := values[i].Message()
|
|
||||||
mj := values[j].Message()
|
|
||||||
ni, _ := mi[0][1].Int(true)
|
|
||||||
nj, _ := mj[0][1].Int(true)
|
|
||||||
return ni < nj
|
|
||||||
}
|
|
||||||
|
|
||||||
case pref.Uint32Kind, pref.Fixed32Kind:
|
|
||||||
less = func(i, j int) bool {
|
|
||||||
mi := values[i].Message()
|
|
||||||
mj := values[j].Message()
|
|
||||||
ni, _ := mi[0][1].Uint(false)
|
|
||||||
nj, _ := mj[0][1].Uint(false)
|
|
||||||
return ni < nj
|
|
||||||
}
|
|
||||||
case pref.Uint64Kind, pref.Fixed64Kind:
|
|
||||||
less = func(i, j int) bool {
|
|
||||||
mi := values[i].Message()
|
|
||||||
mj := values[j].Message()
|
|
||||||
ni, _ := mi[0][1].Uint(true)
|
|
||||||
nj, _ := mj[0][1].Uint(true)
|
|
||||||
return ni < nj
|
|
||||||
}
|
|
||||||
}
|
|
||||||
sort.Slice(values, less)
|
|
||||||
}
|
|
||||||
|
|
||||||
// appendExtensions marshals extension fields and appends them to the given [][2]text.Value.
|
// appendExtensions marshals extension fields and appends them to the given [][2]text.Value.
|
||||||
func (o MarshalOptions) appendExtensions(msgFields [][2]text.Value, knownFields pref.KnownFields) ([][2]text.Value, error) {
|
func (o MarshalOptions) appendExtensions(msgFields [][2]text.Value, knownFields pref.KnownFields) ([][2]text.Value, error) {
|
||||||
var nerr errors.NonFatal
|
|
||||||
xtTypes := knownFields.ExtensionTypes()
|
xtTypes := knownFields.ExtensionTypes()
|
||||||
xtFields := make([][2]text.Value, 0, xtTypes.Len())
|
xtFields := make([][2]text.Value, 0, xtTypes.Len())
|
||||||
|
|
||||||
|
var nerr errors.NonFatal
|
||||||
var err error
|
var err error
|
||||||
xtTypes.Range(func(xt pref.ExtensionType) bool {
|
xtTypes.Range(func(xt pref.ExtensionType) bool {
|
||||||
name := xt.FullName()
|
name := xt.FullName()
|
||||||
@ -312,13 +274,14 @@ func (o MarshalOptions) appendExtensions(msgFields [][2]text.Value, knownFields
|
|||||||
tname := text.ValueOf(string(name))
|
tname := text.ValueOf(string(name))
|
||||||
pval := knownFields.Get(num)
|
pval := knownFields.Get(num)
|
||||||
xtFields, err = o.appendField(xtFields, tname, pval, xt)
|
xtFields, err = o.appendField(xtFields, tname, pval, xt)
|
||||||
if err != nil {
|
if !nerr.Merge(err) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
err = nil
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
})
|
})
|
||||||
if !nerr.Merge(err) {
|
if err != nil {
|
||||||
return msgFields, err
|
return msgFields, err
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -380,20 +343,9 @@ func appendUnknown(fields [][2]text.Value, b []byte) [][2]text.Value {
|
|||||||
// marshalAny converts a google.protobuf.Any protoreflect.Message to a text.Value.
|
// marshalAny converts a google.protobuf.Any protoreflect.Message to a text.Value.
|
||||||
func (o MarshalOptions) marshalAny(m pref.Message) (text.Value, error) {
|
func (o MarshalOptions) marshalAny(m pref.Message) (text.Value, error) {
|
||||||
var nerr errors.NonFatal
|
var nerr errors.NonFatal
|
||||||
|
|
||||||
fds := m.Type().Fields()
|
|
||||||
tfd := fds.ByName("type_url")
|
|
||||||
if tfd == nil || tfd.Kind() != pref.StringKind {
|
|
||||||
return text.Value{}, errors.New("invalid google.protobuf.Any message")
|
|
||||||
}
|
|
||||||
vfd := fds.ByName("value")
|
|
||||||
if vfd == nil || vfd.Kind() != pref.BytesKind {
|
|
||||||
return text.Value{}, errors.New("invalid google.protobuf.Any message")
|
|
||||||
}
|
|
||||||
|
|
||||||
knownFields := m.KnownFields()
|
knownFields := m.KnownFields()
|
||||||
typeURL := knownFields.Get(tfd.Number()).String()
|
typeURL := knownFields.Get(fieldnum.Any_TypeUrl).String()
|
||||||
value := knownFields.Get(vfd.Number())
|
value := knownFields.Get(fieldnum.Any_Value)
|
||||||
|
|
||||||
emt, err := o.Resolver.FindMessageByURL(typeURL)
|
emt, err := o.Resolver.FindMessageByURL(typeURL)
|
||||||
if !nerr.Merge(err) {
|
if !nerr.Merge(err) {
|
||||||
|
@ -917,6 +917,40 @@ opt_int32: 42
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
[pb2.opt_ext_string]: "extension field"
|
[pb2.opt_ext_string]: "extension field"
|
||||||
|
`,
|
||||||
|
}, {
|
||||||
|
desc: "extension partial returns error",
|
||||||
|
input: func() proto.Message {
|
||||||
|
m := &pb2.Extensions{}
|
||||||
|
setExtension(m, pb2.E_OptExtPartial, &pb2.PartialRequired{
|
||||||
|
OptString: scalar.String("partial1"),
|
||||||
|
})
|
||||||
|
setExtension(m, pb2.E_ExtensionsContainer_OptExtPartial, &pb2.PartialRequired{
|
||||||
|
OptString: scalar.String("partial2"),
|
||||||
|
})
|
||||||
|
return m
|
||||||
|
}(),
|
||||||
|
want: `[pb2.ExtensionsContainer.opt_ext_partial]: {
|
||||||
|
opt_string: "partial2"
|
||||||
|
}
|
||||||
|
[pb2.opt_ext_partial]: {
|
||||||
|
opt_string: "partial1"
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
wantErr: true,
|
||||||
|
}, {
|
||||||
|
desc: "extension partial with AllowPartial",
|
||||||
|
mo: textpb.MarshalOptions{AllowPartial: true},
|
||||||
|
input: func() proto.Message {
|
||||||
|
m := &pb2.Extensions{}
|
||||||
|
setExtension(m, pb2.E_OptExtPartial, &pb2.PartialRequired{
|
||||||
|
OptString: scalar.String("partial1"),
|
||||||
|
})
|
||||||
|
return m
|
||||||
|
}(),
|
||||||
|
want: `[pb2.opt_ext_partial]: {
|
||||||
|
opt_string: "partial1"
|
||||||
|
}
|
||||||
`,
|
`,
|
||||||
}, {
|
}, {
|
||||||
desc: "extension message field set to nil",
|
desc: "extension message field set to nil",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user