fork of https://github.com/sourcegraph/zoekt
1// Code generated by protoc-gen-go. DO NOT EDIT.
2// versions:
3// protoc-gen-go v1.29.1
4// protoc (unknown)
5// source: webserver.proto
6
7package v1
8
9import (
10 protoreflect "google.golang.org/protobuf/reflect/protoreflect"
11 protoimpl "google.golang.org/protobuf/runtime/protoimpl"
12 durationpb "google.golang.org/protobuf/types/known/durationpb"
13 timestamppb "google.golang.org/protobuf/types/known/timestamppb"
14 reflect "reflect"
15 sync "sync"
16)
17
18const (
19 // Verify that this generated code is sufficiently up-to-date.
20 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
21 // Verify that runtime/protoimpl is sufficiently up-to-date.
22 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
23)
24
25type FlushReason int32
26
27const (
28 FlushReason_UNKNOWN FlushReason = 0
29 FlushReason_TIMER_EXPIRED FlushReason = 1
30 FlushReason_FINAL_FLUSH FlushReason = 2
31 FlushReason_MAX_SIZE FlushReason = 3
32)
33
34// Enum value maps for FlushReason.
35var (
36 FlushReason_name = map[int32]string{
37 0: "UNKNOWN",
38 1: "TIMER_EXPIRED",
39 2: "FINAL_FLUSH",
40 3: "MAX_SIZE",
41 }
42 FlushReason_value = map[string]int32{
43 "UNKNOWN": 0,
44 "TIMER_EXPIRED": 1,
45 "FINAL_FLUSH": 2,
46 "MAX_SIZE": 3,
47 }
48)
49
50func (x FlushReason) Enum() *FlushReason {
51 p := new(FlushReason)
52 *p = x
53 return p
54}
55
56func (x FlushReason) String() string {
57 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
58}
59
60func (FlushReason) Descriptor() protoreflect.EnumDescriptor {
61 return file_webserver_proto_enumTypes[0].Descriptor()
62}
63
64func (FlushReason) Type() protoreflect.EnumType {
65 return &file_webserver_proto_enumTypes[0]
66}
67
68func (x FlushReason) Number() protoreflect.EnumNumber {
69 return protoreflect.EnumNumber(x)
70}
71
72// Deprecated: Use FlushReason.Descriptor instead.
73func (FlushReason) EnumDescriptor() ([]byte, []int) {
74 return file_webserver_proto_rawDescGZIP(), []int{0}
75}
76
77type ListOptions_RepoListField int32
78
79const (
80 ListOptions_REPO_LIST_FIELD_UNKNOWN ListOptions_RepoListField = 0
81 ListOptions_REPO_LIST_FIELD_REPOS ListOptions_RepoListField = 1
82 ListOptions_REPO_LIST_FIELD_MINIMAL ListOptions_RepoListField = 2
83 ListOptions_REPO_LIST_FIELD_REPOS_MAP ListOptions_RepoListField = 3
84)
85
86// Enum value maps for ListOptions_RepoListField.
87var (
88 ListOptions_RepoListField_name = map[int32]string{
89 0: "REPO_LIST_FIELD_UNKNOWN",
90 1: "REPO_LIST_FIELD_REPOS",
91 2: "REPO_LIST_FIELD_MINIMAL",
92 3: "REPO_LIST_FIELD_REPOS_MAP",
93 }
94 ListOptions_RepoListField_value = map[string]int32{
95 "REPO_LIST_FIELD_UNKNOWN": 0,
96 "REPO_LIST_FIELD_REPOS": 1,
97 "REPO_LIST_FIELD_MINIMAL": 2,
98 "REPO_LIST_FIELD_REPOS_MAP": 3,
99 }
100)
101
102func (x ListOptions_RepoListField) Enum() *ListOptions_RepoListField {
103 p := new(ListOptions_RepoListField)
104 *p = x
105 return p
106}
107
108func (x ListOptions_RepoListField) String() string {
109 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
110}
111
112func (ListOptions_RepoListField) Descriptor() protoreflect.EnumDescriptor {
113 return file_webserver_proto_enumTypes[1].Descriptor()
114}
115
116func (ListOptions_RepoListField) Type() protoreflect.EnumType {
117 return &file_webserver_proto_enumTypes[1]
118}
119
120func (x ListOptions_RepoListField) Number() protoreflect.EnumNumber {
121 return protoreflect.EnumNumber(x)
122}
123
124// Deprecated: Use ListOptions_RepoListField.Descriptor instead.
125func (ListOptions_RepoListField) EnumDescriptor() ([]byte, []int) {
126 return file_webserver_proto_rawDescGZIP(), []int{4, 0}
127}
128
129type SearchRequest struct {
130 state protoimpl.MessageState
131 sizeCache protoimpl.SizeCache
132 unknownFields protoimpl.UnknownFields
133
134 Query *Q `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
135 Opts *SearchOptions `protobuf:"bytes,2,opt,name=opts,proto3" json:"opts,omitempty"`
136}
137
138func (x *SearchRequest) Reset() {
139 *x = SearchRequest{}
140 if protoimpl.UnsafeEnabled {
141 mi := &file_webserver_proto_msgTypes[0]
142 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
143 ms.StoreMessageInfo(mi)
144 }
145}
146
147func (x *SearchRequest) String() string {
148 return protoimpl.X.MessageStringOf(x)
149}
150
151func (*SearchRequest) ProtoMessage() {}
152
153func (x *SearchRequest) ProtoReflect() protoreflect.Message {
154 mi := &file_webserver_proto_msgTypes[0]
155 if protoimpl.UnsafeEnabled && x != nil {
156 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
157 if ms.LoadMessageInfo() == nil {
158 ms.StoreMessageInfo(mi)
159 }
160 return ms
161 }
162 return mi.MessageOf(x)
163}
164
165// Deprecated: Use SearchRequest.ProtoReflect.Descriptor instead.
166func (*SearchRequest) Descriptor() ([]byte, []int) {
167 return file_webserver_proto_rawDescGZIP(), []int{0}
168}
169
170func (x *SearchRequest) GetQuery() *Q {
171 if x != nil {
172 return x.Query
173 }
174 return nil
175}
176
177func (x *SearchRequest) GetOpts() *SearchOptions {
178 if x != nil {
179 return x.Opts
180 }
181 return nil
182}
183
184type SearchResponse struct {
185 state protoimpl.MessageState
186 sizeCache protoimpl.SizeCache
187 unknownFields protoimpl.UnknownFields
188
189 Stats *Stats `protobuf:"bytes,1,opt,name=stats,proto3" json:"stats,omitempty"`
190 Progress *Progress `protobuf:"bytes,2,opt,name=progress,proto3" json:"progress,omitempty"`
191 Files []*FileMatch `protobuf:"bytes,3,rep,name=files,proto3" json:"files,omitempty"`
192 // RepoURLs holds a repo => template string map.
193 RepoUrls map[string]string `protobuf:"bytes,4,rep,name=repo_urls,json=repoUrls,proto3" json:"repo_urls,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
194 // FragmentNames holds a repo => template string map, for
195 // the line number fragment.
196 LineFragments map[string]string `protobuf:"bytes,5,rep,name=line_fragments,json=lineFragments,proto3" json:"line_fragments,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
197}
198
199func (x *SearchResponse) Reset() {
200 *x = SearchResponse{}
201 if protoimpl.UnsafeEnabled {
202 mi := &file_webserver_proto_msgTypes[1]
203 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
204 ms.StoreMessageInfo(mi)
205 }
206}
207
208func (x *SearchResponse) String() string {
209 return protoimpl.X.MessageStringOf(x)
210}
211
212func (*SearchResponse) ProtoMessage() {}
213
214func (x *SearchResponse) ProtoReflect() protoreflect.Message {
215 mi := &file_webserver_proto_msgTypes[1]
216 if protoimpl.UnsafeEnabled && x != nil {
217 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
218 if ms.LoadMessageInfo() == nil {
219 ms.StoreMessageInfo(mi)
220 }
221 return ms
222 }
223 return mi.MessageOf(x)
224}
225
226// Deprecated: Use SearchResponse.ProtoReflect.Descriptor instead.
227func (*SearchResponse) Descriptor() ([]byte, []int) {
228 return file_webserver_proto_rawDescGZIP(), []int{1}
229}
230
231func (x *SearchResponse) GetStats() *Stats {
232 if x != nil {
233 return x.Stats
234 }
235 return nil
236}
237
238func (x *SearchResponse) GetProgress() *Progress {
239 if x != nil {
240 return x.Progress
241 }
242 return nil
243}
244
245func (x *SearchResponse) GetFiles() []*FileMatch {
246 if x != nil {
247 return x.Files
248 }
249 return nil
250}
251
252func (x *SearchResponse) GetRepoUrls() map[string]string {
253 if x != nil {
254 return x.RepoUrls
255 }
256 return nil
257}
258
259func (x *SearchResponse) GetLineFragments() map[string]string {
260 if x != nil {
261 return x.LineFragments
262 }
263 return nil
264}
265
266type SearchOptions struct {
267 state protoimpl.MessageState
268 sizeCache protoimpl.SizeCache
269 unknownFields protoimpl.UnknownFields
270
271 // Return an upper-bound estimate of eligible documents in
272 // stats.ShardFilesConsidered.
273 EstimateDocCount bool `protobuf:"varint,1,opt,name=estimate_doc_count,json=estimateDocCount,proto3" json:"estimate_doc_count,omitempty"`
274 // Return the whole file.
275 Whole bool `protobuf:"varint,2,opt,name=whole,proto3" json:"whole,omitempty"`
276 // Maximum number of matches: skip all processing an index
277 // shard after we found this many non-overlapping matches.
278 ShardMaxMatchCount int64 `protobuf:"varint,3,opt,name=shard_max_match_count,json=shardMaxMatchCount,proto3" json:"shard_max_match_count,omitempty"`
279 // Maximum number of matches: stop looking for more matches
280 // once we have this many matches across shards.
281 TotalMaxMatchCount int64 `protobuf:"varint,4,opt,name=total_max_match_count,json=totalMaxMatchCount,proto3" json:"total_max_match_count,omitempty"`
282 // Maximum number of matches: skip processing documents for a repository in
283 // a shard once we have found ShardRepoMaxMatchCount.
284 //
285 // A compound shard may contain multiple repositories. This will most often
286 // be set to 1 to find all repositories containing a result.
287 ShardRepoMaxMatchCount int64 `protobuf:"varint,5,opt,name=shard_repo_max_match_count,json=shardRepoMaxMatchCount,proto3" json:"shard_repo_max_match_count,omitempty"`
288 // Abort the search after this much time has passed.
289 MaxWallTime *durationpb.Duration `protobuf:"bytes,6,opt,name=max_wall_time,json=maxWallTime,proto3" json:"max_wall_time,omitempty"`
290 // FlushWallTime if non-zero will stop streaming behaviour at first and
291 // instead will collate and sort results. At FlushWallTime the results will
292 // be sent and then the behaviour will revert to the normal streaming.
293 FlushWallTime *durationpb.Duration `protobuf:"bytes,7,opt,name=flush_wall_time,json=flushWallTime,proto3" json:"flush_wall_time,omitempty"`
294 // Trim the number of results after collating and sorting the
295 // results
296 MaxDocDisplayCount int64 `protobuf:"varint,8,opt,name=max_doc_display_count,json=maxDocDisplayCount,proto3" json:"max_doc_display_count,omitempty"`
297 // If set to a number greater than zero then up to this many number
298 // of context lines will be added before and after each matched line.
299 // Note that the included context lines might contain matches and
300 // it's up to the consumer of the result to remove those lines.
301 NumContextLines int64 `protobuf:"varint,9,opt,name=num_context_lines,json=numContextLines,proto3" json:"num_context_lines,omitempty"`
302 // If true, ChunkMatches will be returned in each FileMatch rather than LineMatches
303 // EXPERIMENTAL: the behavior of this flag may be changed in future versions.
304 ChunkMatches bool `protobuf:"varint,10,opt,name=chunk_matches,json=chunkMatches,proto3" json:"chunk_matches,omitempty"`
305 // EXPERIMENTAL. If true, document ranks are used as additional input for
306 // sorting matches.
307 UseDocumentRanks bool `protobuf:"varint,11,opt,name=use_document_ranks,json=useDocumentRanks,proto3" json:"use_document_ranks,omitempty"`
308 // EXPERIMENTAL. When UseDocumentRanks is enabled, this can be optionally set to adjust
309 // their weight in the file match score. If the value is <= 0.0, the default weight value
310 // will be used. This option is temporary and is only exposed for testing/ tuning purposes.
311 DocumentRanksWeight float64 `protobuf:"fixed64,12,opt,name=document_ranks_weight,json=documentRanksWeight,proto3" json:"document_ranks_weight,omitempty"`
312 // Trace turns on opentracing for this request if true and if the Jaeger address was provided as
313 // a command-line flag
314 Trace bool `protobuf:"varint,13,opt,name=trace,proto3" json:"trace,omitempty"`
315 // If set, the search results will contain debug information for scoring.
316 DebugScore bool `protobuf:"varint,14,opt,name=debug_score,json=debugScore,proto3" json:"debug_score,omitempty"`
317 // EXPERIMENTAL. If true, use keyword-style scoring instead of the default scoring formula.
318 // Currently, this treats each match in a file as a term and computes an approximation to BM25.
319 // When enabled, all other scoring signals are ignored, including document ranks.
320 UseKeywordScoring bool `protobuf:"varint,15,opt,name=use_keyword_scoring,json=useKeywordScoring,proto3" json:"use_keyword_scoring,omitempty"`
321}
322
323func (x *SearchOptions) Reset() {
324 *x = SearchOptions{}
325 if protoimpl.UnsafeEnabled {
326 mi := &file_webserver_proto_msgTypes[2]
327 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
328 ms.StoreMessageInfo(mi)
329 }
330}
331
332func (x *SearchOptions) String() string {
333 return protoimpl.X.MessageStringOf(x)
334}
335
336func (*SearchOptions) ProtoMessage() {}
337
338func (x *SearchOptions) ProtoReflect() protoreflect.Message {
339 mi := &file_webserver_proto_msgTypes[2]
340 if protoimpl.UnsafeEnabled && x != nil {
341 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
342 if ms.LoadMessageInfo() == nil {
343 ms.StoreMessageInfo(mi)
344 }
345 return ms
346 }
347 return mi.MessageOf(x)
348}
349
350// Deprecated: Use SearchOptions.ProtoReflect.Descriptor instead.
351func (*SearchOptions) Descriptor() ([]byte, []int) {
352 return file_webserver_proto_rawDescGZIP(), []int{2}
353}
354
355func (x *SearchOptions) GetEstimateDocCount() bool {
356 if x != nil {
357 return x.EstimateDocCount
358 }
359 return false
360}
361
362func (x *SearchOptions) GetWhole() bool {
363 if x != nil {
364 return x.Whole
365 }
366 return false
367}
368
369func (x *SearchOptions) GetShardMaxMatchCount() int64 {
370 if x != nil {
371 return x.ShardMaxMatchCount
372 }
373 return 0
374}
375
376func (x *SearchOptions) GetTotalMaxMatchCount() int64 {
377 if x != nil {
378 return x.TotalMaxMatchCount
379 }
380 return 0
381}
382
383func (x *SearchOptions) GetShardRepoMaxMatchCount() int64 {
384 if x != nil {
385 return x.ShardRepoMaxMatchCount
386 }
387 return 0
388}
389
390func (x *SearchOptions) GetMaxWallTime() *durationpb.Duration {
391 if x != nil {
392 return x.MaxWallTime
393 }
394 return nil
395}
396
397func (x *SearchOptions) GetFlushWallTime() *durationpb.Duration {
398 if x != nil {
399 return x.FlushWallTime
400 }
401 return nil
402}
403
404func (x *SearchOptions) GetMaxDocDisplayCount() int64 {
405 if x != nil {
406 return x.MaxDocDisplayCount
407 }
408 return 0
409}
410
411func (x *SearchOptions) GetNumContextLines() int64 {
412 if x != nil {
413 return x.NumContextLines
414 }
415 return 0
416}
417
418func (x *SearchOptions) GetChunkMatches() bool {
419 if x != nil {
420 return x.ChunkMatches
421 }
422 return false
423}
424
425func (x *SearchOptions) GetUseDocumentRanks() bool {
426 if x != nil {
427 return x.UseDocumentRanks
428 }
429 return false
430}
431
432func (x *SearchOptions) GetDocumentRanksWeight() float64 {
433 if x != nil {
434 return x.DocumentRanksWeight
435 }
436 return 0
437}
438
439func (x *SearchOptions) GetTrace() bool {
440 if x != nil {
441 return x.Trace
442 }
443 return false
444}
445
446func (x *SearchOptions) GetDebugScore() bool {
447 if x != nil {
448 return x.DebugScore
449 }
450 return false
451}
452
453func (x *SearchOptions) GetUseKeywordScoring() bool {
454 if x != nil {
455 return x.UseKeywordScoring
456 }
457 return false
458}
459
460type ListRequest struct {
461 state protoimpl.MessageState
462 sizeCache protoimpl.SizeCache
463 unknownFields protoimpl.UnknownFields
464
465 Query *Q `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
466 Opts *ListOptions `protobuf:"bytes,2,opt,name=opts,proto3" json:"opts,omitempty"`
467}
468
469func (x *ListRequest) Reset() {
470 *x = ListRequest{}
471 if protoimpl.UnsafeEnabled {
472 mi := &file_webserver_proto_msgTypes[3]
473 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
474 ms.StoreMessageInfo(mi)
475 }
476}
477
478func (x *ListRequest) String() string {
479 return protoimpl.X.MessageStringOf(x)
480}
481
482func (*ListRequest) ProtoMessage() {}
483
484func (x *ListRequest) ProtoReflect() protoreflect.Message {
485 mi := &file_webserver_proto_msgTypes[3]
486 if protoimpl.UnsafeEnabled && x != nil {
487 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
488 if ms.LoadMessageInfo() == nil {
489 ms.StoreMessageInfo(mi)
490 }
491 return ms
492 }
493 return mi.MessageOf(x)
494}
495
496// Deprecated: Use ListRequest.ProtoReflect.Descriptor instead.
497func (*ListRequest) Descriptor() ([]byte, []int) {
498 return file_webserver_proto_rawDescGZIP(), []int{3}
499}
500
501func (x *ListRequest) GetQuery() *Q {
502 if x != nil {
503 return x.Query
504 }
505 return nil
506}
507
508func (x *ListRequest) GetOpts() *ListOptions {
509 if x != nil {
510 return x.Opts
511 }
512 return nil
513}
514
515type ListOptions struct {
516 state protoimpl.MessageState
517 sizeCache protoimpl.SizeCache
518 unknownFields protoimpl.UnknownFields
519
520 // Field decides which field to populate in RepoList response.
521 Field ListOptions_RepoListField `protobuf:"varint,1,opt,name=field,proto3,enum=grpc.v1.ListOptions_RepoListField" json:"field,omitempty"`
522 // Return only Minimal data per repo that Sourcegraph frontend needs.
523 //
524 // Deprecated: use Field
525 Minimal bool `protobuf:"varint,16,opt,name=minimal,proto3" json:"minimal,omitempty"`
526}
527
528func (x *ListOptions) Reset() {
529 *x = ListOptions{}
530 if protoimpl.UnsafeEnabled {
531 mi := &file_webserver_proto_msgTypes[4]
532 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
533 ms.StoreMessageInfo(mi)
534 }
535}
536
537func (x *ListOptions) String() string {
538 return protoimpl.X.MessageStringOf(x)
539}
540
541func (*ListOptions) ProtoMessage() {}
542
543func (x *ListOptions) ProtoReflect() protoreflect.Message {
544 mi := &file_webserver_proto_msgTypes[4]
545 if protoimpl.UnsafeEnabled && x != nil {
546 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
547 if ms.LoadMessageInfo() == nil {
548 ms.StoreMessageInfo(mi)
549 }
550 return ms
551 }
552 return mi.MessageOf(x)
553}
554
555// Deprecated: Use ListOptions.ProtoReflect.Descriptor instead.
556func (*ListOptions) Descriptor() ([]byte, []int) {
557 return file_webserver_proto_rawDescGZIP(), []int{4}
558}
559
560func (x *ListOptions) GetField() ListOptions_RepoListField {
561 if x != nil {
562 return x.Field
563 }
564 return ListOptions_REPO_LIST_FIELD_UNKNOWN
565}
566
567func (x *ListOptions) GetMinimal() bool {
568 if x != nil {
569 return x.Minimal
570 }
571 return false
572}
573
574type ListResponse struct {
575 state protoimpl.MessageState
576 sizeCache protoimpl.SizeCache
577 unknownFields protoimpl.UnknownFields
578
579 // Returned when ListOptions.Field is RepoListFieldRepos.
580 Repos []*RepoListEntry `protobuf:"bytes,1,rep,name=repos,proto3" json:"repos,omitempty"`
581 // ReposMap is set when ListOptions.Field is RepoListFieldReposMap.
582 ReposMap map[uint32]*MinimalRepoListEntry `protobuf:"bytes,2,rep,name=repos_map,json=reposMap,proto3" json:"repos_map,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
583 Crashes int64 `protobuf:"varint,3,opt,name=crashes,proto3" json:"crashes,omitempty"`
584 // Stats response to a List request.
585 // This is the aggregate RepoStats of all repos matching the input query.
586 Stats *RepoStats `protobuf:"bytes,4,opt,name=stats,proto3" json:"stats,omitempty"`
587 // Returned when ListOptions.Field is RepoListFieldMinimal.
588 //
589 // Deprecated: use ReposMap.
590 Minimal map[uint32]*MinimalRepoListEntry `protobuf:"bytes,5,rep,name=minimal,proto3" json:"minimal,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
591}
592
593func (x *ListResponse) Reset() {
594 *x = ListResponse{}
595 if protoimpl.UnsafeEnabled {
596 mi := &file_webserver_proto_msgTypes[5]
597 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
598 ms.StoreMessageInfo(mi)
599 }
600}
601
602func (x *ListResponse) String() string {
603 return protoimpl.X.MessageStringOf(x)
604}
605
606func (*ListResponse) ProtoMessage() {}
607
608func (x *ListResponse) ProtoReflect() protoreflect.Message {
609 mi := &file_webserver_proto_msgTypes[5]
610 if protoimpl.UnsafeEnabled && x != nil {
611 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
612 if ms.LoadMessageInfo() == nil {
613 ms.StoreMessageInfo(mi)
614 }
615 return ms
616 }
617 return mi.MessageOf(x)
618}
619
620// Deprecated: Use ListResponse.ProtoReflect.Descriptor instead.
621func (*ListResponse) Descriptor() ([]byte, []int) {
622 return file_webserver_proto_rawDescGZIP(), []int{5}
623}
624
625func (x *ListResponse) GetRepos() []*RepoListEntry {
626 if x != nil {
627 return x.Repos
628 }
629 return nil
630}
631
632func (x *ListResponse) GetReposMap() map[uint32]*MinimalRepoListEntry {
633 if x != nil {
634 return x.ReposMap
635 }
636 return nil
637}
638
639func (x *ListResponse) GetCrashes() int64 {
640 if x != nil {
641 return x.Crashes
642 }
643 return 0
644}
645
646func (x *ListResponse) GetStats() *RepoStats {
647 if x != nil {
648 return x.Stats
649 }
650 return nil
651}
652
653func (x *ListResponse) GetMinimal() map[uint32]*MinimalRepoListEntry {
654 if x != nil {
655 return x.Minimal
656 }
657 return nil
658}
659
660type RepoListEntry struct {
661 state protoimpl.MessageState
662 sizeCache protoimpl.SizeCache
663 unknownFields protoimpl.UnknownFields
664
665 Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
666 IndexMetadata *IndexMetadata `protobuf:"bytes,2,opt,name=index_metadata,json=indexMetadata,proto3" json:"index_metadata,omitempty"`
667 Stats *RepoStats `protobuf:"bytes,3,opt,name=stats,proto3" json:"stats,omitempty"`
668}
669
670func (x *RepoListEntry) Reset() {
671 *x = RepoListEntry{}
672 if protoimpl.UnsafeEnabled {
673 mi := &file_webserver_proto_msgTypes[6]
674 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
675 ms.StoreMessageInfo(mi)
676 }
677}
678
679func (x *RepoListEntry) String() string {
680 return protoimpl.X.MessageStringOf(x)
681}
682
683func (*RepoListEntry) ProtoMessage() {}
684
685func (x *RepoListEntry) ProtoReflect() protoreflect.Message {
686 mi := &file_webserver_proto_msgTypes[6]
687 if protoimpl.UnsafeEnabled && x != nil {
688 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
689 if ms.LoadMessageInfo() == nil {
690 ms.StoreMessageInfo(mi)
691 }
692 return ms
693 }
694 return mi.MessageOf(x)
695}
696
697// Deprecated: Use RepoListEntry.ProtoReflect.Descriptor instead.
698func (*RepoListEntry) Descriptor() ([]byte, []int) {
699 return file_webserver_proto_rawDescGZIP(), []int{6}
700}
701
702func (x *RepoListEntry) GetRepository() *Repository {
703 if x != nil {
704 return x.Repository
705 }
706 return nil
707}
708
709func (x *RepoListEntry) GetIndexMetadata() *IndexMetadata {
710 if x != nil {
711 return x.IndexMetadata
712 }
713 return nil
714}
715
716func (x *RepoListEntry) GetStats() *RepoStats {
717 if x != nil {
718 return x.Stats
719 }
720 return nil
721}
722
723type Repository struct {
724 state protoimpl.MessageState
725 sizeCache protoimpl.SizeCache
726 unknownFields protoimpl.UnknownFields
727
728 // Sourcegraph's repository ID
729 Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
730 // The repository name
731 Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
732 // The repository URL.
733 Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"`
734 // The physical source where this repo came from, eg. full
735 // path to the zip filename or git repository directory. This
736 // will not be exposed in the UI, but can be used to detect
737 // orphaned index shards.
738 Source string `protobuf:"bytes,4,opt,name=source,proto3" json:"source,omitempty"`
739 // The branches indexed in this repo.
740 Branches []*RepositoryBranch `protobuf:"bytes,5,rep,name=branches,proto3" json:"branches,omitempty"`
741 // Nil if this is not the super project.
742 SubRepoMap map[string]*Repository `protobuf:"bytes,6,rep,name=sub_repo_map,json=subRepoMap,proto3" json:"sub_repo_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
743 // URL template to link to the commit of a branch
744 CommitUrlTemplate string `protobuf:"bytes,7,opt,name=commit_url_template,json=commitUrlTemplate,proto3" json:"commit_url_template,omitempty"`
745 // The repository URL for getting to a file. Has access to
746 // {{Branch}}, {{Path}}
747 FileUrlTemplate string `protobuf:"bytes,8,opt,name=file_url_template,json=fileUrlTemplate,proto3" json:"file_url_template,omitempty"`
748 // The URL fragment to add to a file URL for line numbers. has
749 // access to {{LineNumber}}. The fragment should include the
750 // separator, generally '#' or ';'.
751 LineFragmentTemplate string `protobuf:"bytes,9,opt,name=line_fragment_template,json=lineFragmentTemplate,proto3" json:"line_fragment_template,omitempty"`
752 // Perf optimization: priority is set when we load the shard. It corresponds to
753 // the value of "priority" stored in RawConfig.
754 Priority float64 `protobuf:"fixed64,10,opt,name=priority,proto3" json:"priority,omitempty"`
755 // All zoekt.* configuration settings.
756 RawConfig map[string]string `protobuf:"bytes,11,rep,name=raw_config,json=rawConfig,proto3" json:"raw_config,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
757 // Importance of the repository, bigger is more important
758 Rank uint32 `protobuf:"varint,12,opt,name=rank,proto3" json:"rank,omitempty"`
759 // index_options is a hash of the options used to create the index for the
760 // repo.
761 IndexOptions string `protobuf:"bytes,13,opt,name=index_options,json=indexOptions,proto3" json:"index_options,omitempty"`
762 // has_symbols is true if this repository has indexed ctags
763 // output. Sourcegraph specific: This field is more appropriate for
764 // IndexMetadata. However, we store it here since the Sourcegraph frontend
765 // can read this structure but not IndexMetadata.
766 HasSymbols bool `protobuf:"varint,14,opt,name=has_symbols,json=hasSymbols,proto3" json:"has_symbols,omitempty"`
767 // tombstone is true if we are not allowed to search this repo.
768 Tombstone bool `protobuf:"varint,15,opt,name=tombstone,proto3" json:"tombstone,omitempty"`
769 // latest_commit_date is the date of the latest commit among all indexed Branches.
770 // The date might be time.Time's 0-value if the repository was last indexed
771 // before this field was added.
772 LatestCommitDate *timestamppb.Timestamp `protobuf:"bytes,16,opt,name=latest_commit_date,json=latestCommitDate,proto3" json:"latest_commit_date,omitempty"`
773 // file_tombstones is a set of file paths that should be ignored across all branches
774 // in this shard.
775 FileTombstones []string `protobuf:"bytes,17,rep,name=FileTombstones,proto3" json:"FileTombstones,omitempty"`
776}
777
778func (x *Repository) Reset() {
779 *x = Repository{}
780 if protoimpl.UnsafeEnabled {
781 mi := &file_webserver_proto_msgTypes[7]
782 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
783 ms.StoreMessageInfo(mi)
784 }
785}
786
787func (x *Repository) String() string {
788 return protoimpl.X.MessageStringOf(x)
789}
790
791func (*Repository) ProtoMessage() {}
792
793func (x *Repository) ProtoReflect() protoreflect.Message {
794 mi := &file_webserver_proto_msgTypes[7]
795 if protoimpl.UnsafeEnabled && x != nil {
796 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
797 if ms.LoadMessageInfo() == nil {
798 ms.StoreMessageInfo(mi)
799 }
800 return ms
801 }
802 return mi.MessageOf(x)
803}
804
805// Deprecated: Use Repository.ProtoReflect.Descriptor instead.
806func (*Repository) Descriptor() ([]byte, []int) {
807 return file_webserver_proto_rawDescGZIP(), []int{7}
808}
809
810func (x *Repository) GetId() uint32 {
811 if x != nil {
812 return x.Id
813 }
814 return 0
815}
816
817func (x *Repository) GetName() string {
818 if x != nil {
819 return x.Name
820 }
821 return ""
822}
823
824func (x *Repository) GetUrl() string {
825 if x != nil {
826 return x.Url
827 }
828 return ""
829}
830
831func (x *Repository) GetSource() string {
832 if x != nil {
833 return x.Source
834 }
835 return ""
836}
837
838func (x *Repository) GetBranches() []*RepositoryBranch {
839 if x != nil {
840 return x.Branches
841 }
842 return nil
843}
844
845func (x *Repository) GetSubRepoMap() map[string]*Repository {
846 if x != nil {
847 return x.SubRepoMap
848 }
849 return nil
850}
851
852func (x *Repository) GetCommitUrlTemplate() string {
853 if x != nil {
854 return x.CommitUrlTemplate
855 }
856 return ""
857}
858
859func (x *Repository) GetFileUrlTemplate() string {
860 if x != nil {
861 return x.FileUrlTemplate
862 }
863 return ""
864}
865
866func (x *Repository) GetLineFragmentTemplate() string {
867 if x != nil {
868 return x.LineFragmentTemplate
869 }
870 return ""
871}
872
873func (x *Repository) GetPriority() float64 {
874 if x != nil {
875 return x.Priority
876 }
877 return 0
878}
879
880func (x *Repository) GetRawConfig() map[string]string {
881 if x != nil {
882 return x.RawConfig
883 }
884 return nil
885}
886
887func (x *Repository) GetRank() uint32 {
888 if x != nil {
889 return x.Rank
890 }
891 return 0
892}
893
894func (x *Repository) GetIndexOptions() string {
895 if x != nil {
896 return x.IndexOptions
897 }
898 return ""
899}
900
901func (x *Repository) GetHasSymbols() bool {
902 if x != nil {
903 return x.HasSymbols
904 }
905 return false
906}
907
908func (x *Repository) GetTombstone() bool {
909 if x != nil {
910 return x.Tombstone
911 }
912 return false
913}
914
915func (x *Repository) GetLatestCommitDate() *timestamppb.Timestamp {
916 if x != nil {
917 return x.LatestCommitDate
918 }
919 return nil
920}
921
922func (x *Repository) GetFileTombstones() []string {
923 if x != nil {
924 return x.FileTombstones
925 }
926 return nil
927}
928
929type IndexMetadata struct {
930 state protoimpl.MessageState
931 sizeCache protoimpl.SizeCache
932 unknownFields protoimpl.UnknownFields
933
934 IndexFormatVersion int64 `protobuf:"varint,1,opt,name=index_format_version,json=indexFormatVersion,proto3" json:"index_format_version,omitempty"`
935 IndexFeatureVersion int64 `protobuf:"varint,2,opt,name=index_feature_version,json=indexFeatureVersion,proto3" json:"index_feature_version,omitempty"`
936 IndexMinReaderVersion int64 `protobuf:"varint,3,opt,name=index_min_reader_version,json=indexMinReaderVersion,proto3" json:"index_min_reader_version,omitempty"`
937 IndexTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=index_time,json=indexTime,proto3" json:"index_time,omitempty"`
938 PlainAscii bool `protobuf:"varint,5,opt,name=plain_ascii,json=plainAscii,proto3" json:"plain_ascii,omitempty"`
939 LanguageMap map[string]uint32 `protobuf:"bytes,6,rep,name=language_map,json=languageMap,proto3" json:"language_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"`
940 ZoektVersion string `protobuf:"bytes,7,opt,name=zoekt_version,json=zoektVersion,proto3" json:"zoekt_version,omitempty"`
941 Id string `protobuf:"bytes,8,opt,name=id,proto3" json:"id,omitempty"`
942}
943
944func (x *IndexMetadata) Reset() {
945 *x = IndexMetadata{}
946 if protoimpl.UnsafeEnabled {
947 mi := &file_webserver_proto_msgTypes[8]
948 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
949 ms.StoreMessageInfo(mi)
950 }
951}
952
953func (x *IndexMetadata) String() string {
954 return protoimpl.X.MessageStringOf(x)
955}
956
957func (*IndexMetadata) ProtoMessage() {}
958
959func (x *IndexMetadata) ProtoReflect() protoreflect.Message {
960 mi := &file_webserver_proto_msgTypes[8]
961 if protoimpl.UnsafeEnabled && x != nil {
962 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
963 if ms.LoadMessageInfo() == nil {
964 ms.StoreMessageInfo(mi)
965 }
966 return ms
967 }
968 return mi.MessageOf(x)
969}
970
971// Deprecated: Use IndexMetadata.ProtoReflect.Descriptor instead.
972func (*IndexMetadata) Descriptor() ([]byte, []int) {
973 return file_webserver_proto_rawDescGZIP(), []int{8}
974}
975
976func (x *IndexMetadata) GetIndexFormatVersion() int64 {
977 if x != nil {
978 return x.IndexFormatVersion
979 }
980 return 0
981}
982
983func (x *IndexMetadata) GetIndexFeatureVersion() int64 {
984 if x != nil {
985 return x.IndexFeatureVersion
986 }
987 return 0
988}
989
990func (x *IndexMetadata) GetIndexMinReaderVersion() int64 {
991 if x != nil {
992 return x.IndexMinReaderVersion
993 }
994 return 0
995}
996
997func (x *IndexMetadata) GetIndexTime() *timestamppb.Timestamp {
998 if x != nil {
999 return x.IndexTime
1000 }
1001 return nil
1002}
1003
1004func (x *IndexMetadata) GetPlainAscii() bool {
1005 if x != nil {
1006 return x.PlainAscii
1007 }
1008 return false
1009}
1010
1011func (x *IndexMetadata) GetLanguageMap() map[string]uint32 {
1012 if x != nil {
1013 return x.LanguageMap
1014 }
1015 return nil
1016}
1017
1018func (x *IndexMetadata) GetZoektVersion() string {
1019 if x != nil {
1020 return x.ZoektVersion
1021 }
1022 return ""
1023}
1024
1025func (x *IndexMetadata) GetId() string {
1026 if x != nil {
1027 return x.Id
1028 }
1029 return ""
1030}
1031
1032type MinimalRepoListEntry struct {
1033 state protoimpl.MessageState
1034 sizeCache protoimpl.SizeCache
1035 unknownFields protoimpl.UnknownFields
1036
1037 HasSymbols bool `protobuf:"varint,1,opt,name=has_symbols,json=hasSymbols,proto3" json:"has_symbols,omitempty"`
1038 Branches []*RepositoryBranch `protobuf:"bytes,2,rep,name=branches,proto3" json:"branches,omitempty"`
1039 IndexTimeUnix int64 `protobuf:"varint,3,opt,name=index_time_unix,json=indexTimeUnix,proto3" json:"index_time_unix,omitempty"`
1040}
1041
1042func (x *MinimalRepoListEntry) Reset() {
1043 *x = MinimalRepoListEntry{}
1044 if protoimpl.UnsafeEnabled {
1045 mi := &file_webserver_proto_msgTypes[9]
1046 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1047 ms.StoreMessageInfo(mi)
1048 }
1049}
1050
1051func (x *MinimalRepoListEntry) String() string {
1052 return protoimpl.X.MessageStringOf(x)
1053}
1054
1055func (*MinimalRepoListEntry) ProtoMessage() {}
1056
1057func (x *MinimalRepoListEntry) ProtoReflect() protoreflect.Message {
1058 mi := &file_webserver_proto_msgTypes[9]
1059 if protoimpl.UnsafeEnabled && x != nil {
1060 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1061 if ms.LoadMessageInfo() == nil {
1062 ms.StoreMessageInfo(mi)
1063 }
1064 return ms
1065 }
1066 return mi.MessageOf(x)
1067}
1068
1069// Deprecated: Use MinimalRepoListEntry.ProtoReflect.Descriptor instead.
1070func (*MinimalRepoListEntry) Descriptor() ([]byte, []int) {
1071 return file_webserver_proto_rawDescGZIP(), []int{9}
1072}
1073
1074func (x *MinimalRepoListEntry) GetHasSymbols() bool {
1075 if x != nil {
1076 return x.HasSymbols
1077 }
1078 return false
1079}
1080
1081func (x *MinimalRepoListEntry) GetBranches() []*RepositoryBranch {
1082 if x != nil {
1083 return x.Branches
1084 }
1085 return nil
1086}
1087
1088func (x *MinimalRepoListEntry) GetIndexTimeUnix() int64 {
1089 if x != nil {
1090 return x.IndexTimeUnix
1091 }
1092 return 0
1093}
1094
1095// RepositoryBranch describes an indexed branch, which is a name
1096// combined with a version.
1097type RepositoryBranch struct {
1098 state protoimpl.MessageState
1099 sizeCache protoimpl.SizeCache
1100 unknownFields protoimpl.UnknownFields
1101
1102 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
1103 Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
1104}
1105
1106func (x *RepositoryBranch) Reset() {
1107 *x = RepositoryBranch{}
1108 if protoimpl.UnsafeEnabled {
1109 mi := &file_webserver_proto_msgTypes[10]
1110 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1111 ms.StoreMessageInfo(mi)
1112 }
1113}
1114
1115func (x *RepositoryBranch) String() string {
1116 return protoimpl.X.MessageStringOf(x)
1117}
1118
1119func (*RepositoryBranch) ProtoMessage() {}
1120
1121func (x *RepositoryBranch) ProtoReflect() protoreflect.Message {
1122 mi := &file_webserver_proto_msgTypes[10]
1123 if protoimpl.UnsafeEnabled && x != nil {
1124 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1125 if ms.LoadMessageInfo() == nil {
1126 ms.StoreMessageInfo(mi)
1127 }
1128 return ms
1129 }
1130 return mi.MessageOf(x)
1131}
1132
1133// Deprecated: Use RepositoryBranch.ProtoReflect.Descriptor instead.
1134func (*RepositoryBranch) Descriptor() ([]byte, []int) {
1135 return file_webserver_proto_rawDescGZIP(), []int{10}
1136}
1137
1138func (x *RepositoryBranch) GetName() string {
1139 if x != nil {
1140 return x.Name
1141 }
1142 return ""
1143}
1144
1145func (x *RepositoryBranch) GetVersion() string {
1146 if x != nil {
1147 return x.Version
1148 }
1149 return ""
1150}
1151
1152// RepoStats is a collection of statistics for a set of repositories.
1153type RepoStats struct {
1154 state protoimpl.MessageState
1155 sizeCache protoimpl.SizeCache
1156 unknownFields protoimpl.UnknownFields
1157
1158 // repos is used for aggregrating the number of repositories.
1159 Repos int64 `protobuf:"varint,1,opt,name=repos,proto3" json:"repos,omitempty"`
1160 // shards is the total number of search shards.
1161 Shards int64 `protobuf:"varint,2,opt,name=shards,proto3" json:"shards,omitempty"`
1162 // documents holds the number of documents or files.
1163 Documents int64 `protobuf:"varint,3,opt,name=documents,proto3" json:"documents,omitempty"`
1164 // index_bytes is the amount of RAM used for index overhead.
1165 IndexBytes int64 `protobuf:"varint,4,opt,name=index_bytes,json=indexBytes,proto3" json:"index_bytes,omitempty"`
1166 // content_bytes is the amount of RAM used for raw content.
1167 ContentBytes int64 `protobuf:"varint,5,opt,name=content_bytes,json=contentBytes,proto3" json:"content_bytes,omitempty"`
1168 // new_lines_count is the number of newlines "\n" that appear in the zoekt
1169 // indexed documents. This is not exactly the same as line count, since it
1170 // will not include lines not terminated by "\n" (eg a file with no "\n", or
1171 // a final line without "\n"). Note: Zoekt deduplicates documents across
1172 // branches, so if a path has the same contents on multiple branches, there
1173 // is only one document for it. As such that document's newlines is only
1174 // counted once. See DefaultBranchNewLinesCount and AllBranchesNewLinesCount
1175 // for counts which do not deduplicate.
1176 NewLinesCount uint64 `protobuf:"varint,6,opt,name=new_lines_count,json=newLinesCount,proto3" json:"new_lines_count,omitempty"`
1177 // default_branch_new_lines_count is the number of newlines "\n" in the default
1178 // branch.
1179 DefaultBranchNewLinesCount uint64 `protobuf:"varint,7,opt,name=default_branch_new_lines_count,json=defaultBranchNewLinesCount,proto3" json:"default_branch_new_lines_count,omitempty"`
1180 // other_branches_new_lines_count is the number of newlines "\n" in all branches
1181 // except the default branch.
1182 OtherBranchesNewLinesCount uint64 `protobuf:"varint,8,opt,name=other_branches_new_lines_count,json=otherBranchesNewLinesCount,proto3" json:"other_branches_new_lines_count,omitempty"`
1183}
1184
1185func (x *RepoStats) Reset() {
1186 *x = RepoStats{}
1187 if protoimpl.UnsafeEnabled {
1188 mi := &file_webserver_proto_msgTypes[11]
1189 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1190 ms.StoreMessageInfo(mi)
1191 }
1192}
1193
1194func (x *RepoStats) String() string {
1195 return protoimpl.X.MessageStringOf(x)
1196}
1197
1198func (*RepoStats) ProtoMessage() {}
1199
1200func (x *RepoStats) ProtoReflect() protoreflect.Message {
1201 mi := &file_webserver_proto_msgTypes[11]
1202 if protoimpl.UnsafeEnabled && x != nil {
1203 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1204 if ms.LoadMessageInfo() == nil {
1205 ms.StoreMessageInfo(mi)
1206 }
1207 return ms
1208 }
1209 return mi.MessageOf(x)
1210}
1211
1212// Deprecated: Use RepoStats.ProtoReflect.Descriptor instead.
1213func (*RepoStats) Descriptor() ([]byte, []int) {
1214 return file_webserver_proto_rawDescGZIP(), []int{11}
1215}
1216
1217func (x *RepoStats) GetRepos() int64 {
1218 if x != nil {
1219 return x.Repos
1220 }
1221 return 0
1222}
1223
1224func (x *RepoStats) GetShards() int64 {
1225 if x != nil {
1226 return x.Shards
1227 }
1228 return 0
1229}
1230
1231func (x *RepoStats) GetDocuments() int64 {
1232 if x != nil {
1233 return x.Documents
1234 }
1235 return 0
1236}
1237
1238func (x *RepoStats) GetIndexBytes() int64 {
1239 if x != nil {
1240 return x.IndexBytes
1241 }
1242 return 0
1243}
1244
1245func (x *RepoStats) GetContentBytes() int64 {
1246 if x != nil {
1247 return x.ContentBytes
1248 }
1249 return 0
1250}
1251
1252func (x *RepoStats) GetNewLinesCount() uint64 {
1253 if x != nil {
1254 return x.NewLinesCount
1255 }
1256 return 0
1257}
1258
1259func (x *RepoStats) GetDefaultBranchNewLinesCount() uint64 {
1260 if x != nil {
1261 return x.DefaultBranchNewLinesCount
1262 }
1263 return 0
1264}
1265
1266func (x *RepoStats) GetOtherBranchesNewLinesCount() uint64 {
1267 if x != nil {
1268 return x.OtherBranchesNewLinesCount
1269 }
1270 return 0
1271}
1272
1273type Stats struct {
1274 state protoimpl.MessageState
1275 sizeCache protoimpl.SizeCache
1276 unknownFields protoimpl.UnknownFields
1277
1278 // Amount of I/O for reading contents.
1279 ContentBytesLoaded int64 `protobuf:"varint,1,opt,name=content_bytes_loaded,json=contentBytesLoaded,proto3" json:"content_bytes_loaded,omitempty"`
1280 // Amount of I/O for reading from index.
1281 IndexBytesLoaded int64 `protobuf:"varint,2,opt,name=index_bytes_loaded,json=indexBytesLoaded,proto3" json:"index_bytes_loaded,omitempty"`
1282 // Number of search shards that had a crash.
1283 Crashes int64 `protobuf:"varint,3,opt,name=crashes,proto3" json:"crashes,omitempty"`
1284 // Wall clock time for this search
1285 Duration *durationpb.Duration `protobuf:"bytes,4,opt,name=duration,proto3" json:"duration,omitempty"`
1286 // Number of files containing a match.
1287 FileCount int64 `protobuf:"varint,5,opt,name=file_count,json=fileCount,proto3" json:"file_count,omitempty"`
1288 // Number of files in shards that we considered.
1289 ShardFilesConsidered int64 `protobuf:"varint,6,opt,name=shard_files_considered,json=shardFilesConsidered,proto3" json:"shard_files_considered,omitempty"`
1290 // Files that we evaluated. Equivalent to files for which all
1291 // atom matches (including negations) evaluated to true.
1292 FilesConsidered int64 `protobuf:"varint,7,opt,name=files_considered,json=filesConsidered,proto3" json:"files_considered,omitempty"`
1293 // Files for which we loaded file content to verify substring matches
1294 FilesLoaded int64 `protobuf:"varint,8,opt,name=files_loaded,json=filesLoaded,proto3" json:"files_loaded,omitempty"`
1295 // Candidate files whose contents weren't examined because we
1296 // gathered enough matches.
1297 FilesSkipped int64 `protobuf:"varint,9,opt,name=files_skipped,json=filesSkipped,proto3" json:"files_skipped,omitempty"`
1298 // Shards that we scanned to find matches.
1299 ShardsScanned int64 `protobuf:"varint,10,opt,name=shards_scanned,json=shardsScanned,proto3" json:"shards_scanned,omitempty"`
1300 // Shards that we did not process because a query was canceled.
1301 ShardsSkipped int64 `protobuf:"varint,11,opt,name=shards_skipped,json=shardsSkipped,proto3" json:"shards_skipped,omitempty"`
1302 // Shards that we did not process because the query was rejected by the
1303 // ngram filter indicating it had no matches.
1304 ShardsSkippedFilter int64 `protobuf:"varint,12,opt,name=shards_skipped_filter,json=shardsSkippedFilter,proto3" json:"shards_skipped_filter,omitempty"`
1305 // Number of non-overlapping matches
1306 MatchCount int64 `protobuf:"varint,13,opt,name=match_count,json=matchCount,proto3" json:"match_count,omitempty"`
1307 // Number of candidate matches as a result of searching ngrams.
1308 NgramMatches int64 `protobuf:"varint,14,opt,name=ngram_matches,json=ngramMatches,proto3" json:"ngram_matches,omitempty"`
1309 // Wall clock time for queued search.
1310 Wait *durationpb.Duration `protobuf:"bytes,15,opt,name=wait,proto3" json:"wait,omitempty"`
1311 // Number of times regexp was called on files that we evaluated.
1312 RegexpsConsidered int64 `protobuf:"varint,16,opt,name=regexps_considered,json=regexpsConsidered,proto3" json:"regexps_considered,omitempty"`
1313 // FlushReason explains why results were flushed.
1314 FlushReason FlushReason `protobuf:"varint,17,opt,name=flush_reason,json=flushReason,proto3,enum=grpc.v1.FlushReason" json:"flush_reason,omitempty"`
1315}
1316
1317func (x *Stats) Reset() {
1318 *x = Stats{}
1319 if protoimpl.UnsafeEnabled {
1320 mi := &file_webserver_proto_msgTypes[12]
1321 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1322 ms.StoreMessageInfo(mi)
1323 }
1324}
1325
1326func (x *Stats) String() string {
1327 return protoimpl.X.MessageStringOf(x)
1328}
1329
1330func (*Stats) ProtoMessage() {}
1331
1332func (x *Stats) ProtoReflect() protoreflect.Message {
1333 mi := &file_webserver_proto_msgTypes[12]
1334 if protoimpl.UnsafeEnabled && x != nil {
1335 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1336 if ms.LoadMessageInfo() == nil {
1337 ms.StoreMessageInfo(mi)
1338 }
1339 return ms
1340 }
1341 return mi.MessageOf(x)
1342}
1343
1344// Deprecated: Use Stats.ProtoReflect.Descriptor instead.
1345func (*Stats) Descriptor() ([]byte, []int) {
1346 return file_webserver_proto_rawDescGZIP(), []int{12}
1347}
1348
1349func (x *Stats) GetContentBytesLoaded() int64 {
1350 if x != nil {
1351 return x.ContentBytesLoaded
1352 }
1353 return 0
1354}
1355
1356func (x *Stats) GetIndexBytesLoaded() int64 {
1357 if x != nil {
1358 return x.IndexBytesLoaded
1359 }
1360 return 0
1361}
1362
1363func (x *Stats) GetCrashes() int64 {
1364 if x != nil {
1365 return x.Crashes
1366 }
1367 return 0
1368}
1369
1370func (x *Stats) GetDuration() *durationpb.Duration {
1371 if x != nil {
1372 return x.Duration
1373 }
1374 return nil
1375}
1376
1377func (x *Stats) GetFileCount() int64 {
1378 if x != nil {
1379 return x.FileCount
1380 }
1381 return 0
1382}
1383
1384func (x *Stats) GetShardFilesConsidered() int64 {
1385 if x != nil {
1386 return x.ShardFilesConsidered
1387 }
1388 return 0
1389}
1390
1391func (x *Stats) GetFilesConsidered() int64 {
1392 if x != nil {
1393 return x.FilesConsidered
1394 }
1395 return 0
1396}
1397
1398func (x *Stats) GetFilesLoaded() int64 {
1399 if x != nil {
1400 return x.FilesLoaded
1401 }
1402 return 0
1403}
1404
1405func (x *Stats) GetFilesSkipped() int64 {
1406 if x != nil {
1407 return x.FilesSkipped
1408 }
1409 return 0
1410}
1411
1412func (x *Stats) GetShardsScanned() int64 {
1413 if x != nil {
1414 return x.ShardsScanned
1415 }
1416 return 0
1417}
1418
1419func (x *Stats) GetShardsSkipped() int64 {
1420 if x != nil {
1421 return x.ShardsSkipped
1422 }
1423 return 0
1424}
1425
1426func (x *Stats) GetShardsSkippedFilter() int64 {
1427 if x != nil {
1428 return x.ShardsSkippedFilter
1429 }
1430 return 0
1431}
1432
1433func (x *Stats) GetMatchCount() int64 {
1434 if x != nil {
1435 return x.MatchCount
1436 }
1437 return 0
1438}
1439
1440func (x *Stats) GetNgramMatches() int64 {
1441 if x != nil {
1442 return x.NgramMatches
1443 }
1444 return 0
1445}
1446
1447func (x *Stats) GetWait() *durationpb.Duration {
1448 if x != nil {
1449 return x.Wait
1450 }
1451 return nil
1452}
1453
1454func (x *Stats) GetRegexpsConsidered() int64 {
1455 if x != nil {
1456 return x.RegexpsConsidered
1457 }
1458 return 0
1459}
1460
1461func (x *Stats) GetFlushReason() FlushReason {
1462 if x != nil {
1463 return x.FlushReason
1464 }
1465 return FlushReason_UNKNOWN
1466}
1467
1468// Progress contains information about the global progress of the running search query.
1469// This is used by the frontend to reorder results and emit them when stable.
1470// Sourcegraph specific: this is used when querying multiple zoekt-webserver instances.
1471type Progress struct {
1472 state protoimpl.MessageState
1473 sizeCache protoimpl.SizeCache
1474 unknownFields protoimpl.UnknownFields
1475
1476 // Priority of the shard that was searched.
1477 Priority float64 `protobuf:"fixed64,1,opt,name=priority,proto3" json:"priority,omitempty"`
1478 // max_pending_priority is the maximum priority of pending result that is being searched in parallel.
1479 // This is used to reorder results when the result set is known to be stable-- that is, when a result's
1480 // Priority is greater than the max(MaxPendingPriority) from the latest results of each backend, it can be returned to the user.
1481 //
1482 // max_pending_priority decreases monotonically in each SearchResult.
1483 MaxPendingPriority float64 `protobuf:"fixed64,2,opt,name=max_pending_priority,json=maxPendingPriority,proto3" json:"max_pending_priority,omitempty"`
1484}
1485
1486func (x *Progress) Reset() {
1487 *x = Progress{}
1488 if protoimpl.UnsafeEnabled {
1489 mi := &file_webserver_proto_msgTypes[13]
1490 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1491 ms.StoreMessageInfo(mi)
1492 }
1493}
1494
1495func (x *Progress) String() string {
1496 return protoimpl.X.MessageStringOf(x)
1497}
1498
1499func (*Progress) ProtoMessage() {}
1500
1501func (x *Progress) ProtoReflect() protoreflect.Message {
1502 mi := &file_webserver_proto_msgTypes[13]
1503 if protoimpl.UnsafeEnabled && x != nil {
1504 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1505 if ms.LoadMessageInfo() == nil {
1506 ms.StoreMessageInfo(mi)
1507 }
1508 return ms
1509 }
1510 return mi.MessageOf(x)
1511}
1512
1513// Deprecated: Use Progress.ProtoReflect.Descriptor instead.
1514func (*Progress) Descriptor() ([]byte, []int) {
1515 return file_webserver_proto_rawDescGZIP(), []int{13}
1516}
1517
1518func (x *Progress) GetPriority() float64 {
1519 if x != nil {
1520 return x.Priority
1521 }
1522 return 0
1523}
1524
1525func (x *Progress) GetMaxPendingPriority() float64 {
1526 if x != nil {
1527 return x.MaxPendingPriority
1528 }
1529 return 0
1530}
1531
1532// FileMatch contains all the matches within a file.
1533type FileMatch struct {
1534 state protoimpl.MessageState
1535 sizeCache protoimpl.SizeCache
1536 unknownFields protoimpl.UnknownFields
1537
1538 // Ranking; the higher, the better.
1539 Score float64 `protobuf:"fixed64,1,opt,name=score,proto3" json:"score,omitempty"`
1540 // For debugging. Needs DebugScore set, but public so tests in
1541 // other packages can print some diagnostics.
1542 Debug string `protobuf:"bytes,2,opt,name=debug,proto3" json:"debug,omitempty"`
1543 FileName string `protobuf:"bytes,3,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
1544 // Repository is the globally unique name of the repo of the
1545 // match
1546 Repository string `protobuf:"bytes,4,opt,name=repository,proto3" json:"repository,omitempty"`
1547 Branches []string `protobuf:"bytes,5,rep,name=branches,proto3" json:"branches,omitempty"`
1548 // One of line_matches or chunk_matches will be returned depending on whether
1549 // the SearchOptions.ChunkMatches is set.
1550 LineMatches []*LineMatch `protobuf:"bytes,6,rep,name=line_matches,json=lineMatches,proto3" json:"line_matches,omitempty"`
1551 ChunkMatches []*ChunkMatch `protobuf:"bytes,7,rep,name=chunk_matches,json=chunkMatches,proto3" json:"chunk_matches,omitempty"`
1552 // repository_id is a Sourcegraph extension. This is the ID of Repository in
1553 // Sourcegraph.
1554 RepositoryId uint32 `protobuf:"varint,8,opt,name=repository_id,json=repositoryId,proto3" json:"repository_id,omitempty"`
1555 RepositoryPriority float64 `protobuf:"fixed64,9,opt,name=repository_priority,json=repositoryPriority,proto3" json:"repository_priority,omitempty"`
1556 // Only set if requested
1557 Content []byte `protobuf:"bytes,10,opt,name=content,proto3" json:"content,omitempty"`
1558 // Checksum of the content.
1559 Checksum []byte `protobuf:"bytes,11,opt,name=checksum,proto3" json:"checksum,omitempty"`
1560 // Detected language of the result.
1561 Language string `protobuf:"bytes,12,opt,name=language,proto3" json:"language,omitempty"`
1562 // sub_repository_name is the globally unique name of the repo,
1563 // if it came from a subrepository
1564 SubRepositoryName string `protobuf:"bytes,13,opt,name=sub_repository_name,json=subRepositoryName,proto3" json:"sub_repository_name,omitempty"`
1565 // sub_repository_path holds the prefix where the subrepository
1566 // was mounted.
1567 SubRepositoryPath string `protobuf:"bytes,14,opt,name=sub_repository_path,json=subRepositoryPath,proto3" json:"sub_repository_path,omitempty"`
1568 // Commit SHA1 (hex) of the (sub)repo holding the file.
1569 Version string `protobuf:"bytes,15,opt,name=version,proto3" json:"version,omitempty"`
1570}
1571
1572func (x *FileMatch) Reset() {
1573 *x = FileMatch{}
1574 if protoimpl.UnsafeEnabled {
1575 mi := &file_webserver_proto_msgTypes[14]
1576 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1577 ms.StoreMessageInfo(mi)
1578 }
1579}
1580
1581func (x *FileMatch) String() string {
1582 return protoimpl.X.MessageStringOf(x)
1583}
1584
1585func (*FileMatch) ProtoMessage() {}
1586
1587func (x *FileMatch) ProtoReflect() protoreflect.Message {
1588 mi := &file_webserver_proto_msgTypes[14]
1589 if protoimpl.UnsafeEnabled && x != nil {
1590 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1591 if ms.LoadMessageInfo() == nil {
1592 ms.StoreMessageInfo(mi)
1593 }
1594 return ms
1595 }
1596 return mi.MessageOf(x)
1597}
1598
1599// Deprecated: Use FileMatch.ProtoReflect.Descriptor instead.
1600func (*FileMatch) Descriptor() ([]byte, []int) {
1601 return file_webserver_proto_rawDescGZIP(), []int{14}
1602}
1603
1604func (x *FileMatch) GetScore() float64 {
1605 if x != nil {
1606 return x.Score
1607 }
1608 return 0
1609}
1610
1611func (x *FileMatch) GetDebug() string {
1612 if x != nil {
1613 return x.Debug
1614 }
1615 return ""
1616}
1617
1618func (x *FileMatch) GetFileName() string {
1619 if x != nil {
1620 return x.FileName
1621 }
1622 return ""
1623}
1624
1625func (x *FileMatch) GetRepository() string {
1626 if x != nil {
1627 return x.Repository
1628 }
1629 return ""
1630}
1631
1632func (x *FileMatch) GetBranches() []string {
1633 if x != nil {
1634 return x.Branches
1635 }
1636 return nil
1637}
1638
1639func (x *FileMatch) GetLineMatches() []*LineMatch {
1640 if x != nil {
1641 return x.LineMatches
1642 }
1643 return nil
1644}
1645
1646func (x *FileMatch) GetChunkMatches() []*ChunkMatch {
1647 if x != nil {
1648 return x.ChunkMatches
1649 }
1650 return nil
1651}
1652
1653func (x *FileMatch) GetRepositoryId() uint32 {
1654 if x != nil {
1655 return x.RepositoryId
1656 }
1657 return 0
1658}
1659
1660func (x *FileMatch) GetRepositoryPriority() float64 {
1661 if x != nil {
1662 return x.RepositoryPriority
1663 }
1664 return 0
1665}
1666
1667func (x *FileMatch) GetContent() []byte {
1668 if x != nil {
1669 return x.Content
1670 }
1671 return nil
1672}
1673
1674func (x *FileMatch) GetChecksum() []byte {
1675 if x != nil {
1676 return x.Checksum
1677 }
1678 return nil
1679}
1680
1681func (x *FileMatch) GetLanguage() string {
1682 if x != nil {
1683 return x.Language
1684 }
1685 return ""
1686}
1687
1688func (x *FileMatch) GetSubRepositoryName() string {
1689 if x != nil {
1690 return x.SubRepositoryName
1691 }
1692 return ""
1693}
1694
1695func (x *FileMatch) GetSubRepositoryPath() string {
1696 if x != nil {
1697 return x.SubRepositoryPath
1698 }
1699 return ""
1700}
1701
1702func (x *FileMatch) GetVersion() string {
1703 if x != nil {
1704 return x.Version
1705 }
1706 return ""
1707}
1708
1709type LineMatch struct {
1710 state protoimpl.MessageState
1711 sizeCache protoimpl.SizeCache
1712 unknownFields protoimpl.UnknownFields
1713
1714 Line []byte `protobuf:"bytes,1,opt,name=line,proto3" json:"line,omitempty"`
1715 LineStart int64 `protobuf:"varint,2,opt,name=line_start,json=lineStart,proto3" json:"line_start,omitempty"`
1716 LineEnd int64 `protobuf:"varint,3,opt,name=line_end,json=lineEnd,proto3" json:"line_end,omitempty"`
1717 LineNumber int64 `protobuf:"varint,4,opt,name=line_number,json=lineNumber,proto3" json:"line_number,omitempty"`
1718 // before and after are only set when SearchOptions.NumContextLines is > 0
1719 Before []byte `protobuf:"bytes,5,opt,name=before,proto3" json:"before,omitempty"`
1720 After []byte `protobuf:"bytes,6,opt,name=after,proto3" json:"after,omitempty"`
1721 // If set, this was a match on the filename.
1722 FileName bool `protobuf:"varint,7,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
1723 // The higher the better. Only ranks the quality of the match
1724 // within the file, does not take rank of file into account
1725 Score float64 `protobuf:"fixed64,8,opt,name=score,proto3" json:"score,omitempty"`
1726 DebugScore string `protobuf:"bytes,9,opt,name=debug_score,json=debugScore,proto3" json:"debug_score,omitempty"`
1727 LineFragments []*LineFragmentMatch `protobuf:"bytes,10,rep,name=line_fragments,json=lineFragments,proto3" json:"line_fragments,omitempty"`
1728}
1729
1730func (x *LineMatch) Reset() {
1731 *x = LineMatch{}
1732 if protoimpl.UnsafeEnabled {
1733 mi := &file_webserver_proto_msgTypes[15]
1734 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1735 ms.StoreMessageInfo(mi)
1736 }
1737}
1738
1739func (x *LineMatch) String() string {
1740 return protoimpl.X.MessageStringOf(x)
1741}
1742
1743func (*LineMatch) ProtoMessage() {}
1744
1745func (x *LineMatch) ProtoReflect() protoreflect.Message {
1746 mi := &file_webserver_proto_msgTypes[15]
1747 if protoimpl.UnsafeEnabled && x != nil {
1748 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1749 if ms.LoadMessageInfo() == nil {
1750 ms.StoreMessageInfo(mi)
1751 }
1752 return ms
1753 }
1754 return mi.MessageOf(x)
1755}
1756
1757// Deprecated: Use LineMatch.ProtoReflect.Descriptor instead.
1758func (*LineMatch) Descriptor() ([]byte, []int) {
1759 return file_webserver_proto_rawDescGZIP(), []int{15}
1760}
1761
1762func (x *LineMatch) GetLine() []byte {
1763 if x != nil {
1764 return x.Line
1765 }
1766 return nil
1767}
1768
1769func (x *LineMatch) GetLineStart() int64 {
1770 if x != nil {
1771 return x.LineStart
1772 }
1773 return 0
1774}
1775
1776func (x *LineMatch) GetLineEnd() int64 {
1777 if x != nil {
1778 return x.LineEnd
1779 }
1780 return 0
1781}
1782
1783func (x *LineMatch) GetLineNumber() int64 {
1784 if x != nil {
1785 return x.LineNumber
1786 }
1787 return 0
1788}
1789
1790func (x *LineMatch) GetBefore() []byte {
1791 if x != nil {
1792 return x.Before
1793 }
1794 return nil
1795}
1796
1797func (x *LineMatch) GetAfter() []byte {
1798 if x != nil {
1799 return x.After
1800 }
1801 return nil
1802}
1803
1804func (x *LineMatch) GetFileName() bool {
1805 if x != nil {
1806 return x.FileName
1807 }
1808 return false
1809}
1810
1811func (x *LineMatch) GetScore() float64 {
1812 if x != nil {
1813 return x.Score
1814 }
1815 return 0
1816}
1817
1818func (x *LineMatch) GetDebugScore() string {
1819 if x != nil {
1820 return x.DebugScore
1821 }
1822 return ""
1823}
1824
1825func (x *LineMatch) GetLineFragments() []*LineFragmentMatch {
1826 if x != nil {
1827 return x.LineFragments
1828 }
1829 return nil
1830}
1831
1832type LineFragmentMatch struct {
1833 state protoimpl.MessageState
1834 sizeCache protoimpl.SizeCache
1835 unknownFields protoimpl.UnknownFields
1836
1837 // Offset within the line, in bytes.
1838 LineOffset int64 `protobuf:"varint,1,opt,name=line_offset,json=lineOffset,proto3" json:"line_offset,omitempty"`
1839 // Offset from file start, in bytes.
1840 Offset uint32 `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"`
1841 // Number bytes that match.
1842 MatchLength int64 `protobuf:"varint,3,opt,name=match_length,json=matchLength,proto3" json:"match_length,omitempty"`
1843 SymbolInfo *SymbolInfo `protobuf:"bytes,4,opt,name=symbol_info,json=symbolInfo,proto3,oneof" json:"symbol_info,omitempty"`
1844}
1845
1846func (x *LineFragmentMatch) Reset() {
1847 *x = LineFragmentMatch{}
1848 if protoimpl.UnsafeEnabled {
1849 mi := &file_webserver_proto_msgTypes[16]
1850 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1851 ms.StoreMessageInfo(mi)
1852 }
1853}
1854
1855func (x *LineFragmentMatch) String() string {
1856 return protoimpl.X.MessageStringOf(x)
1857}
1858
1859func (*LineFragmentMatch) ProtoMessage() {}
1860
1861func (x *LineFragmentMatch) ProtoReflect() protoreflect.Message {
1862 mi := &file_webserver_proto_msgTypes[16]
1863 if protoimpl.UnsafeEnabled && x != nil {
1864 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1865 if ms.LoadMessageInfo() == nil {
1866 ms.StoreMessageInfo(mi)
1867 }
1868 return ms
1869 }
1870 return mi.MessageOf(x)
1871}
1872
1873// Deprecated: Use LineFragmentMatch.ProtoReflect.Descriptor instead.
1874func (*LineFragmentMatch) Descriptor() ([]byte, []int) {
1875 return file_webserver_proto_rawDescGZIP(), []int{16}
1876}
1877
1878func (x *LineFragmentMatch) GetLineOffset() int64 {
1879 if x != nil {
1880 return x.LineOffset
1881 }
1882 return 0
1883}
1884
1885func (x *LineFragmentMatch) GetOffset() uint32 {
1886 if x != nil {
1887 return x.Offset
1888 }
1889 return 0
1890}
1891
1892func (x *LineFragmentMatch) GetMatchLength() int64 {
1893 if x != nil {
1894 return x.MatchLength
1895 }
1896 return 0
1897}
1898
1899func (x *LineFragmentMatch) GetSymbolInfo() *SymbolInfo {
1900 if x != nil {
1901 return x.SymbolInfo
1902 }
1903 return nil
1904}
1905
1906type SymbolInfo struct {
1907 state protoimpl.MessageState
1908 sizeCache protoimpl.SizeCache
1909 unknownFields protoimpl.UnknownFields
1910
1911 Sym string `protobuf:"bytes,1,opt,name=sym,proto3" json:"sym,omitempty"`
1912 Kind string `protobuf:"bytes,2,opt,name=kind,proto3" json:"kind,omitempty"`
1913 Parent string `protobuf:"bytes,3,opt,name=parent,proto3" json:"parent,omitempty"`
1914 ParentKind string `protobuf:"bytes,4,opt,name=parent_kind,json=parentKind,proto3" json:"parent_kind,omitempty"`
1915}
1916
1917func (x *SymbolInfo) Reset() {
1918 *x = SymbolInfo{}
1919 if protoimpl.UnsafeEnabled {
1920 mi := &file_webserver_proto_msgTypes[17]
1921 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1922 ms.StoreMessageInfo(mi)
1923 }
1924}
1925
1926func (x *SymbolInfo) String() string {
1927 return protoimpl.X.MessageStringOf(x)
1928}
1929
1930func (*SymbolInfo) ProtoMessage() {}
1931
1932func (x *SymbolInfo) ProtoReflect() protoreflect.Message {
1933 mi := &file_webserver_proto_msgTypes[17]
1934 if protoimpl.UnsafeEnabled && x != nil {
1935 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
1936 if ms.LoadMessageInfo() == nil {
1937 ms.StoreMessageInfo(mi)
1938 }
1939 return ms
1940 }
1941 return mi.MessageOf(x)
1942}
1943
1944// Deprecated: Use SymbolInfo.ProtoReflect.Descriptor instead.
1945func (*SymbolInfo) Descriptor() ([]byte, []int) {
1946 return file_webserver_proto_rawDescGZIP(), []int{17}
1947}
1948
1949func (x *SymbolInfo) GetSym() string {
1950 if x != nil {
1951 return x.Sym
1952 }
1953 return ""
1954}
1955
1956func (x *SymbolInfo) GetKind() string {
1957 if x != nil {
1958 return x.Kind
1959 }
1960 return ""
1961}
1962
1963func (x *SymbolInfo) GetParent() string {
1964 if x != nil {
1965 return x.Parent
1966 }
1967 return ""
1968}
1969
1970func (x *SymbolInfo) GetParentKind() string {
1971 if x != nil {
1972 return x.ParentKind
1973 }
1974 return ""
1975}
1976
1977type ChunkMatch struct {
1978 state protoimpl.MessageState
1979 sizeCache protoimpl.SizeCache
1980 unknownFields protoimpl.UnknownFields
1981
1982 // A contiguous range of complete lines that fully contains Ranges.
1983 Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"`
1984 // The location (inclusive) of the beginning of content
1985 // relative to the beginning of the file. It will always be at the
1986 // beginning of a line (Column will always be 1).
1987 ContentStart *Location `protobuf:"bytes,2,opt,name=content_start,json=contentStart,proto3" json:"content_start,omitempty"`
1988 // True if this match is a match on the file name, in
1989 // which case Content will contain the file name.
1990 FileName bool `protobuf:"varint,3,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
1991 // A set of matching ranges within this chunk. Each range is relative
1992 // to the beginning of the file (not the beginning of Content).
1993 Ranges []*Range `protobuf:"bytes,4,rep,name=ranges,proto3" json:"ranges,omitempty"`
1994 // The symbol information associated with Ranges. If it is non-nil,
1995 // its length will equal that of Ranges. Any of its elements may be nil.
1996 SymbolInfo []*SymbolInfo `protobuf:"bytes,5,rep,name=symbol_info,json=symbolInfo,proto3" json:"symbol_info,omitempty"`
1997 Score float64 `protobuf:"fixed64,6,opt,name=score,proto3" json:"score,omitempty"`
1998 DebugScore string `protobuf:"bytes,7,opt,name=debug_score,json=debugScore,proto3" json:"debug_score,omitempty"`
1999}
2000
2001func (x *ChunkMatch) Reset() {
2002 *x = ChunkMatch{}
2003 if protoimpl.UnsafeEnabled {
2004 mi := &file_webserver_proto_msgTypes[18]
2005 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2006 ms.StoreMessageInfo(mi)
2007 }
2008}
2009
2010func (x *ChunkMatch) String() string {
2011 return protoimpl.X.MessageStringOf(x)
2012}
2013
2014func (*ChunkMatch) ProtoMessage() {}
2015
2016func (x *ChunkMatch) ProtoReflect() protoreflect.Message {
2017 mi := &file_webserver_proto_msgTypes[18]
2018 if protoimpl.UnsafeEnabled && x != nil {
2019 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2020 if ms.LoadMessageInfo() == nil {
2021 ms.StoreMessageInfo(mi)
2022 }
2023 return ms
2024 }
2025 return mi.MessageOf(x)
2026}
2027
2028// Deprecated: Use ChunkMatch.ProtoReflect.Descriptor instead.
2029func (*ChunkMatch) Descriptor() ([]byte, []int) {
2030 return file_webserver_proto_rawDescGZIP(), []int{18}
2031}
2032
2033func (x *ChunkMatch) GetContent() []byte {
2034 if x != nil {
2035 return x.Content
2036 }
2037 return nil
2038}
2039
2040func (x *ChunkMatch) GetContentStart() *Location {
2041 if x != nil {
2042 return x.ContentStart
2043 }
2044 return nil
2045}
2046
2047func (x *ChunkMatch) GetFileName() bool {
2048 if x != nil {
2049 return x.FileName
2050 }
2051 return false
2052}
2053
2054func (x *ChunkMatch) GetRanges() []*Range {
2055 if x != nil {
2056 return x.Ranges
2057 }
2058 return nil
2059}
2060
2061func (x *ChunkMatch) GetSymbolInfo() []*SymbolInfo {
2062 if x != nil {
2063 return x.SymbolInfo
2064 }
2065 return nil
2066}
2067
2068func (x *ChunkMatch) GetScore() float64 {
2069 if x != nil {
2070 return x.Score
2071 }
2072 return 0
2073}
2074
2075func (x *ChunkMatch) GetDebugScore() string {
2076 if x != nil {
2077 return x.DebugScore
2078 }
2079 return ""
2080}
2081
2082type Range struct {
2083 state protoimpl.MessageState
2084 sizeCache protoimpl.SizeCache
2085 unknownFields protoimpl.UnknownFields
2086
2087 // The inclusive beginning of the range.
2088 Start *Location `protobuf:"bytes,1,opt,name=start,proto3" json:"start,omitempty"`
2089 // The exclusive end of the range.
2090 End *Location `protobuf:"bytes,2,opt,name=end,proto3" json:"end,omitempty"`
2091}
2092
2093func (x *Range) Reset() {
2094 *x = Range{}
2095 if protoimpl.UnsafeEnabled {
2096 mi := &file_webserver_proto_msgTypes[19]
2097 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2098 ms.StoreMessageInfo(mi)
2099 }
2100}
2101
2102func (x *Range) String() string {
2103 return protoimpl.X.MessageStringOf(x)
2104}
2105
2106func (*Range) ProtoMessage() {}
2107
2108func (x *Range) ProtoReflect() protoreflect.Message {
2109 mi := &file_webserver_proto_msgTypes[19]
2110 if protoimpl.UnsafeEnabled && x != nil {
2111 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2112 if ms.LoadMessageInfo() == nil {
2113 ms.StoreMessageInfo(mi)
2114 }
2115 return ms
2116 }
2117 return mi.MessageOf(x)
2118}
2119
2120// Deprecated: Use Range.ProtoReflect.Descriptor instead.
2121func (*Range) Descriptor() ([]byte, []int) {
2122 return file_webserver_proto_rawDescGZIP(), []int{19}
2123}
2124
2125func (x *Range) GetStart() *Location {
2126 if x != nil {
2127 return x.Start
2128 }
2129 return nil
2130}
2131
2132func (x *Range) GetEnd() *Location {
2133 if x != nil {
2134 return x.End
2135 }
2136 return nil
2137}
2138
2139type Location struct {
2140 state protoimpl.MessageState
2141 sizeCache protoimpl.SizeCache
2142 unknownFields protoimpl.UnknownFields
2143
2144 // 0-based byte offset from the beginning of the file
2145 ByteOffset uint32 `protobuf:"varint,1,opt,name=byte_offset,json=byteOffset,proto3" json:"byte_offset,omitempty"`
2146 // 1-based line number from the beginning of the file
2147 LineNumber uint32 `protobuf:"varint,2,opt,name=line_number,json=lineNumber,proto3" json:"line_number,omitempty"`
2148 // 1-based column number (in runes) from the beginning of line
2149 Column uint32 `protobuf:"varint,3,opt,name=column,proto3" json:"column,omitempty"`
2150}
2151
2152func (x *Location) Reset() {
2153 *x = Location{}
2154 if protoimpl.UnsafeEnabled {
2155 mi := &file_webserver_proto_msgTypes[20]
2156 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2157 ms.StoreMessageInfo(mi)
2158 }
2159}
2160
2161func (x *Location) String() string {
2162 return protoimpl.X.MessageStringOf(x)
2163}
2164
2165func (*Location) ProtoMessage() {}
2166
2167func (x *Location) ProtoReflect() protoreflect.Message {
2168 mi := &file_webserver_proto_msgTypes[20]
2169 if protoimpl.UnsafeEnabled && x != nil {
2170 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
2171 if ms.LoadMessageInfo() == nil {
2172 ms.StoreMessageInfo(mi)
2173 }
2174 return ms
2175 }
2176 return mi.MessageOf(x)
2177}
2178
2179// Deprecated: Use Location.ProtoReflect.Descriptor instead.
2180func (*Location) Descriptor() ([]byte, []int) {
2181 return file_webserver_proto_rawDescGZIP(), []int{20}
2182}
2183
2184func (x *Location) GetByteOffset() uint32 {
2185 if x != nil {
2186 return x.ByteOffset
2187 }
2188 return 0
2189}
2190
2191func (x *Location) GetLineNumber() uint32 {
2192 if x != nil {
2193 return x.LineNumber
2194 }
2195 return 0
2196}
2197
2198func (x *Location) GetColumn() uint32 {
2199 if x != nil {
2200 return x.Column
2201 }
2202 return 0
2203}
2204
2205var File_webserver_proto protoreflect.FileDescriptor
2206
2207var file_webserver_proto_rawDesc = []byte{
2208 0x0a, 0x0f, 0x77, 0x65, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74,
2209 0x6f, 0x12, 0x07, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67,
2210 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61,
2211 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67,
2212 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65,
2213 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x0b, 0x71, 0x75, 0x65,
2214 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x5d, 0x0a, 0x0d, 0x53, 0x65, 0x61, 0x72,
2215 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x05, 0x71, 0x75, 0x65,
2216 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e,
2217 0x76, 0x31, 0x2e, 0x51, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x2a, 0x0a, 0x04, 0x6f,
2218 0x70, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x72, 0x70, 0x63,
2219 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
2220 0x73, 0x52, 0x04, 0x6f, 0x70, 0x74, 0x73, 0x22, 0xa5, 0x03, 0x0a, 0x0e, 0x53, 0x65, 0x61, 0x72,
2221 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x05, 0x73, 0x74,
2222 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x67, 0x72, 0x70, 0x63,
2223 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73,
2224 0x12, 0x2d, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01,
2225 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f,
2226 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12,
2227 0x28, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12,
2228 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4d, 0x61, 0x74,
2229 0x63, 0x68, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x09, 0x72, 0x65, 0x70,
2230 0x6f, 0x5f, 0x75, 0x72, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67,
2231 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73,
2232 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x55, 0x72, 0x6c, 0x73, 0x45, 0x6e,
2233 0x74, 0x72, 0x79, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6f, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x51, 0x0a,
2234 0x0e, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18,
2235 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e,
2236 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c,
2237 0x69, 0x6e, 0x65, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72,
2238 0x79, 0x52, 0x0d, 0x6c, 0x69, 0x6e, 0x65, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73,
2239 0x1a, 0x3b, 0x0a, 0x0d, 0x52, 0x65, 0x70, 0x6f, 0x55, 0x72, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72,
2240 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
2241 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
2242 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x40, 0x0a,
2243 0x12, 0x4c, 0x69, 0x6e, 0x65, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x6e,
2244 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
2245 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
2246 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
2247 0xc4, 0x05, 0x0a, 0x0d, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
2248 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x5f, 0x64, 0x6f,
2249 0x63, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x65,
2250 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12,
2251 0x14, 0x0a, 0x05, 0x77, 0x68, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05,
2252 0x77, 0x68, 0x6f, 0x6c, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x6d,
2253 0x61, 0x78, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03,
2254 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x73, 0x68, 0x61, 0x72, 0x64, 0x4d, 0x61, 0x78, 0x4d, 0x61,
2255 0x74, 0x63, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x15, 0x74, 0x6f, 0x74, 0x61,
2256 0x6c, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e,
2257 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x4d, 0x61,
2258 0x78, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x1a, 0x73,
2259 0x68, 0x61, 0x72, 0x64, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x5f, 0x6d, 0x61, 0x78, 0x5f, 0x6d, 0x61,
2260 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52,
2261 0x16, 0x73, 0x68, 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6f, 0x4d, 0x61, 0x78, 0x4d, 0x61, 0x74,
2262 0x63, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x3d, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x77,
2263 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19,
2264 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
2265 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6d, 0x61, 0x78, 0x57, 0x61,
2266 0x6c, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x41, 0x0a, 0x0f, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x5f,
2267 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
2268 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
2269 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x66, 0x6c, 0x75, 0x73,
2270 0x68, 0x57, 0x61, 0x6c, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x15, 0x6d, 0x61, 0x78,
2271 0x5f, 0x64, 0x6f, 0x63, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x63, 0x6f, 0x75,
2272 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x6d, 0x61, 0x78, 0x44, 0x6f, 0x63,
2273 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x11,
2274 0x6e, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x65,
2275 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x6e, 0x75, 0x6d, 0x43, 0x6f, 0x6e, 0x74,
2276 0x65, 0x78, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x68, 0x75, 0x6e,
2277 0x6b, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52,
2278 0x0c, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x2c, 0x0a,
2279 0x12, 0x75, 0x73, 0x65, 0x5f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61,
2280 0x6e, 0x6b, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x75, 0x73, 0x65, 0x44, 0x6f,
2281 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x64,
2282 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x6b, 0x73, 0x5f, 0x77, 0x65,
2283 0x69, 0x67, 0x68, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x01, 0x52, 0x13, 0x64, 0x6f, 0x63, 0x75,
2284 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x6b, 0x73, 0x57, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12,
2285 0x14, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05,
2286 0x74, 0x72, 0x61, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x73,
2287 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x65, 0x62, 0x75,
2288 0x67, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x75, 0x73, 0x65, 0x5f, 0x6b, 0x65,
2289 0x79, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x0f, 0x20,
2290 0x01, 0x28, 0x08, 0x52, 0x11, 0x75, 0x73, 0x65, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x53,
2291 0x63, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x22, 0x59, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65,
2292 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x01,
2293 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x51,
2294 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x28, 0x0a, 0x04, 0x6f, 0x70, 0x74, 0x73, 0x18,
2295 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e,
2296 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x04, 0x6f, 0x70, 0x74,
2297 0x73, 0x22, 0xe7, 0x01, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
2298 0x73, 0x12, 0x38, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
2299 0x32, 0x22, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f,
2300 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x46,
2301 0x69, 0x65, 0x6c, 0x64, 0x52, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d,
2302 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6d, 0x69,
2303 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x22, 0x83, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x70, 0x6f, 0x4c, 0x69,
2304 0x73, 0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x1b, 0x0a, 0x17, 0x52, 0x45, 0x50, 0x4f, 0x5f,
2305 0x4c, 0x49, 0x53, 0x54, 0x5f, 0x46, 0x49, 0x45, 0x4c, 0x44, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f,
2306 0x57, 0x4e, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x45, 0x50, 0x4f, 0x5f, 0x4c, 0x49, 0x53,
2307 0x54, 0x5f, 0x46, 0x49, 0x45, 0x4c, 0x44, 0x5f, 0x52, 0x45, 0x50, 0x4f, 0x53, 0x10, 0x01, 0x12,
2308 0x1b, 0x0a, 0x17, 0x52, 0x45, 0x50, 0x4f, 0x5f, 0x4c, 0x49, 0x53, 0x54, 0x5f, 0x46, 0x49, 0x45,
2309 0x4c, 0x44, 0x5f, 0x4d, 0x49, 0x4e, 0x49, 0x4d, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19,
2310 0x52, 0x45, 0x50, 0x4f, 0x5f, 0x4c, 0x49, 0x53, 0x54, 0x5f, 0x46, 0x49, 0x45, 0x4c, 0x44, 0x5f,
2311 0x52, 0x45, 0x50, 0x4f, 0x53, 0x5f, 0x4d, 0x41, 0x50, 0x10, 0x03, 0x22, 0xb7, 0x03, 0x0a, 0x0c,
2312 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x05,
2313 0x72, 0x65, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x72,
2314 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e,
2315 0x74, 0x72, 0x79, 0x52, 0x05, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x12, 0x40, 0x0a, 0x09, 0x72, 0x65,
2316 0x70, 0x6f, 0x73, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e,
2317 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70,
2318 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74,
2319 0x72, 0x79, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x4d, 0x61, 0x70, 0x12, 0x18, 0x0a, 0x07,
2320 0x63, 0x72, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x63,
2321 0x72, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18,
2322 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e,
2323 0x52, 0x65, 0x70, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73,
2324 0x12, 0x3c, 0x0a, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x03, 0x28,
2325 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
2326 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c,
2327 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x1a, 0x5a,
2328 0x0a, 0x0d, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
2329 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65,
2330 0x79, 0x12, 0x33, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
2331 0x32, 0x1d, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x69, 0x6e, 0x69, 0x6d,
2332 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
2333 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x59, 0x0a, 0x0c, 0x4d, 0x69,
2334 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
2335 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x05,
2336 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x72,
2337 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x52, 0x65, 0x70,
2338 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
2339 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xad, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x70, 0x6f, 0x4c, 0x69,
2340 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x33, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73,
2341 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x72,
2342 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79,
2343 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x3d, 0x0a, 0x0e,
2344 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02,
2345 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x49,
2346 0x6e, 0x64, 0x65, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0d, 0x69, 0x6e,
2347 0x64, 0x65, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x28, 0x0a, 0x05, 0x73,
2348 0x74, 0x61, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x72, 0x70,
2349 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, 0x05,
2350 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0xc5, 0x06, 0x0a, 0x0a, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69,
2351 0x74, 0x6f, 0x72, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
2352 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
2353 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18,
2354 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f,
2355 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72,
2356 0x63, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x18, 0x05,
2357 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x52,
2358 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x52,
2359 0x08, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x0c, 0x73, 0x75, 0x62,
2360 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32,
2361 0x23, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69,
2362 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x53, 0x75, 0x62, 0x52, 0x65, 0x70, 0x6f, 0x4d, 0x61, 0x70, 0x45,
2363 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x52, 0x65, 0x70, 0x6f, 0x4d, 0x61, 0x70,
2364 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x5f, 0x74,
2365 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63,
2366 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x55, 0x72, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65,
2367 0x12, 0x2a, 0x0a, 0x11, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x5f, 0x74, 0x65, 0x6d,
2368 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x66, 0x69, 0x6c,
2369 0x65, 0x55, 0x72, 0x6c, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x16,
2370 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x65,
2371 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x6c, 0x69,
2372 0x6e, 0x65, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61,
2373 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0a,
2374 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x41,
2375 0x0a, 0x0a, 0x72, 0x61, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0b, 0x20, 0x03,
2376 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x70,
2377 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x52, 0x61, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69,
2378 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x72, 0x61, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69,
2379 0x67, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52,
2380 0x04, 0x72, 0x61, 0x6e, 0x6b, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6f,
2381 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e,
2382 0x64, 0x65, 0x78, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x61,
2383 0x73, 0x5f, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52,
2384 0x0a, 0x68, 0x61, 0x73, 0x53, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74,
2385 0x6f, 0x6d, 0x62, 0x73, 0x74, 0x6f, 0x6e, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
2386 0x74, 0x6f, 0x6d, 0x62, 0x73, 0x74, 0x6f, 0x6e, 0x65, 0x12, 0x48, 0x0a, 0x12, 0x6c, 0x61, 0x74,
2387 0x65, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18,
2388 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
2389 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
2390 0x70, 0x52, 0x10, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x44,
2391 0x61, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x46, 0x69, 0x6c, 0x65, 0x54, 0x6f, 0x6d, 0x62, 0x73,
2392 0x74, 0x6f, 0x6e, 0x65, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x46, 0x69, 0x6c,
2393 0x65, 0x54, 0x6f, 0x6d, 0x62, 0x73, 0x74, 0x6f, 0x6e, 0x65, 0x73, 0x1a, 0x52, 0x0a, 0x0f, 0x53,
2394 0x75, 0x62, 0x52, 0x65, 0x70, 0x6f, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
2395 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
2396 0x12, 0x29, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
2397 0x13, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69,
2398 0x74, 0x6f, 0x72, 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a,
2399 0x3c, 0x0a, 0x0e, 0x52, 0x61, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x45, 0x6e, 0x74, 0x72,
2400 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
2401 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
2402 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xcb, 0x03,
2403 0x0a, 0x0d, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12,
2404 0x30, 0x0a, 0x14, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x5f,
2405 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x69,
2406 0x6e, 0x64, 0x65, 0x78, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
2407 0x6e, 0x12, 0x32, 0x0a, 0x15, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75,
2408 0x72, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03,
2409 0x52, 0x13, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x56, 0x65,
2410 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x18, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x6d,
2411 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
2412 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4d, 0x69,
2413 0x6e, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x39,
2414 0x0a, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
2415 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
2416 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09,
2417 0x69, 0x6e, 0x64, 0x65, 0x78, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6c, 0x61,
2418 0x69, 0x6e, 0x5f, 0x61, 0x73, 0x63, 0x69, 0x69, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a,
2419 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x41, 0x73, 0x63, 0x69, 0x69, 0x12, 0x4a, 0x0a, 0x0c, 0x6c, 0x61,
2420 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b,
2421 0x32, 0x27, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x64, 0x65, 0x78,
2422 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67,
2423 0x65, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x6c, 0x61, 0x6e, 0x67, 0x75,
2424 0x61, 0x67, 0x65, 0x4d, 0x61, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x7a, 0x6f, 0x65, 0x6b, 0x74, 0x5f,
2425 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x7a,
2426 0x6f, 0x65, 0x6b, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69,
2427 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x1a, 0x3e, 0x0a, 0x10, 0x4c,
2428 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
2429 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
2430 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
2431 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x96, 0x01, 0x0a, 0x14,
2432 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x45,
2433 0x6e, 0x74, 0x72, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x5f, 0x73, 0x79, 0x6d, 0x62,
2434 0x6f, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x53, 0x79,
2435 0x6d, 0x62, 0x6f, 0x6c, 0x73, 0x12, 0x35, 0x0a, 0x08, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65,
2436 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76,
2437 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x72, 0x61, 0x6e,
2438 0x63, 0x68, 0x52, 0x08, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f,
2439 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x75, 0x6e, 0x69, 0x78, 0x18,
2440 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x54, 0x69, 0x6d, 0x65,
2441 0x55, 0x6e, 0x69, 0x78, 0x22, 0x40, 0x0a, 0x10, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f,
2442 0x72, 0x79, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
2443 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07,
2444 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76,
2445 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xcd, 0x02, 0x0a, 0x09, 0x52, 0x65, 0x70, 0x6f, 0x53,
2446 0x74, 0x61, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x18, 0x01, 0x20,
2447 0x01, 0x28, 0x03, 0x52, 0x05, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68,
2448 0x61, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72,
2449 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18,
2450 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73,
2451 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18,
2452 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x79, 0x74, 0x65,
2453 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x79, 0x74,
2454 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
2455 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x77, 0x5f, 0x6c, 0x69,
2456 0x6e, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52,
2457 0x0d, 0x6e, 0x65, 0x77, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x42,
2458 0x0a, 0x1e, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68,
2459 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74,
2460 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x1a, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x42,
2461 0x72, 0x61, 0x6e, 0x63, 0x68, 0x4e, 0x65, 0x77, 0x4c, 0x69, 0x6e, 0x65, 0x73, 0x43, 0x6f, 0x75,
2462 0x6e, 0x74, 0x12, 0x42, 0x0a, 0x1e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x5f, 0x62, 0x72, 0x61, 0x6e,
2463 0x63, 0x68, 0x65, 0x73, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x5f, 0x63,
2464 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x1a, 0x6f, 0x74, 0x68, 0x65,
2465 0x72, 0x42, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x4e, 0x65, 0x77, 0x4c, 0x69, 0x6e, 0x65,
2466 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xdf, 0x05, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x73,
2467 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65,
2468 0x73, 0x5f, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12,
2469 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x4c, 0x6f, 0x61, 0x64,
2470 0x65, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65,
2471 0x73, 0x5f, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10,
2472 0x69, 0x6e, 0x64, 0x65, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x65, 0x64,
2473 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x61, 0x73, 0x68, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
2474 0x03, 0x52, 0x07, 0x63, 0x72, 0x61, 0x73, 0x68, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x08, 0x64, 0x75,
2475 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67,
2476 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44,
2477 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
2478 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
2479 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74,
2480 0x12, 0x34, 0x0a, 0x16, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x5f,
2481 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03,
2482 0x52, 0x14, 0x73, 0x68, 0x61, 0x72, 0x64, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x73,
2483 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x5f,
2484 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03,
2485 0x52, 0x0f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65,
2486 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x5f, 0x6c, 0x6f, 0x61, 0x64, 0x65,
2487 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x4c, 0x6f,
2488 0x61, 0x64, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x5f, 0x73, 0x6b,
2489 0x69, 0x70, 0x70, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x66, 0x69, 0x6c,
2490 0x65, 0x73, 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x68, 0x61,
2491 0x72, 0x64, 0x73, 0x5f, 0x73, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28,
2492 0x03, 0x52, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x64, 0x73, 0x53, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64,
2493 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x68, 0x61, 0x72, 0x64, 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x70,
2494 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x64, 0x73,
2495 0x53, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x68, 0x61, 0x72, 0x64,
2496 0x73, 0x5f, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72,
2497 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x73, 0x68, 0x61, 0x72, 0x64, 0x73, 0x53, 0x6b,
2498 0x69, 0x70, 0x70, 0x65, 0x64, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x6d,
2499 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03,
2500 0x52, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d,
2501 0x6e, 0x67, 0x72, 0x61, 0x6d, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x0e, 0x20,
2502 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6e, 0x67, 0x72, 0x61, 0x6d, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65,
2503 0x73, 0x12, 0x2d, 0x0a, 0x04, 0x77, 0x61, 0x69, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32,
2504 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
2505 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x77, 0x61, 0x69, 0x74,
2506 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x67, 0x65, 0x78, 0x70, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x73,
2507 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x72, 0x65,
2508 0x67, 0x65, 0x78, 0x70, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x12,
2509 0x37, 0x0a, 0x0c, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18,
2510 0x11, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e,
2511 0x46, 0x6c, 0x75, 0x73, 0x68, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x0b, 0x66, 0x6c, 0x75,
2512 0x73, 0x68, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x58, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x67,
2513 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79,
2514 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79,
2515 0x12, 0x30, 0x0a, 0x14, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x5f,
2516 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x12,
2517 0x6d, 0x61, 0x78, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69,
2518 0x74, 0x79, 0x22, 0xa3, 0x04, 0x0a, 0x09, 0x46, 0x69, 0x6c, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68,
2519 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52,
2520 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, 0x18,
2521 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x64, 0x65, 0x62, 0x75, 0x67, 0x12, 0x1b, 0x0a, 0x09,
2522 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
2523 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x70,
2524 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72,
2525 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x62, 0x72, 0x61,
2526 0x6e, 0x63, 0x68, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x62, 0x72, 0x61,
2527 0x6e, 0x63, 0x68, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x0c, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6d, 0x61,
2528 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x72,
2529 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52,
2530 0x0b, 0x6c, 0x69, 0x6e, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x0d,
2531 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x18, 0x07, 0x20,
2532 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68,
2533 0x75, 0x6e, 0x6b, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x0c, 0x63, 0x68, 0x75, 0x6e, 0x6b, 0x4d,
2534 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69,
2535 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72,
2536 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x72,
2537 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69,
2538 0x74, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x01, 0x52, 0x12, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69,
2539 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x18, 0x0a, 0x07,
2540 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63,
2541 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73,
2542 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73,
2543 0x75, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x0c,
2544 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x2e,
2545 0x0a, 0x13, 0x73, 0x75, 0x62, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79,
2546 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x75, 0x62,
2547 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e,
2548 0x0a, 0x13, 0x73, 0x75, 0x62, 0x5f, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79,
2549 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x75, 0x62,
2550 0x52, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x61, 0x74, 0x68, 0x12, 0x18,
2551 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52,
2552 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xbf, 0x02, 0x0a, 0x09, 0x4c, 0x69, 0x6e,
2553 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01,
2554 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x69,
2555 0x6e, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09,
2556 0x6c, 0x69, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x69, 0x6e,
2557 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x6c, 0x69, 0x6e,
2558 0x65, 0x45, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d,
2559 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6e, 0x65, 0x4e,
2560 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18,
2561 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x14, 0x0a,
2562 0x05, 0x61, 0x66, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x61, 0x66,
2563 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
2564 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65,
2565 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x01, 0x52,
2566 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f,
2567 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x62,
2568 0x75, 0x67, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x41, 0x0a, 0x0e, 0x6c, 0x69, 0x6e, 0x65, 0x5f,
2569 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32,
2570 0x1a, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x46, 0x72,
2571 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x0d, 0x6c, 0x69, 0x6e,
2572 0x65, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xba, 0x01, 0x0a, 0x11, 0x4c,
2573 0x69, 0x6e, 0x65, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68,
2574 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18,
2575 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6e, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65,
2576 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
2577 0x0d, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x61, 0x74,
2578 0x63, 0x68, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52,
2579 0x0b, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x39, 0x0a, 0x0b,
2580 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28,
2581 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x6d, 0x62,
2582 0x6f, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c,
2583 0x49, 0x6e, 0x66, 0x6f, 0x88, 0x01, 0x01, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x73, 0x79, 0x6d, 0x62,
2584 0x6f, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x6b, 0x0a, 0x0a, 0x53, 0x79, 0x6d, 0x62, 0x6f,
2585 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x79, 0x6d, 0x18, 0x01, 0x20, 0x01,
2586 0x28, 0x09, 0x52, 0x03, 0x73, 0x79, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18,
2587 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70,
2588 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72,
2589 0x65, 0x6e, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6b, 0x69,
2590 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
2591 0x4b, 0x69, 0x6e, 0x64, 0x22, 0x90, 0x02, 0x0a, 0x0a, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x4d, 0x61,
2592 0x74, 0x63, 0x68, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01,
2593 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x0a,
2594 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02,
2595 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4c,
2596 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
2597 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6e, 0x61,
2598 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x4e, 0x61,
2599 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03,
2600 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x61, 0x6e,
2601 0x67, 0x65, 0x52, 0x06, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x34, 0x0a, 0x0b, 0x73, 0x79,
2602 0x6d, 0x62, 0x6f, 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32,
2603 0x13, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x79, 0x6d, 0x62, 0x6f, 0x6c,
2604 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x49, 0x6e, 0x66, 0x6f,
2605 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x01, 0x52,
2606 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f,
2607 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x62,
2608 0x75, 0x67, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0x55, 0x0a, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65,
2609 0x12, 0x27, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
2610 0x11, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69,
2611 0x6f, 0x6e, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x23, 0x0a, 0x03, 0x65, 0x6e, 0x64,
2612 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31,
2613 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x22, 0x64,
2614 0x0a, 0x08, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x79,
2615 0x74, 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
2616 0x0a, 0x62, 0x79, 0x74, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6c,
2617 0x69, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
2618 0x52, 0x0a, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06,
2619 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x63, 0x6f,
2620 0x6c, 0x75, 0x6d, 0x6e, 0x2a, 0x4c, 0x0a, 0x0b, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x52, 0x65, 0x61,
2621 0x73, 0x6f, 0x6e, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00,
2622 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x49, 0x4d, 0x45, 0x52, 0x5f, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45,
2623 0x44, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x5f, 0x46, 0x4c, 0x55,
2624 0x53, 0x48, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x41, 0x58, 0x5f, 0x53, 0x49, 0x5a, 0x45,
2625 0x10, 0x03, 0x32, 0xcb, 0x01, 0x0a, 0x10, 0x57, 0x65, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
2626 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3b, 0x0a, 0x06, 0x53, 0x65, 0x61, 0x72, 0x63,
2627 0x68, 0x12, 0x16, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x61, 0x72,
2628 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x67, 0x72, 0x70, 0x63,
2629 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
2630 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, 0x65,
2631 0x61, 0x72, 0x63, 0x68, 0x12, 0x16, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x53,
2632 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x67,
2633 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73,
2634 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x30, 0x01, 0x12, 0x35, 0x0a, 0x04, 0x4c, 0x69, 0x73,
2635 0x74, 0x12, 0x14, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
2636 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x76,
2637 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00,
2638 0x42, 0x26, 0x5a, 0x24, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x73,
2639 0x6f, 0x75, 0x72, 0x63, 0x65, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2f, 0x7a, 0x6f, 0x65, 0x6b, 0x74,
2640 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
2641}
2642
2643var (
2644 file_webserver_proto_rawDescOnce sync.Once
2645 file_webserver_proto_rawDescData = file_webserver_proto_rawDesc
2646)
2647
2648func file_webserver_proto_rawDescGZIP() []byte {
2649 file_webserver_proto_rawDescOnce.Do(func() {
2650 file_webserver_proto_rawDescData = protoimpl.X.CompressGZIP(file_webserver_proto_rawDescData)
2651 })
2652 return file_webserver_proto_rawDescData
2653}
2654
2655var file_webserver_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
2656var file_webserver_proto_msgTypes = make([]protoimpl.MessageInfo, 28)
2657var file_webserver_proto_goTypes = []interface{}{
2658 (FlushReason)(0), // 0: grpc.v1.FlushReason
2659 (ListOptions_RepoListField)(0), // 1: grpc.v1.ListOptions.RepoListField
2660 (*SearchRequest)(nil), // 2: grpc.v1.SearchRequest
2661 (*SearchResponse)(nil), // 3: grpc.v1.SearchResponse
2662 (*SearchOptions)(nil), // 4: grpc.v1.SearchOptions
2663 (*ListRequest)(nil), // 5: grpc.v1.ListRequest
2664 (*ListOptions)(nil), // 6: grpc.v1.ListOptions
2665 (*ListResponse)(nil), // 7: grpc.v1.ListResponse
2666 (*RepoListEntry)(nil), // 8: grpc.v1.RepoListEntry
2667 (*Repository)(nil), // 9: grpc.v1.Repository
2668 (*IndexMetadata)(nil), // 10: grpc.v1.IndexMetadata
2669 (*MinimalRepoListEntry)(nil), // 11: grpc.v1.MinimalRepoListEntry
2670 (*RepositoryBranch)(nil), // 12: grpc.v1.RepositoryBranch
2671 (*RepoStats)(nil), // 13: grpc.v1.RepoStats
2672 (*Stats)(nil), // 14: grpc.v1.Stats
2673 (*Progress)(nil), // 15: grpc.v1.Progress
2674 (*FileMatch)(nil), // 16: grpc.v1.FileMatch
2675 (*LineMatch)(nil), // 17: grpc.v1.LineMatch
2676 (*LineFragmentMatch)(nil), // 18: grpc.v1.LineFragmentMatch
2677 (*SymbolInfo)(nil), // 19: grpc.v1.SymbolInfo
2678 (*ChunkMatch)(nil), // 20: grpc.v1.ChunkMatch
2679 (*Range)(nil), // 21: grpc.v1.Range
2680 (*Location)(nil), // 22: grpc.v1.Location
2681 nil, // 23: grpc.v1.SearchResponse.RepoUrlsEntry
2682 nil, // 24: grpc.v1.SearchResponse.LineFragmentsEntry
2683 nil, // 25: grpc.v1.ListResponse.ReposMapEntry
2684 nil, // 26: grpc.v1.ListResponse.MinimalEntry
2685 nil, // 27: grpc.v1.Repository.SubRepoMapEntry
2686 nil, // 28: grpc.v1.Repository.RawConfigEntry
2687 nil, // 29: grpc.v1.IndexMetadata.LanguageMapEntry
2688 (*Q)(nil), // 30: grpc.v1.Q
2689 (*durationpb.Duration)(nil), // 31: google.protobuf.Duration
2690 (*timestamppb.Timestamp)(nil), // 32: google.protobuf.Timestamp
2691}
2692var file_webserver_proto_depIdxs = []int32{
2693 30, // 0: grpc.v1.SearchRequest.query:type_name -> grpc.v1.Q
2694 4, // 1: grpc.v1.SearchRequest.opts:type_name -> grpc.v1.SearchOptions
2695 14, // 2: grpc.v1.SearchResponse.stats:type_name -> grpc.v1.Stats
2696 15, // 3: grpc.v1.SearchResponse.progress:type_name -> grpc.v1.Progress
2697 16, // 4: grpc.v1.SearchResponse.files:type_name -> grpc.v1.FileMatch
2698 23, // 5: grpc.v1.SearchResponse.repo_urls:type_name -> grpc.v1.SearchResponse.RepoUrlsEntry
2699 24, // 6: grpc.v1.SearchResponse.line_fragments:type_name -> grpc.v1.SearchResponse.LineFragmentsEntry
2700 31, // 7: grpc.v1.SearchOptions.max_wall_time:type_name -> google.protobuf.Duration
2701 31, // 8: grpc.v1.SearchOptions.flush_wall_time:type_name -> google.protobuf.Duration
2702 30, // 9: grpc.v1.ListRequest.query:type_name -> grpc.v1.Q
2703 6, // 10: grpc.v1.ListRequest.opts:type_name -> grpc.v1.ListOptions
2704 1, // 11: grpc.v1.ListOptions.field:type_name -> grpc.v1.ListOptions.RepoListField
2705 8, // 12: grpc.v1.ListResponse.repos:type_name -> grpc.v1.RepoListEntry
2706 25, // 13: grpc.v1.ListResponse.repos_map:type_name -> grpc.v1.ListResponse.ReposMapEntry
2707 13, // 14: grpc.v1.ListResponse.stats:type_name -> grpc.v1.RepoStats
2708 26, // 15: grpc.v1.ListResponse.minimal:type_name -> grpc.v1.ListResponse.MinimalEntry
2709 9, // 16: grpc.v1.RepoListEntry.repository:type_name -> grpc.v1.Repository
2710 10, // 17: grpc.v1.RepoListEntry.index_metadata:type_name -> grpc.v1.IndexMetadata
2711 13, // 18: grpc.v1.RepoListEntry.stats:type_name -> grpc.v1.RepoStats
2712 12, // 19: grpc.v1.Repository.branches:type_name -> grpc.v1.RepositoryBranch
2713 27, // 20: grpc.v1.Repository.sub_repo_map:type_name -> grpc.v1.Repository.SubRepoMapEntry
2714 28, // 21: grpc.v1.Repository.raw_config:type_name -> grpc.v1.Repository.RawConfigEntry
2715 32, // 22: grpc.v1.Repository.latest_commit_date:type_name -> google.protobuf.Timestamp
2716 32, // 23: grpc.v1.IndexMetadata.index_time:type_name -> google.protobuf.Timestamp
2717 29, // 24: grpc.v1.IndexMetadata.language_map:type_name -> grpc.v1.IndexMetadata.LanguageMapEntry
2718 12, // 25: grpc.v1.MinimalRepoListEntry.branches:type_name -> grpc.v1.RepositoryBranch
2719 31, // 26: grpc.v1.Stats.duration:type_name -> google.protobuf.Duration
2720 31, // 27: grpc.v1.Stats.wait:type_name -> google.protobuf.Duration
2721 0, // 28: grpc.v1.Stats.flush_reason:type_name -> grpc.v1.FlushReason
2722 17, // 29: grpc.v1.FileMatch.line_matches:type_name -> grpc.v1.LineMatch
2723 20, // 30: grpc.v1.FileMatch.chunk_matches:type_name -> grpc.v1.ChunkMatch
2724 18, // 31: grpc.v1.LineMatch.line_fragments:type_name -> grpc.v1.LineFragmentMatch
2725 19, // 32: grpc.v1.LineFragmentMatch.symbol_info:type_name -> grpc.v1.SymbolInfo
2726 22, // 33: grpc.v1.ChunkMatch.content_start:type_name -> grpc.v1.Location
2727 21, // 34: grpc.v1.ChunkMatch.ranges:type_name -> grpc.v1.Range
2728 19, // 35: grpc.v1.ChunkMatch.symbol_info:type_name -> grpc.v1.SymbolInfo
2729 22, // 36: grpc.v1.Range.start:type_name -> grpc.v1.Location
2730 22, // 37: grpc.v1.Range.end:type_name -> grpc.v1.Location
2731 11, // 38: grpc.v1.ListResponse.ReposMapEntry.value:type_name -> grpc.v1.MinimalRepoListEntry
2732 11, // 39: grpc.v1.ListResponse.MinimalEntry.value:type_name -> grpc.v1.MinimalRepoListEntry
2733 9, // 40: grpc.v1.Repository.SubRepoMapEntry.value:type_name -> grpc.v1.Repository
2734 2, // 41: grpc.v1.WebserverService.Search:input_type -> grpc.v1.SearchRequest
2735 2, // 42: grpc.v1.WebserverService.StreamSearch:input_type -> grpc.v1.SearchRequest
2736 5, // 43: grpc.v1.WebserverService.List:input_type -> grpc.v1.ListRequest
2737 3, // 44: grpc.v1.WebserverService.Search:output_type -> grpc.v1.SearchResponse
2738 3, // 45: grpc.v1.WebserverService.StreamSearch:output_type -> grpc.v1.SearchResponse
2739 7, // 46: grpc.v1.WebserverService.List:output_type -> grpc.v1.ListResponse
2740 44, // [44:47] is the sub-list for method output_type
2741 41, // [41:44] is the sub-list for method input_type
2742 41, // [41:41] is the sub-list for extension type_name
2743 41, // [41:41] is the sub-list for extension extendee
2744 0, // [0:41] is the sub-list for field type_name
2745}
2746
2747func init() { file_webserver_proto_init() }
2748func file_webserver_proto_init() {
2749 if File_webserver_proto != nil {
2750 return
2751 }
2752 file_query_proto_init()
2753 if !protoimpl.UnsafeEnabled {
2754 file_webserver_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
2755 switch v := v.(*SearchRequest); i {
2756 case 0:
2757 return &v.state
2758 case 1:
2759 return &v.sizeCache
2760 case 2:
2761 return &v.unknownFields
2762 default:
2763 return nil
2764 }
2765 }
2766 file_webserver_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
2767 switch v := v.(*SearchResponse); i {
2768 case 0:
2769 return &v.state
2770 case 1:
2771 return &v.sizeCache
2772 case 2:
2773 return &v.unknownFields
2774 default:
2775 return nil
2776 }
2777 }
2778 file_webserver_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
2779 switch v := v.(*SearchOptions); i {
2780 case 0:
2781 return &v.state
2782 case 1:
2783 return &v.sizeCache
2784 case 2:
2785 return &v.unknownFields
2786 default:
2787 return nil
2788 }
2789 }
2790 file_webserver_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
2791 switch v := v.(*ListRequest); i {
2792 case 0:
2793 return &v.state
2794 case 1:
2795 return &v.sizeCache
2796 case 2:
2797 return &v.unknownFields
2798 default:
2799 return nil
2800 }
2801 }
2802 file_webserver_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
2803 switch v := v.(*ListOptions); i {
2804 case 0:
2805 return &v.state
2806 case 1:
2807 return &v.sizeCache
2808 case 2:
2809 return &v.unknownFields
2810 default:
2811 return nil
2812 }
2813 }
2814 file_webserver_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
2815 switch v := v.(*ListResponse); i {
2816 case 0:
2817 return &v.state
2818 case 1:
2819 return &v.sizeCache
2820 case 2:
2821 return &v.unknownFields
2822 default:
2823 return nil
2824 }
2825 }
2826 file_webserver_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
2827 switch v := v.(*RepoListEntry); i {
2828 case 0:
2829 return &v.state
2830 case 1:
2831 return &v.sizeCache
2832 case 2:
2833 return &v.unknownFields
2834 default:
2835 return nil
2836 }
2837 }
2838 file_webserver_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
2839 switch v := v.(*Repository); i {
2840 case 0:
2841 return &v.state
2842 case 1:
2843 return &v.sizeCache
2844 case 2:
2845 return &v.unknownFields
2846 default:
2847 return nil
2848 }
2849 }
2850 file_webserver_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
2851 switch v := v.(*IndexMetadata); i {
2852 case 0:
2853 return &v.state
2854 case 1:
2855 return &v.sizeCache
2856 case 2:
2857 return &v.unknownFields
2858 default:
2859 return nil
2860 }
2861 }
2862 file_webserver_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
2863 switch v := v.(*MinimalRepoListEntry); i {
2864 case 0:
2865 return &v.state
2866 case 1:
2867 return &v.sizeCache
2868 case 2:
2869 return &v.unknownFields
2870 default:
2871 return nil
2872 }
2873 }
2874 file_webserver_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
2875 switch v := v.(*RepositoryBranch); i {
2876 case 0:
2877 return &v.state
2878 case 1:
2879 return &v.sizeCache
2880 case 2:
2881 return &v.unknownFields
2882 default:
2883 return nil
2884 }
2885 }
2886 file_webserver_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
2887 switch v := v.(*RepoStats); i {
2888 case 0:
2889 return &v.state
2890 case 1:
2891 return &v.sizeCache
2892 case 2:
2893 return &v.unknownFields
2894 default:
2895 return nil
2896 }
2897 }
2898 file_webserver_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
2899 switch v := v.(*Stats); i {
2900 case 0:
2901 return &v.state
2902 case 1:
2903 return &v.sizeCache
2904 case 2:
2905 return &v.unknownFields
2906 default:
2907 return nil
2908 }
2909 }
2910 file_webserver_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
2911 switch v := v.(*Progress); i {
2912 case 0:
2913 return &v.state
2914 case 1:
2915 return &v.sizeCache
2916 case 2:
2917 return &v.unknownFields
2918 default:
2919 return nil
2920 }
2921 }
2922 file_webserver_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
2923 switch v := v.(*FileMatch); i {
2924 case 0:
2925 return &v.state
2926 case 1:
2927 return &v.sizeCache
2928 case 2:
2929 return &v.unknownFields
2930 default:
2931 return nil
2932 }
2933 }
2934 file_webserver_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
2935 switch v := v.(*LineMatch); i {
2936 case 0:
2937 return &v.state
2938 case 1:
2939 return &v.sizeCache
2940 case 2:
2941 return &v.unknownFields
2942 default:
2943 return nil
2944 }
2945 }
2946 file_webserver_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
2947 switch v := v.(*LineFragmentMatch); i {
2948 case 0:
2949 return &v.state
2950 case 1:
2951 return &v.sizeCache
2952 case 2:
2953 return &v.unknownFields
2954 default:
2955 return nil
2956 }
2957 }
2958 file_webserver_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
2959 switch v := v.(*SymbolInfo); i {
2960 case 0:
2961 return &v.state
2962 case 1:
2963 return &v.sizeCache
2964 case 2:
2965 return &v.unknownFields
2966 default:
2967 return nil
2968 }
2969 }
2970 file_webserver_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
2971 switch v := v.(*ChunkMatch); i {
2972 case 0:
2973 return &v.state
2974 case 1:
2975 return &v.sizeCache
2976 case 2:
2977 return &v.unknownFields
2978 default:
2979 return nil
2980 }
2981 }
2982 file_webserver_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
2983 switch v := v.(*Range); i {
2984 case 0:
2985 return &v.state
2986 case 1:
2987 return &v.sizeCache
2988 case 2:
2989 return &v.unknownFields
2990 default:
2991 return nil
2992 }
2993 }
2994 file_webserver_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
2995 switch v := v.(*Location); i {
2996 case 0:
2997 return &v.state
2998 case 1:
2999 return &v.sizeCache
3000 case 2:
3001 return &v.unknownFields
3002 default:
3003 return nil
3004 }
3005 }
3006 }
3007 file_webserver_proto_msgTypes[16].OneofWrappers = []interface{}{}
3008 type x struct{}
3009 out := protoimpl.TypeBuilder{
3010 File: protoimpl.DescBuilder{
3011 GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
3012 RawDescriptor: file_webserver_proto_rawDesc,
3013 NumEnums: 2,
3014 NumMessages: 28,
3015 NumExtensions: 0,
3016 NumServices: 1,
3017 },
3018 GoTypes: file_webserver_proto_goTypes,
3019 DependencyIndexes: file_webserver_proto_depIdxs,
3020 EnumInfos: file_webserver_proto_enumTypes,
3021 MessageInfos: file_webserver_proto_msgTypes,
3022 }.Build()
3023 File_webserver_proto = out.File
3024 file_webserver_proto_rawDesc = nil
3025 file_webserver_proto_goTypes = nil
3026 file_webserver_proto_depIdxs = nil
3027}