go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/auth_service/api/rpcpb/groups.pb.go (about) 1 // Copyright 2021 The LUCI Authors. 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 // Code generated by protoc-gen-go. DO NOT EDIT. 16 // versions: 17 // protoc-gen-go v1.31.0 18 // protoc v3.21.7 19 // source: go.chromium.org/luci/auth_service/api/rpcpb/groups.proto 20 21 package rpcpb 22 23 import ( 24 _ "google.golang.org/genproto/googleapis/api/annotations" 25 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 26 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 27 emptypb "google.golang.org/protobuf/types/known/emptypb" 28 fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 29 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 30 reflect "reflect" 31 sync "sync" 32 ) 33 34 const ( 35 // Verify that this generated code is sufficiently up-to-date. 36 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 37 // Verify that runtime/protoimpl is sufficiently up-to-date. 38 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 39 ) 40 41 // PrincipalKind denotes the type of principal of a specific entity. 42 type PrincipalKind int32 43 44 const ( 45 PrincipalKind_PRINCIPAL_KIND_UNSPECIFIED PrincipalKind = 0 46 // A single individual identity, e.g. "user:someone@example.com". 47 PrincipalKind_IDENTITY PrincipalKind = 1 48 // A group name, e.g. "some-group". 49 PrincipalKind_GROUP PrincipalKind = 2 50 // An identity glob, e.g. "user*@example.com". 51 PrincipalKind_GLOB PrincipalKind = 3 52 ) 53 54 // Enum value maps for PrincipalKind. 55 var ( 56 PrincipalKind_name = map[int32]string{ 57 0: "PRINCIPAL_KIND_UNSPECIFIED", 58 1: "IDENTITY", 59 2: "GROUP", 60 3: "GLOB", 61 } 62 PrincipalKind_value = map[string]int32{ 63 "PRINCIPAL_KIND_UNSPECIFIED": 0, 64 "IDENTITY": 1, 65 "GROUP": 2, 66 "GLOB": 3, 67 } 68 ) 69 70 func (x PrincipalKind) Enum() *PrincipalKind { 71 p := new(PrincipalKind) 72 *p = x 73 return p 74 } 75 76 func (x PrincipalKind) String() string { 77 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 78 } 79 80 func (PrincipalKind) Descriptor() protoreflect.EnumDescriptor { 81 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_enumTypes[0].Descriptor() 82 } 83 84 func (PrincipalKind) Type() protoreflect.EnumType { 85 return &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_enumTypes[0] 86 } 87 88 func (x PrincipalKind) Number() protoreflect.EnumNumber { 89 return protoreflect.EnumNumber(x) 90 } 91 92 // Deprecated: Use PrincipalKind.Descriptor instead. 93 func (PrincipalKind) EnumDescriptor() ([]byte, []int) { 94 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP(), []int{0} 95 } 96 97 // ListGroupsResponse is all the groups listed in LUCI Auth Service. 98 type ListGroupsResponse struct { 99 state protoimpl.MessageState 100 sizeCache protoimpl.SizeCache 101 unknownFields protoimpl.UnknownFields 102 103 // List of all groups. In order to keep the response lightweight, each 104 // AuthGroup will contain only metadata, i.e. the membership list fields will 105 // be left empty. 106 Groups []*AuthGroup `protobuf:"bytes,1,rep,name=groups,proto3" json:"groups,omitempty"` 107 } 108 109 func (x *ListGroupsResponse) Reset() { 110 *x = ListGroupsResponse{} 111 if protoimpl.UnsafeEnabled { 112 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[0] 113 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 114 ms.StoreMessageInfo(mi) 115 } 116 } 117 118 func (x *ListGroupsResponse) String() string { 119 return protoimpl.X.MessageStringOf(x) 120 } 121 122 func (*ListGroupsResponse) ProtoMessage() {} 123 124 func (x *ListGroupsResponse) ProtoReflect() protoreflect.Message { 125 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[0] 126 if protoimpl.UnsafeEnabled && x != nil { 127 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 128 if ms.LoadMessageInfo() == nil { 129 ms.StoreMessageInfo(mi) 130 } 131 return ms 132 } 133 return mi.MessageOf(x) 134 } 135 136 // Deprecated: Use ListGroupsResponse.ProtoReflect.Descriptor instead. 137 func (*ListGroupsResponse) Descriptor() ([]byte, []int) { 138 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP(), []int{0} 139 } 140 141 func (x *ListGroupsResponse) GetGroups() []*AuthGroup { 142 if x != nil { 143 return x.Groups 144 } 145 return nil 146 } 147 148 // GetGroupRequest is to specify an individual group. 149 type GetGroupRequest struct { 150 state protoimpl.MessageState 151 sizeCache protoimpl.SizeCache 152 unknownFields protoimpl.UnknownFields 153 154 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // e.g: "administrators" 155 } 156 157 func (x *GetGroupRequest) Reset() { 158 *x = GetGroupRequest{} 159 if protoimpl.UnsafeEnabled { 160 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[1] 161 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 162 ms.StoreMessageInfo(mi) 163 } 164 } 165 166 func (x *GetGroupRequest) String() string { 167 return protoimpl.X.MessageStringOf(x) 168 } 169 170 func (*GetGroupRequest) ProtoMessage() {} 171 172 func (x *GetGroupRequest) ProtoReflect() protoreflect.Message { 173 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[1] 174 if protoimpl.UnsafeEnabled && x != nil { 175 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 176 if ms.LoadMessageInfo() == nil { 177 ms.StoreMessageInfo(mi) 178 } 179 return ms 180 } 181 return mi.MessageOf(x) 182 } 183 184 // Deprecated: Use GetGroupRequest.ProtoReflect.Descriptor instead. 185 func (*GetGroupRequest) Descriptor() ([]byte, []int) { 186 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP(), []int{1} 187 } 188 189 func (x *GetGroupRequest) GetName() string { 190 if x != nil { 191 return x.Name 192 } 193 return "" 194 } 195 196 // CreateGroupRequest requests the creation of a new group. 197 type CreateGroupRequest struct { 198 state protoimpl.MessageState 199 sizeCache protoimpl.SizeCache 200 unknownFields protoimpl.UnknownFields 201 202 // Details of the group to create. Not all fields will be written to the new 203 // group: if the request specifies fields that should be automatically 204 // generated (e.g. created/modified timestamps), these will be ignored. 205 Group *AuthGroup `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` 206 } 207 208 func (x *CreateGroupRequest) Reset() { 209 *x = CreateGroupRequest{} 210 if protoimpl.UnsafeEnabled { 211 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[2] 212 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 213 ms.StoreMessageInfo(mi) 214 } 215 } 216 217 func (x *CreateGroupRequest) String() string { 218 return protoimpl.X.MessageStringOf(x) 219 } 220 221 func (*CreateGroupRequest) ProtoMessage() {} 222 223 func (x *CreateGroupRequest) ProtoReflect() protoreflect.Message { 224 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[2] 225 if protoimpl.UnsafeEnabled && x != nil { 226 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 227 if ms.LoadMessageInfo() == nil { 228 ms.StoreMessageInfo(mi) 229 } 230 return ms 231 } 232 return mi.MessageOf(x) 233 } 234 235 // Deprecated: Use CreateGroupRequest.ProtoReflect.Descriptor instead. 236 func (*CreateGroupRequest) Descriptor() ([]byte, []int) { 237 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP(), []int{2} 238 } 239 240 func (x *CreateGroupRequest) GetGroup() *AuthGroup { 241 if x != nil { 242 return x.Group 243 } 244 return nil 245 } 246 247 // UpdateGroupRequest requests an update to an existing group. 248 type UpdateGroupRequest struct { 249 state protoimpl.MessageState 250 sizeCache protoimpl.SizeCache 251 unknownFields protoimpl.UnknownFields 252 253 // Details of the group to update. The group's 'name' field is used to 254 // identify the group to update. 255 Group *AuthGroup `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"` 256 // The list of fields to be updated. 257 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 258 } 259 260 func (x *UpdateGroupRequest) Reset() { 261 *x = UpdateGroupRequest{} 262 if protoimpl.UnsafeEnabled { 263 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[3] 264 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 265 ms.StoreMessageInfo(mi) 266 } 267 } 268 269 func (x *UpdateGroupRequest) String() string { 270 return protoimpl.X.MessageStringOf(x) 271 } 272 273 func (*UpdateGroupRequest) ProtoMessage() {} 274 275 func (x *UpdateGroupRequest) ProtoReflect() protoreflect.Message { 276 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[3] 277 if protoimpl.UnsafeEnabled && x != nil { 278 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 279 if ms.LoadMessageInfo() == nil { 280 ms.StoreMessageInfo(mi) 281 } 282 return ms 283 } 284 return mi.MessageOf(x) 285 } 286 287 // Deprecated: Use UpdateGroupRequest.ProtoReflect.Descriptor instead. 288 func (*UpdateGroupRequest) Descriptor() ([]byte, []int) { 289 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP(), []int{3} 290 } 291 292 func (x *UpdateGroupRequest) GetGroup() *AuthGroup { 293 if x != nil { 294 return x.Group 295 } 296 return nil 297 } 298 299 func (x *UpdateGroupRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 300 if x != nil { 301 return x.UpdateMask 302 } 303 return nil 304 } 305 306 // DeleteGroupRequest requests the deletion of a group. 307 type DeleteGroupRequest struct { 308 state protoimpl.MessageState 309 sizeCache protoimpl.SizeCache 310 unknownFields protoimpl.UnknownFields 311 312 // Name of the group to delete. 313 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 314 // The current etag of the group. 315 // If an etag is provided and does not match the current etag of the group, 316 // deletion will be blocked and an ABORTED error will be returned. 317 Etag string `protobuf:"bytes,2,opt,name=etag,proto3" json:"etag,omitempty"` 318 } 319 320 func (x *DeleteGroupRequest) Reset() { 321 *x = DeleteGroupRequest{} 322 if protoimpl.UnsafeEnabled { 323 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[4] 324 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 325 ms.StoreMessageInfo(mi) 326 } 327 } 328 329 func (x *DeleteGroupRequest) String() string { 330 return protoimpl.X.MessageStringOf(x) 331 } 332 333 func (*DeleteGroupRequest) ProtoMessage() {} 334 335 func (x *DeleteGroupRequest) ProtoReflect() protoreflect.Message { 336 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[4] 337 if protoimpl.UnsafeEnabled && x != nil { 338 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 339 if ms.LoadMessageInfo() == nil { 340 ms.StoreMessageInfo(mi) 341 } 342 return ms 343 } 344 return mi.MessageOf(x) 345 } 346 347 // Deprecated: Use DeleteGroupRequest.ProtoReflect.Descriptor instead. 348 func (*DeleteGroupRequest) Descriptor() ([]byte, []int) { 349 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP(), []int{4} 350 } 351 352 func (x *DeleteGroupRequest) GetName() string { 353 if x != nil { 354 return x.Name 355 } 356 return "" 357 } 358 359 func (x *DeleteGroupRequest) GetEtag() string { 360 if x != nil { 361 return x.Etag 362 } 363 return "" 364 } 365 366 // AuthGroup defines an individual group. 367 type AuthGroup struct { 368 state protoimpl.MessageState 369 sizeCache protoimpl.SizeCache 370 unknownFields protoimpl.UnknownFields 371 372 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // e.g: "auth-service-access" 373 Members []string `protobuf:"bytes,2,rep,name=members,proto3" json:"members,omitempty"` // e.g: ["user:t@example.com"] 374 Globs []string `protobuf:"bytes,3,rep,name=globs,proto3" json:"globs,omitempty"` // e.g: ["user:*@example.com" 375 Nested []string `protobuf:"bytes,4,rep,name=nested,proto3" json:"nested,omitempty"` // e.g: ["another-group-0", "another-group-1"] 376 Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"` // e.g: "This group is used for ..." 377 Owners string `protobuf:"bytes,6,opt,name=owners,proto3" json:"owners,omitempty"` // e.g: "administrators" 378 CreatedTs *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=created_ts,json=createdTs,proto3" json:"created_ts,omitempty"` // e.g: "1972-01-01T10:00:20.021Z" 379 CreatedBy string `protobuf:"bytes,8,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"` // e.g: "user:test@example.com" 380 // Output only. Whether the caller can modify this group. 381 CallerCanModify bool `protobuf:"varint,9,opt,name=caller_can_modify,json=callerCanModify,proto3" json:"caller_can_modify,omitempty"` 382 // An opaque string that indicates the version of the group being edited. 383 // This will be sent to the client in responses, and should be sent back 384 // to the server for update and delete requests in order to protect against 385 // concurrent modification errors. See https://google.aip.dev/154. 386 // Technically this is a "weak etag", meaning that if two AuthGroups have the 387 // same etag, they are not guaranteed to be byte-for-byte identical. This is 388 // because under the hood we generate it based on the last-modified time 389 // (though this should not be relied on as it may change in future). 390 Etag string `protobuf:"bytes,99,opt,name=etag,proto3" json:"etag,omitempty"` 391 } 392 393 func (x *AuthGroup) Reset() { 394 *x = AuthGroup{} 395 if protoimpl.UnsafeEnabled { 396 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[5] 397 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 398 ms.StoreMessageInfo(mi) 399 } 400 } 401 402 func (x *AuthGroup) String() string { 403 return protoimpl.X.MessageStringOf(x) 404 } 405 406 func (*AuthGroup) ProtoMessage() {} 407 408 func (x *AuthGroup) ProtoReflect() protoreflect.Message { 409 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[5] 410 if protoimpl.UnsafeEnabled && x != nil { 411 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 412 if ms.LoadMessageInfo() == nil { 413 ms.StoreMessageInfo(mi) 414 } 415 return ms 416 } 417 return mi.MessageOf(x) 418 } 419 420 // Deprecated: Use AuthGroup.ProtoReflect.Descriptor instead. 421 func (*AuthGroup) Descriptor() ([]byte, []int) { 422 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP(), []int{5} 423 } 424 425 func (x *AuthGroup) GetName() string { 426 if x != nil { 427 return x.Name 428 } 429 return "" 430 } 431 432 func (x *AuthGroup) GetMembers() []string { 433 if x != nil { 434 return x.Members 435 } 436 return nil 437 } 438 439 func (x *AuthGroup) GetGlobs() []string { 440 if x != nil { 441 return x.Globs 442 } 443 return nil 444 } 445 446 func (x *AuthGroup) GetNested() []string { 447 if x != nil { 448 return x.Nested 449 } 450 return nil 451 } 452 453 func (x *AuthGroup) GetDescription() string { 454 if x != nil { 455 return x.Description 456 } 457 return "" 458 } 459 460 func (x *AuthGroup) GetOwners() string { 461 if x != nil { 462 return x.Owners 463 } 464 return "" 465 } 466 467 func (x *AuthGroup) GetCreatedTs() *timestamppb.Timestamp { 468 if x != nil { 469 return x.CreatedTs 470 } 471 return nil 472 } 473 474 func (x *AuthGroup) GetCreatedBy() string { 475 if x != nil { 476 return x.CreatedBy 477 } 478 return "" 479 } 480 481 func (x *AuthGroup) GetCallerCanModify() bool { 482 if x != nil { 483 return x.CallerCanModify 484 } 485 return false 486 } 487 488 func (x *AuthGroup) GetEtag() string { 489 if x != nil { 490 return x.Etag 491 } 492 return "" 493 } 494 495 // GetSubgraphRequest contains the Principal that is the basis of the search 496 // for inclusion and is the root of the output subgraph. 497 type GetSubgraphRequest struct { 498 state protoimpl.MessageState 499 sizeCache protoimpl.SizeCache 500 unknownFields protoimpl.UnknownFields 501 502 Principal *Principal `protobuf:"bytes,1,opt,name=principal,proto3" json:"principal,omitempty"` 503 } 504 505 func (x *GetSubgraphRequest) Reset() { 506 *x = GetSubgraphRequest{} 507 if protoimpl.UnsafeEnabled { 508 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[6] 509 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 510 ms.StoreMessageInfo(mi) 511 } 512 } 513 514 func (x *GetSubgraphRequest) String() string { 515 return protoimpl.X.MessageStringOf(x) 516 } 517 518 func (*GetSubgraphRequest) ProtoMessage() {} 519 520 func (x *GetSubgraphRequest) ProtoReflect() protoreflect.Message { 521 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[6] 522 if protoimpl.UnsafeEnabled && x != nil { 523 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 524 if ms.LoadMessageInfo() == nil { 525 ms.StoreMessageInfo(mi) 526 } 527 return ms 528 } 529 return mi.MessageOf(x) 530 } 531 532 // Deprecated: Use GetSubgraphRequest.ProtoReflect.Descriptor instead. 533 func (*GetSubgraphRequest) Descriptor() ([]byte, []int) { 534 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP(), []int{6} 535 } 536 537 func (x *GetSubgraphRequest) GetPrincipal() *Principal { 538 if x != nil { 539 return x.Principal 540 } 541 return nil 542 } 543 544 // The Subgraph returned by GetSubgraph RPC. 545 // 546 // The node representing a principal passed to GetSubgraph is always the 547 // first in the list. 548 type Subgraph struct { 549 state protoimpl.MessageState 550 sizeCache protoimpl.SizeCache 551 unknownFields protoimpl.UnknownFields 552 553 Nodes []*Node `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"` 554 } 555 556 func (x *Subgraph) Reset() { 557 *x = Subgraph{} 558 if protoimpl.UnsafeEnabled { 559 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[7] 560 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 561 ms.StoreMessageInfo(mi) 562 } 563 } 564 565 func (x *Subgraph) String() string { 566 return protoimpl.X.MessageStringOf(x) 567 } 568 569 func (*Subgraph) ProtoMessage() {} 570 571 func (x *Subgraph) ProtoReflect() protoreflect.Message { 572 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[7] 573 if protoimpl.UnsafeEnabled && x != nil { 574 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 575 if ms.LoadMessageInfo() == nil { 576 ms.StoreMessageInfo(mi) 577 } 578 return ms 579 } 580 return mi.MessageOf(x) 581 } 582 583 // Deprecated: Use Subgraph.ProtoReflect.Descriptor instead. 584 func (*Subgraph) Descriptor() ([]byte, []int) { 585 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP(), []int{7} 586 } 587 588 func (x *Subgraph) GetNodes() []*Node { 589 if x != nil { 590 return x.Nodes 591 } 592 return nil 593 } 594 595 // Principal is an entity that can be found in the Subgraph. A Principal can 596 // represent a group, identity, or glob. See PrincipalKind for clarification on 597 // how each Principal kind is represented. 598 type Principal struct { 599 state protoimpl.MessageState 600 sizeCache protoimpl.SizeCache 601 unknownFields protoimpl.UnknownFields 602 603 Kind PrincipalKind `protobuf:"varint,1,opt,name=kind,proto3,enum=auth.service.PrincipalKind" json:"kind,omitempty"` // e.g. IDENTITY, GROUP, GLOB 604 Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` // e.g. "user*@example.com", "some-group", "user:m0@example.com" 605 } 606 607 func (x *Principal) Reset() { 608 *x = Principal{} 609 if protoimpl.UnsafeEnabled { 610 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[8] 611 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 612 ms.StoreMessageInfo(mi) 613 } 614 } 615 616 func (x *Principal) String() string { 617 return protoimpl.X.MessageStringOf(x) 618 } 619 620 func (*Principal) ProtoMessage() {} 621 622 func (x *Principal) ProtoReflect() protoreflect.Message { 623 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[8] 624 if protoimpl.UnsafeEnabled && x != nil { 625 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 626 if ms.LoadMessageInfo() == nil { 627 ms.StoreMessageInfo(mi) 628 } 629 return ms 630 } 631 return mi.MessageOf(x) 632 } 633 634 // Deprecated: Use Principal.ProtoReflect.Descriptor instead. 635 func (*Principal) Descriptor() ([]byte, []int) { 636 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP(), []int{8} 637 } 638 639 func (x *Principal) GetKind() PrincipalKind { 640 if x != nil { 641 return x.Kind 642 } 643 return PrincipalKind_PRINCIPAL_KIND_UNSPECIFIED 644 } 645 646 func (x *Principal) GetName() string { 647 if x != nil { 648 return x.Name 649 } 650 return "" 651 } 652 653 // Each Node is a representation of a Principal. 654 // Each subgraph will only contain one Node per principal; in other words, 655 // a principal uniquely identifies a Node. 656 type Node struct { 657 state protoimpl.MessageState 658 sizeCache protoimpl.SizeCache 659 unknownFields protoimpl.UnknownFields 660 661 // The principal represented by this node. 662 Principal *Principal `protobuf:"bytes,1,opt,name=principal,proto3" json:"principal,omitempty"` 663 // Nodes that directly include this principal. 664 // 665 // Each item is an index of a Node in Subgraph's `nodes` list. 666 IncludedBy []int32 `protobuf:"varint,2,rep,packed,name=included_by,json=includedBy,proto3" json:"included_by,omitempty"` 667 } 668 669 func (x *Node) Reset() { 670 *x = Node{} 671 if protoimpl.UnsafeEnabled { 672 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[9] 673 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 674 ms.StoreMessageInfo(mi) 675 } 676 } 677 678 func (x *Node) String() string { 679 return protoimpl.X.MessageStringOf(x) 680 } 681 682 func (*Node) ProtoMessage() {} 683 684 func (x *Node) ProtoReflect() protoreflect.Message { 685 mi := &file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[9] 686 if protoimpl.UnsafeEnabled && x != nil { 687 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 688 if ms.LoadMessageInfo() == nil { 689 ms.StoreMessageInfo(mi) 690 } 691 return ms 692 } 693 return mi.MessageOf(x) 694 } 695 696 // Deprecated: Use Node.ProtoReflect.Descriptor instead. 697 func (*Node) Descriptor() ([]byte, []int) { 698 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP(), []int{9} 699 } 700 701 func (x *Node) GetPrincipal() *Principal { 702 if x != nil { 703 return x.Principal 704 } 705 return nil 706 } 707 708 func (x *Node) GetIncludedBy() []int32 { 709 if x != nil { 710 return x.IncludedBy 711 } 712 return nil 713 } 714 715 var File_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto protoreflect.FileDescriptor 716 717 var file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDesc = []byte{ 718 0x0a, 0x38, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 719 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x73, 0x65, 0x72, 0x76, 720 0x69, 0x63, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x70, 0x63, 0x70, 0x62, 0x2f, 0x67, 0x72, 721 0x6f, 0x75, 0x70, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x61, 0x75, 0x74, 0x68, 722 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 723 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 724 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 725 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 726 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 727 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 728 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 729 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 730 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x45, 0x0a, 0x12, 0x4c, 0x69, 0x73, 731 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 732 0x2f, 0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 733 0x17, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 734 0x75, 0x74, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 735 0x22, 0x25, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 736 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 737 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x48, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 738 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 739 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 740 0x75, 0x74, 0x68, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 741 0x47, 0x72, 0x6f, 0x75, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 742 0x70, 0x22, 0x85, 0x01, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 743 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 744 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x73, 745 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 746 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x3b, 0x0a, 0x0b, 747 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 748 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 749 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 750 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x41, 0x0a, 0x12, 0x44, 0x65, 0x6c, 751 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 752 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 753 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 754 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x22, 0xc0, 0x02, 0x0a, 755 0x09, 0x41, 0x75, 0x74, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 756 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 757 0x0a, 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 758 0x07, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x6c, 0x6f, 0x62, 759 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x67, 0x6c, 0x6f, 0x62, 0x73, 0x12, 0x16, 760 0x0a, 0x06, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 761 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 762 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 763 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x77, 0x6e, 0x65, 764 0x72, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x73, 765 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x73, 0x18, 0x07, 766 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 767 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 768 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 769 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 770 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x2f, 0x0a, 0x11, 0x63, 0x61, 771 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x18, 772 0x09, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x63, 0x61, 0x6c, 0x6c, 773 0x65, 0x72, 0x43, 0x61, 0x6e, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x65, 774 0x74, 0x61, 0x67, 0x18, 0x63, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x22, 775 0x4b, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x75, 0x62, 0x67, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 776 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x09, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 777 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 778 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 779 0x6c, 0x52, 0x09, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x22, 0x34, 0x0a, 0x08, 780 0x53, 0x75, 0x62, 0x67, 0x72, 0x61, 0x70, 0x68, 0x12, 0x28, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 781 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x73, 782 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x6e, 0x6f, 0x64, 783 0x65, 0x73, 0x22, 0x50, 0x0a, 0x09, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x12, 784 0x2f, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 785 0x61, 0x75, 0x74, 0x68, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x50, 0x72, 0x69, 786 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 787 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 788 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x5e, 0x0a, 0x04, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x35, 0x0a, 0x09, 789 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 790 0x17, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x50, 791 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x52, 0x09, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 792 0x70, 0x61, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x5f, 793 0x62, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0a, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 794 0x65, 0x64, 0x42, 0x79, 0x2a, 0x52, 0x0a, 0x0d, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 795 0x6c, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1e, 0x0a, 0x1a, 0x50, 0x52, 0x49, 0x4e, 0x43, 0x49, 0x50, 796 0x41, 0x4c, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 797 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x44, 0x45, 0x4e, 0x54, 0x49, 0x54, 798 0x59, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x02, 0x12, 0x08, 799 0x0a, 0x04, 0x47, 0x4c, 0x4f, 0x42, 0x10, 0x03, 0x32, 0xba, 0x03, 0x0a, 0x06, 0x47, 0x72, 0x6f, 800 0x75, 0x70, 0x73, 0x12, 0x46, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 801 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 802 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x20, 0x2e, 0x61, 0x75, 0x74, 0x68, 803 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x47, 0x72, 0x6f, 804 0x75, 0x70, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x08, 0x47, 805 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1d, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x73, 806 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 807 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x73, 0x65, 808 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 809 0x48, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x20, 810 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x43, 0x72, 811 0x65, 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 812 0x1a, 0x17, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 813 0x41, 0x75, 0x74, 0x68, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x48, 0x0a, 0x0b, 0x55, 0x70, 0x64, 814 0x61, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x20, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 815 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x72, 816 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x61, 0x75, 0x74, 817 0x68, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x47, 0x72, 818 0x6f, 0x75, 0x70, 0x12, 0x47, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 819 0x75, 0x70, 0x12, 0x20, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 820 0x65, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x65, 0x71, 821 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 822 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x47, 0x0a, 0x0b, 823 0x47, 0x65, 0x74, 0x53, 0x75, 0x62, 0x67, 0x72, 0x61, 0x70, 0x68, 0x12, 0x20, 0x2e, 0x61, 0x75, 824 0x74, 0x68, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x75, 825 0x62, 0x67, 0x72, 0x61, 0x70, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 826 0x61, 0x75, 0x74, 0x68, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x53, 0x75, 0x62, 827 0x67, 0x72, 0x61, 0x70, 0x68, 0x42, 0x2d, 0x5a, 0x2b, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 828 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x61, 0x75, 829 0x74, 0x68, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 830 0x70, 0x63, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 831 } 832 833 var ( 834 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescOnce sync.Once 835 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescData = file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDesc 836 ) 837 838 func file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescGZIP() []byte { 839 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescOnce.Do(func() { 840 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescData) 841 }) 842 return file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDescData 843 } 844 845 var file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_enumTypes = make([]protoimpl.EnumInfo, 1) 846 var file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes = make([]protoimpl.MessageInfo, 10) 847 var file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_goTypes = []interface{}{ 848 (PrincipalKind)(0), // 0: auth.service.PrincipalKind 849 (*ListGroupsResponse)(nil), // 1: auth.service.ListGroupsResponse 850 (*GetGroupRequest)(nil), // 2: auth.service.GetGroupRequest 851 (*CreateGroupRequest)(nil), // 3: auth.service.CreateGroupRequest 852 (*UpdateGroupRequest)(nil), // 4: auth.service.UpdateGroupRequest 853 (*DeleteGroupRequest)(nil), // 5: auth.service.DeleteGroupRequest 854 (*AuthGroup)(nil), // 6: auth.service.AuthGroup 855 (*GetSubgraphRequest)(nil), // 7: auth.service.GetSubgraphRequest 856 (*Subgraph)(nil), // 8: auth.service.Subgraph 857 (*Principal)(nil), // 9: auth.service.Principal 858 (*Node)(nil), // 10: auth.service.Node 859 (*fieldmaskpb.FieldMask)(nil), // 11: google.protobuf.FieldMask 860 (*timestamppb.Timestamp)(nil), // 12: google.protobuf.Timestamp 861 (*emptypb.Empty)(nil), // 13: google.protobuf.Empty 862 } 863 var file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_depIdxs = []int32{ 864 6, // 0: auth.service.ListGroupsResponse.groups:type_name -> auth.service.AuthGroup 865 6, // 1: auth.service.CreateGroupRequest.group:type_name -> auth.service.AuthGroup 866 6, // 2: auth.service.UpdateGroupRequest.group:type_name -> auth.service.AuthGroup 867 11, // 3: auth.service.UpdateGroupRequest.update_mask:type_name -> google.protobuf.FieldMask 868 12, // 4: auth.service.AuthGroup.created_ts:type_name -> google.protobuf.Timestamp 869 9, // 5: auth.service.GetSubgraphRequest.principal:type_name -> auth.service.Principal 870 10, // 6: auth.service.Subgraph.nodes:type_name -> auth.service.Node 871 0, // 7: auth.service.Principal.kind:type_name -> auth.service.PrincipalKind 872 9, // 8: auth.service.Node.principal:type_name -> auth.service.Principal 873 13, // 9: auth.service.Groups.ListGroups:input_type -> google.protobuf.Empty 874 2, // 10: auth.service.Groups.GetGroup:input_type -> auth.service.GetGroupRequest 875 3, // 11: auth.service.Groups.CreateGroup:input_type -> auth.service.CreateGroupRequest 876 4, // 12: auth.service.Groups.UpdateGroup:input_type -> auth.service.UpdateGroupRequest 877 5, // 13: auth.service.Groups.DeleteGroup:input_type -> auth.service.DeleteGroupRequest 878 7, // 14: auth.service.Groups.GetSubgraph:input_type -> auth.service.GetSubgraphRequest 879 1, // 15: auth.service.Groups.ListGroups:output_type -> auth.service.ListGroupsResponse 880 6, // 16: auth.service.Groups.GetGroup:output_type -> auth.service.AuthGroup 881 6, // 17: auth.service.Groups.CreateGroup:output_type -> auth.service.AuthGroup 882 6, // 18: auth.service.Groups.UpdateGroup:output_type -> auth.service.AuthGroup 883 13, // 19: auth.service.Groups.DeleteGroup:output_type -> google.protobuf.Empty 884 8, // 20: auth.service.Groups.GetSubgraph:output_type -> auth.service.Subgraph 885 15, // [15:21] is the sub-list for method output_type 886 9, // [9:15] is the sub-list for method input_type 887 9, // [9:9] is the sub-list for extension type_name 888 9, // [9:9] is the sub-list for extension extendee 889 0, // [0:9] is the sub-list for field type_name 890 } 891 892 func init() { file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_init() } 893 func file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_init() { 894 if File_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto != nil { 895 return 896 } 897 if !protoimpl.UnsafeEnabled { 898 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 899 switch v := v.(*ListGroupsResponse); i { 900 case 0: 901 return &v.state 902 case 1: 903 return &v.sizeCache 904 case 2: 905 return &v.unknownFields 906 default: 907 return nil 908 } 909 } 910 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 911 switch v := v.(*GetGroupRequest); i { 912 case 0: 913 return &v.state 914 case 1: 915 return &v.sizeCache 916 case 2: 917 return &v.unknownFields 918 default: 919 return nil 920 } 921 } 922 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 923 switch v := v.(*CreateGroupRequest); i { 924 case 0: 925 return &v.state 926 case 1: 927 return &v.sizeCache 928 case 2: 929 return &v.unknownFields 930 default: 931 return nil 932 } 933 } 934 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 935 switch v := v.(*UpdateGroupRequest); i { 936 case 0: 937 return &v.state 938 case 1: 939 return &v.sizeCache 940 case 2: 941 return &v.unknownFields 942 default: 943 return nil 944 } 945 } 946 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 947 switch v := v.(*DeleteGroupRequest); i { 948 case 0: 949 return &v.state 950 case 1: 951 return &v.sizeCache 952 case 2: 953 return &v.unknownFields 954 default: 955 return nil 956 } 957 } 958 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 959 switch v := v.(*AuthGroup); i { 960 case 0: 961 return &v.state 962 case 1: 963 return &v.sizeCache 964 case 2: 965 return &v.unknownFields 966 default: 967 return nil 968 } 969 } 970 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 971 switch v := v.(*GetSubgraphRequest); i { 972 case 0: 973 return &v.state 974 case 1: 975 return &v.sizeCache 976 case 2: 977 return &v.unknownFields 978 default: 979 return nil 980 } 981 } 982 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 983 switch v := v.(*Subgraph); i { 984 case 0: 985 return &v.state 986 case 1: 987 return &v.sizeCache 988 case 2: 989 return &v.unknownFields 990 default: 991 return nil 992 } 993 } 994 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 995 switch v := v.(*Principal); i { 996 case 0: 997 return &v.state 998 case 1: 999 return &v.sizeCache 1000 case 2: 1001 return &v.unknownFields 1002 default: 1003 return nil 1004 } 1005 } 1006 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 1007 switch v := v.(*Node); i { 1008 case 0: 1009 return &v.state 1010 case 1: 1011 return &v.sizeCache 1012 case 2: 1013 return &v.unknownFields 1014 default: 1015 return nil 1016 } 1017 } 1018 } 1019 type x struct{} 1020 out := protoimpl.TypeBuilder{ 1021 File: protoimpl.DescBuilder{ 1022 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 1023 RawDescriptor: file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDesc, 1024 NumEnums: 1, 1025 NumMessages: 10, 1026 NumExtensions: 0, 1027 NumServices: 1, 1028 }, 1029 GoTypes: file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_goTypes, 1030 DependencyIndexes: file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_depIdxs, 1031 EnumInfos: file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_enumTypes, 1032 MessageInfos: file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_msgTypes, 1033 }.Build() 1034 File_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto = out.File 1035 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_rawDesc = nil 1036 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_goTypes = nil 1037 file_go_chromium_org_luci_auth_service_api_rpcpb_groups_proto_depIdxs = nil 1038 }