github.com/cloudwan/edgelq-sdk@v1.15.4/iam/resources/v1/project_invitation/project_invitation.pb.fieldpath.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/iam/proto/v1/project_invitation.proto 3 // DO NOT EDIT!!! 4 5 package project_invitation 6 7 import ( 8 "encoding/json" 9 "fmt" 10 "reflect" 11 "strings" 12 "time" 13 14 "google.golang.org/grpc/codes" 15 "google.golang.org/grpc/status" 16 "google.golang.org/protobuf/encoding/protojson" 17 "google.golang.org/protobuf/proto" 18 "google.golang.org/protobuf/reflect/protoregistry" 19 20 gotenobject "github.com/cloudwan/goten-sdk/runtime/object" 21 "github.com/cloudwan/goten-sdk/runtime/strcase" 22 ) 23 24 // proto imports 25 import ( 26 iam_invitation "github.com/cloudwan/edgelq-sdk/iam/resources/v1/invitation" 27 project "github.com/cloudwan/edgelq-sdk/iam/resources/v1/project" 28 meta "github.com/cloudwan/goten-sdk/types/meta" 29 ) 30 31 // ensure the imports are used 32 var ( 33 _ = new(json.Marshaler) 34 _ = new(fmt.Stringer) 35 _ = reflect.DeepEqual 36 _ = strings.Builder{} 37 _ = time.Second 38 39 _ = strcase.ToLowerCamel 40 _ = codes.NotFound 41 _ = status.Status{} 42 _ = protojson.UnmarshalOptions{} 43 _ = new(proto.Message) 44 _ = protoregistry.GlobalTypes 45 46 _ = new(gotenobject.FieldPath) 47 ) 48 49 // make sure we're using proto imports 50 var ( 51 _ = &iam_invitation.Actor{} 52 _ = &project.Project{} 53 _ = &meta.Meta{} 54 ) 55 56 // FieldPath provides implementation to handle 57 // https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto 58 type ProjectInvitation_FieldPath interface { 59 gotenobject.FieldPath 60 Selector() ProjectInvitation_FieldPathSelector 61 Get(source *ProjectInvitation) []interface{} 62 GetSingle(source *ProjectInvitation) (interface{}, bool) 63 ClearValue(item *ProjectInvitation) 64 65 // Those methods build corresponding ProjectInvitation_FieldPathValue 66 // (or array of values) and holds passed value. Panics if injected type is incorrect. 67 WithIValue(value interface{}) ProjectInvitation_FieldPathValue 68 WithIArrayOfValues(values interface{}) ProjectInvitation_FieldPathArrayOfValues 69 WithIArrayItemValue(value interface{}) ProjectInvitation_FieldPathArrayItemValue 70 } 71 72 type ProjectInvitation_FieldPathSelector int32 73 74 const ( 75 ProjectInvitation_FieldPathSelectorName ProjectInvitation_FieldPathSelector = 0 76 ProjectInvitation_FieldPathSelectorMetadata ProjectInvitation_FieldPathSelector = 1 77 ProjectInvitation_FieldPathSelectorProjectDisplayName ProjectInvitation_FieldPathSelector = 2 78 ProjectInvitation_FieldPathSelectorInvitation ProjectInvitation_FieldPathSelector = 3 79 ) 80 81 func (s ProjectInvitation_FieldPathSelector) String() string { 82 switch s { 83 case ProjectInvitation_FieldPathSelectorName: 84 return "name" 85 case ProjectInvitation_FieldPathSelectorMetadata: 86 return "metadata" 87 case ProjectInvitation_FieldPathSelectorProjectDisplayName: 88 return "project_display_name" 89 case ProjectInvitation_FieldPathSelectorInvitation: 90 return "invitation" 91 default: 92 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", s)) 93 } 94 } 95 96 func BuildProjectInvitation_FieldPath(fp gotenobject.RawFieldPath) (ProjectInvitation_FieldPath, error) { 97 if len(fp) == 0 { 98 return nil, status.Error(codes.InvalidArgument, "empty field path for object ProjectInvitation") 99 } 100 if len(fp) == 1 { 101 switch fp[0] { 102 case "name": 103 return &ProjectInvitation_FieldTerminalPath{selector: ProjectInvitation_FieldPathSelectorName}, nil 104 case "metadata": 105 return &ProjectInvitation_FieldTerminalPath{selector: ProjectInvitation_FieldPathSelectorMetadata}, nil 106 case "project_display_name", "projectDisplayName", "project-display-name": 107 return &ProjectInvitation_FieldTerminalPath{selector: ProjectInvitation_FieldPathSelectorProjectDisplayName}, nil 108 case "invitation": 109 return &ProjectInvitation_FieldTerminalPath{selector: ProjectInvitation_FieldPathSelectorInvitation}, nil 110 } 111 } else { 112 switch fp[0] { 113 case "metadata": 114 if subpath, err := meta.BuildMeta_FieldPath(fp[1:]); err != nil { 115 return nil, err 116 } else { 117 return &ProjectInvitation_FieldSubPath{selector: ProjectInvitation_FieldPathSelectorMetadata, subPath: subpath}, nil 118 } 119 case "invitation": 120 if subpath, err := iam_invitation.BuildInvitation_FieldPath(fp[1:]); err != nil { 121 return nil, err 122 } else { 123 return &ProjectInvitation_FieldSubPath{selector: ProjectInvitation_FieldPathSelectorInvitation, subPath: subpath}, nil 124 } 125 } 126 } 127 return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object ProjectInvitation", fp) 128 } 129 130 func ParseProjectInvitation_FieldPath(rawField string) (ProjectInvitation_FieldPath, error) { 131 fp, err := gotenobject.ParseRawFieldPath(rawField) 132 if err != nil { 133 return nil, err 134 } 135 return BuildProjectInvitation_FieldPath(fp) 136 } 137 138 func MustParseProjectInvitation_FieldPath(rawField string) ProjectInvitation_FieldPath { 139 fp, err := ParseProjectInvitation_FieldPath(rawField) 140 if err != nil { 141 panic(err) 142 } 143 return fp 144 } 145 146 type ProjectInvitation_FieldTerminalPath struct { 147 selector ProjectInvitation_FieldPathSelector 148 } 149 150 var _ ProjectInvitation_FieldPath = (*ProjectInvitation_FieldTerminalPath)(nil) 151 152 func (fp *ProjectInvitation_FieldTerminalPath) Selector() ProjectInvitation_FieldPathSelector { 153 return fp.selector 154 } 155 156 // String returns path representation in proto convention 157 func (fp *ProjectInvitation_FieldTerminalPath) String() string { 158 return fp.selector.String() 159 } 160 161 // JSONString returns path representation is JSON convention 162 func (fp *ProjectInvitation_FieldTerminalPath) JSONString() string { 163 return strcase.ToLowerCamel(fp.String()) 164 } 165 166 // Get returns all values pointed by specific field from source ProjectInvitation 167 func (fp *ProjectInvitation_FieldTerminalPath) Get(source *ProjectInvitation) (values []interface{}) { 168 if source != nil { 169 switch fp.selector { 170 case ProjectInvitation_FieldPathSelectorName: 171 if source.Name != nil { 172 values = append(values, source.Name) 173 } 174 case ProjectInvitation_FieldPathSelectorMetadata: 175 if source.Metadata != nil { 176 values = append(values, source.Metadata) 177 } 178 case ProjectInvitation_FieldPathSelectorProjectDisplayName: 179 values = append(values, source.ProjectDisplayName) 180 case ProjectInvitation_FieldPathSelectorInvitation: 181 if source.Invitation != nil { 182 values = append(values, source.Invitation) 183 } 184 default: 185 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fp.selector)) 186 } 187 } 188 return 189 } 190 191 func (fp *ProjectInvitation_FieldTerminalPath) GetRaw(source proto.Message) []interface{} { 192 return fp.Get(source.(*ProjectInvitation)) 193 } 194 195 // GetSingle returns value pointed by specific field of from source ProjectInvitation 196 func (fp *ProjectInvitation_FieldTerminalPath) GetSingle(source *ProjectInvitation) (interface{}, bool) { 197 switch fp.selector { 198 case ProjectInvitation_FieldPathSelectorName: 199 res := source.GetName() 200 return res, res != nil 201 case ProjectInvitation_FieldPathSelectorMetadata: 202 res := source.GetMetadata() 203 return res, res != nil 204 case ProjectInvitation_FieldPathSelectorProjectDisplayName: 205 return source.GetProjectDisplayName(), source != nil 206 case ProjectInvitation_FieldPathSelectorInvitation: 207 res := source.GetInvitation() 208 return res, res != nil 209 default: 210 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fp.selector)) 211 } 212 } 213 214 func (fp *ProjectInvitation_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 215 return fp.GetSingle(source.(*ProjectInvitation)) 216 } 217 218 // GetDefault returns a default value of the field type 219 func (fp *ProjectInvitation_FieldTerminalPath) GetDefault() interface{} { 220 switch fp.selector { 221 case ProjectInvitation_FieldPathSelectorName: 222 return (*Name)(nil) 223 case ProjectInvitation_FieldPathSelectorMetadata: 224 return (*meta.Meta)(nil) 225 case ProjectInvitation_FieldPathSelectorProjectDisplayName: 226 return "" 227 case ProjectInvitation_FieldPathSelectorInvitation: 228 return (*iam_invitation.Invitation)(nil) 229 default: 230 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fp.selector)) 231 } 232 } 233 234 func (fp *ProjectInvitation_FieldTerminalPath) ClearValue(item *ProjectInvitation) { 235 if item != nil { 236 switch fp.selector { 237 case ProjectInvitation_FieldPathSelectorName: 238 item.Name = nil 239 case ProjectInvitation_FieldPathSelectorMetadata: 240 item.Metadata = nil 241 case ProjectInvitation_FieldPathSelectorProjectDisplayName: 242 item.ProjectDisplayName = "" 243 case ProjectInvitation_FieldPathSelectorInvitation: 244 item.Invitation = nil 245 default: 246 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fp.selector)) 247 } 248 } 249 } 250 251 func (fp *ProjectInvitation_FieldTerminalPath) ClearValueRaw(item proto.Message) { 252 fp.ClearValue(item.(*ProjectInvitation)) 253 } 254 255 // IsLeaf - whether field path is holds simple value 256 func (fp *ProjectInvitation_FieldTerminalPath) IsLeaf() bool { 257 return fp.selector == ProjectInvitation_FieldPathSelectorName || 258 fp.selector == ProjectInvitation_FieldPathSelectorProjectDisplayName 259 } 260 261 func (fp *ProjectInvitation_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 262 return []gotenobject.FieldPath{fp} 263 } 264 265 func (fp *ProjectInvitation_FieldTerminalPath) WithIValue(value interface{}) ProjectInvitation_FieldPathValue { 266 switch fp.selector { 267 case ProjectInvitation_FieldPathSelectorName: 268 return &ProjectInvitation_FieldTerminalPathValue{ProjectInvitation_FieldTerminalPath: *fp, value: value.(*Name)} 269 case ProjectInvitation_FieldPathSelectorMetadata: 270 return &ProjectInvitation_FieldTerminalPathValue{ProjectInvitation_FieldTerminalPath: *fp, value: value.(*meta.Meta)} 271 case ProjectInvitation_FieldPathSelectorProjectDisplayName: 272 return &ProjectInvitation_FieldTerminalPathValue{ProjectInvitation_FieldTerminalPath: *fp, value: value.(string)} 273 case ProjectInvitation_FieldPathSelectorInvitation: 274 return &ProjectInvitation_FieldTerminalPathValue{ProjectInvitation_FieldTerminalPath: *fp, value: value.(*iam_invitation.Invitation)} 275 default: 276 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fp.selector)) 277 } 278 } 279 280 func (fp *ProjectInvitation_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 281 return fp.WithIValue(value) 282 } 283 284 func (fp *ProjectInvitation_FieldTerminalPath) WithIArrayOfValues(values interface{}) ProjectInvitation_FieldPathArrayOfValues { 285 fpaov := &ProjectInvitation_FieldTerminalPathArrayOfValues{ProjectInvitation_FieldTerminalPath: *fp} 286 switch fp.selector { 287 case ProjectInvitation_FieldPathSelectorName: 288 return &ProjectInvitation_FieldTerminalPathArrayOfValues{ProjectInvitation_FieldTerminalPath: *fp, values: values.([]*Name)} 289 case ProjectInvitation_FieldPathSelectorMetadata: 290 return &ProjectInvitation_FieldTerminalPathArrayOfValues{ProjectInvitation_FieldTerminalPath: *fp, values: values.([]*meta.Meta)} 291 case ProjectInvitation_FieldPathSelectorProjectDisplayName: 292 return &ProjectInvitation_FieldTerminalPathArrayOfValues{ProjectInvitation_FieldTerminalPath: *fp, values: values.([]string)} 293 case ProjectInvitation_FieldPathSelectorInvitation: 294 return &ProjectInvitation_FieldTerminalPathArrayOfValues{ProjectInvitation_FieldTerminalPath: *fp, values: values.([]*iam_invitation.Invitation)} 295 default: 296 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fp.selector)) 297 } 298 return fpaov 299 } 300 301 func (fp *ProjectInvitation_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 302 return fp.WithIArrayOfValues(values) 303 } 304 305 func (fp *ProjectInvitation_FieldTerminalPath) WithIArrayItemValue(value interface{}) ProjectInvitation_FieldPathArrayItemValue { 306 switch fp.selector { 307 default: 308 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fp.selector)) 309 } 310 } 311 312 func (fp *ProjectInvitation_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 313 return fp.WithIArrayItemValue(value) 314 } 315 316 type ProjectInvitation_FieldSubPath struct { 317 selector ProjectInvitation_FieldPathSelector 318 subPath gotenobject.FieldPath 319 } 320 321 var _ ProjectInvitation_FieldPath = (*ProjectInvitation_FieldSubPath)(nil) 322 323 func (fps *ProjectInvitation_FieldSubPath) Selector() ProjectInvitation_FieldPathSelector { 324 return fps.selector 325 } 326 func (fps *ProjectInvitation_FieldSubPath) AsMetadataSubPath() (meta.Meta_FieldPath, bool) { 327 res, ok := fps.subPath.(meta.Meta_FieldPath) 328 return res, ok 329 } 330 func (fps *ProjectInvitation_FieldSubPath) AsInvitationSubPath() (iam_invitation.Invitation_FieldPath, bool) { 331 res, ok := fps.subPath.(iam_invitation.Invitation_FieldPath) 332 return res, ok 333 } 334 335 // String returns path representation in proto convention 336 func (fps *ProjectInvitation_FieldSubPath) String() string { 337 return fps.selector.String() + "." + fps.subPath.String() 338 } 339 340 // JSONString returns path representation is JSON convention 341 func (fps *ProjectInvitation_FieldSubPath) JSONString() string { 342 return strcase.ToLowerCamel(fps.selector.String()) + "." + fps.subPath.JSONString() 343 } 344 345 // Get returns all values pointed by selected field from source ProjectInvitation 346 func (fps *ProjectInvitation_FieldSubPath) Get(source *ProjectInvitation) (values []interface{}) { 347 switch fps.selector { 348 case ProjectInvitation_FieldPathSelectorMetadata: 349 values = append(values, fps.subPath.GetRaw(source.GetMetadata())...) 350 case ProjectInvitation_FieldPathSelectorInvitation: 351 values = append(values, fps.subPath.GetRaw(source.GetInvitation())...) 352 default: 353 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fps.selector)) 354 } 355 return 356 } 357 358 func (fps *ProjectInvitation_FieldSubPath) GetRaw(source proto.Message) []interface{} { 359 return fps.Get(source.(*ProjectInvitation)) 360 } 361 362 // GetSingle returns value of selected field from source ProjectInvitation 363 func (fps *ProjectInvitation_FieldSubPath) GetSingle(source *ProjectInvitation) (interface{}, bool) { 364 switch fps.selector { 365 case ProjectInvitation_FieldPathSelectorMetadata: 366 if source.GetMetadata() == nil { 367 return nil, false 368 } 369 return fps.subPath.GetSingleRaw(source.GetMetadata()) 370 case ProjectInvitation_FieldPathSelectorInvitation: 371 if source.GetInvitation() == nil { 372 return nil, false 373 } 374 return fps.subPath.GetSingleRaw(source.GetInvitation()) 375 default: 376 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fps.selector)) 377 } 378 } 379 380 func (fps *ProjectInvitation_FieldSubPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 381 return fps.GetSingle(source.(*ProjectInvitation)) 382 } 383 384 // GetDefault returns a default value of the field type 385 func (fps *ProjectInvitation_FieldSubPath) GetDefault() interface{} { 386 return fps.subPath.GetDefault() 387 } 388 389 func (fps *ProjectInvitation_FieldSubPath) ClearValue(item *ProjectInvitation) { 390 if item != nil { 391 switch fps.selector { 392 case ProjectInvitation_FieldPathSelectorMetadata: 393 fps.subPath.ClearValueRaw(item.Metadata) 394 case ProjectInvitation_FieldPathSelectorInvitation: 395 fps.subPath.ClearValueRaw(item.Invitation) 396 default: 397 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fps.selector)) 398 } 399 } 400 } 401 402 func (fps *ProjectInvitation_FieldSubPath) ClearValueRaw(item proto.Message) { 403 fps.ClearValue(item.(*ProjectInvitation)) 404 } 405 406 // IsLeaf - whether field path is holds simple value 407 func (fps *ProjectInvitation_FieldSubPath) IsLeaf() bool { 408 return fps.subPath.IsLeaf() 409 } 410 411 func (fps *ProjectInvitation_FieldSubPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 412 iPaths := []gotenobject.FieldPath{&ProjectInvitation_FieldTerminalPath{selector: fps.selector}} 413 iPaths = append(iPaths, fps.subPath.SplitIntoTerminalIPaths()...) 414 return iPaths 415 } 416 417 func (fps *ProjectInvitation_FieldSubPath) WithIValue(value interface{}) ProjectInvitation_FieldPathValue { 418 return &ProjectInvitation_FieldSubPathValue{fps, fps.subPath.WithRawIValue(value)} 419 } 420 421 func (fps *ProjectInvitation_FieldSubPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 422 return fps.WithIValue(value) 423 } 424 425 func (fps *ProjectInvitation_FieldSubPath) WithIArrayOfValues(values interface{}) ProjectInvitation_FieldPathArrayOfValues { 426 return &ProjectInvitation_FieldSubPathArrayOfValues{fps, fps.subPath.WithRawIArrayOfValues(values)} 427 } 428 429 func (fps *ProjectInvitation_FieldSubPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 430 return fps.WithIArrayOfValues(values) 431 } 432 433 func (fps *ProjectInvitation_FieldSubPath) WithIArrayItemValue(value interface{}) ProjectInvitation_FieldPathArrayItemValue { 434 return &ProjectInvitation_FieldSubPathArrayItemValue{fps, fps.subPath.WithRawIArrayItemValue(value)} 435 } 436 437 func (fps *ProjectInvitation_FieldSubPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 438 return fps.WithIArrayItemValue(value) 439 } 440 441 // ProjectInvitation_FieldPathValue allows storing values for ProjectInvitation fields according to their type 442 type ProjectInvitation_FieldPathValue interface { 443 ProjectInvitation_FieldPath 444 gotenobject.FieldPathValue 445 SetTo(target **ProjectInvitation) 446 CompareWith(*ProjectInvitation) (cmp int, comparable bool) 447 } 448 449 func ParseProjectInvitation_FieldPathValue(pathStr, valueStr string) (ProjectInvitation_FieldPathValue, error) { 450 fp, err := ParseProjectInvitation_FieldPath(pathStr) 451 if err != nil { 452 return nil, err 453 } 454 fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr) 455 if err != nil { 456 return nil, status.Errorf(codes.InvalidArgument, "error parsing ProjectInvitation field path value from %s: %v", valueStr, err) 457 } 458 return fpv.(ProjectInvitation_FieldPathValue), nil 459 } 460 461 func MustParseProjectInvitation_FieldPathValue(pathStr, valueStr string) ProjectInvitation_FieldPathValue { 462 fpv, err := ParseProjectInvitation_FieldPathValue(pathStr, valueStr) 463 if err != nil { 464 panic(err) 465 } 466 return fpv 467 } 468 469 type ProjectInvitation_FieldTerminalPathValue struct { 470 ProjectInvitation_FieldTerminalPath 471 value interface{} 472 } 473 474 var _ ProjectInvitation_FieldPathValue = (*ProjectInvitation_FieldTerminalPathValue)(nil) 475 476 // GetRawValue returns raw value stored under selected path for 'ProjectInvitation' as interface{} 477 func (fpv *ProjectInvitation_FieldTerminalPathValue) GetRawValue() interface{} { 478 return fpv.value 479 } 480 func (fpv *ProjectInvitation_FieldTerminalPathValue) AsNameValue() (*Name, bool) { 481 res, ok := fpv.value.(*Name) 482 return res, ok 483 } 484 func (fpv *ProjectInvitation_FieldTerminalPathValue) AsMetadataValue() (*meta.Meta, bool) { 485 res, ok := fpv.value.(*meta.Meta) 486 return res, ok 487 } 488 func (fpv *ProjectInvitation_FieldTerminalPathValue) AsProjectDisplayNameValue() (string, bool) { 489 res, ok := fpv.value.(string) 490 return res, ok 491 } 492 func (fpv *ProjectInvitation_FieldTerminalPathValue) AsInvitationValue() (*iam_invitation.Invitation, bool) { 493 res, ok := fpv.value.(*iam_invitation.Invitation) 494 return res, ok 495 } 496 497 // SetTo stores value for selected field for object ProjectInvitation 498 func (fpv *ProjectInvitation_FieldTerminalPathValue) SetTo(target **ProjectInvitation) { 499 if *target == nil { 500 *target = new(ProjectInvitation) 501 } 502 switch fpv.selector { 503 case ProjectInvitation_FieldPathSelectorName: 504 (*target).Name = fpv.value.(*Name) 505 case ProjectInvitation_FieldPathSelectorMetadata: 506 (*target).Metadata = fpv.value.(*meta.Meta) 507 case ProjectInvitation_FieldPathSelectorProjectDisplayName: 508 (*target).ProjectDisplayName = fpv.value.(string) 509 case ProjectInvitation_FieldPathSelectorInvitation: 510 (*target).Invitation = fpv.value.(*iam_invitation.Invitation) 511 default: 512 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fpv.selector)) 513 } 514 } 515 516 func (fpv *ProjectInvitation_FieldTerminalPathValue) SetToRaw(target proto.Message) { 517 typedObject := target.(*ProjectInvitation) 518 fpv.SetTo(&typedObject) 519 } 520 521 // CompareWith compares value in the 'ProjectInvitation_FieldTerminalPathValue' with the value under path in 'ProjectInvitation'. 522 func (fpv *ProjectInvitation_FieldTerminalPathValue) CompareWith(source *ProjectInvitation) (int, bool) { 523 switch fpv.selector { 524 case ProjectInvitation_FieldPathSelectorName: 525 leftValue := fpv.value.(*Name) 526 rightValue := source.GetName() 527 if leftValue == nil { 528 if rightValue != nil { 529 return -1, true 530 } 531 return 0, true 532 } 533 if rightValue == nil { 534 return 1, true 535 } 536 if leftValue.String() == rightValue.String() { 537 return 0, true 538 } else if leftValue.String() < rightValue.String() { 539 return -1, true 540 } else { 541 return 1, true 542 } 543 case ProjectInvitation_FieldPathSelectorMetadata: 544 return 0, false 545 case ProjectInvitation_FieldPathSelectorProjectDisplayName: 546 leftValue := fpv.value.(string) 547 rightValue := source.GetProjectDisplayName() 548 if (leftValue) == (rightValue) { 549 return 0, true 550 } else if (leftValue) < (rightValue) { 551 return -1, true 552 } else { 553 return 1, true 554 } 555 case ProjectInvitation_FieldPathSelectorInvitation: 556 return 0, false 557 default: 558 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fpv.selector)) 559 } 560 } 561 562 func (fpv *ProjectInvitation_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) { 563 return fpv.CompareWith(source.(*ProjectInvitation)) 564 } 565 566 type ProjectInvitation_FieldSubPathValue struct { 567 ProjectInvitation_FieldPath 568 subPathValue gotenobject.FieldPathValue 569 } 570 571 var _ ProjectInvitation_FieldPathValue = (*ProjectInvitation_FieldSubPathValue)(nil) 572 573 func (fpvs *ProjectInvitation_FieldSubPathValue) AsMetadataPathValue() (meta.Meta_FieldPathValue, bool) { 574 res, ok := fpvs.subPathValue.(meta.Meta_FieldPathValue) 575 return res, ok 576 } 577 func (fpvs *ProjectInvitation_FieldSubPathValue) AsInvitationPathValue() (iam_invitation.Invitation_FieldPathValue, bool) { 578 res, ok := fpvs.subPathValue.(iam_invitation.Invitation_FieldPathValue) 579 return res, ok 580 } 581 582 func (fpvs *ProjectInvitation_FieldSubPathValue) SetTo(target **ProjectInvitation) { 583 if *target == nil { 584 *target = new(ProjectInvitation) 585 } 586 switch fpvs.Selector() { 587 case ProjectInvitation_FieldPathSelectorMetadata: 588 fpvs.subPathValue.(meta.Meta_FieldPathValue).SetTo(&(*target).Metadata) 589 case ProjectInvitation_FieldPathSelectorInvitation: 590 fpvs.subPathValue.(iam_invitation.Invitation_FieldPathValue).SetTo(&(*target).Invitation) 591 default: 592 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fpvs.Selector())) 593 } 594 } 595 596 func (fpvs *ProjectInvitation_FieldSubPathValue) SetToRaw(target proto.Message) { 597 typedObject := target.(*ProjectInvitation) 598 fpvs.SetTo(&typedObject) 599 } 600 601 func (fpvs *ProjectInvitation_FieldSubPathValue) GetRawValue() interface{} { 602 return fpvs.subPathValue.GetRawValue() 603 } 604 605 func (fpvs *ProjectInvitation_FieldSubPathValue) CompareWith(source *ProjectInvitation) (int, bool) { 606 switch fpvs.Selector() { 607 case ProjectInvitation_FieldPathSelectorMetadata: 608 return fpvs.subPathValue.(meta.Meta_FieldPathValue).CompareWith(source.GetMetadata()) 609 case ProjectInvitation_FieldPathSelectorInvitation: 610 return fpvs.subPathValue.(iam_invitation.Invitation_FieldPathValue).CompareWith(source.GetInvitation()) 611 default: 612 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fpvs.Selector())) 613 } 614 } 615 616 func (fpvs *ProjectInvitation_FieldSubPathValue) CompareWithRaw(source proto.Message) (int, bool) { 617 return fpvs.CompareWith(source.(*ProjectInvitation)) 618 } 619 620 // ProjectInvitation_FieldPathArrayItemValue allows storing single item in Path-specific values for ProjectInvitation according to their type 621 // Present only for array (repeated) types. 622 type ProjectInvitation_FieldPathArrayItemValue interface { 623 gotenobject.FieldPathArrayItemValue 624 ProjectInvitation_FieldPath 625 ContainsValue(*ProjectInvitation) bool 626 } 627 628 // ParseProjectInvitation_FieldPathArrayItemValue parses string and JSON-encoded value to its Value 629 func ParseProjectInvitation_FieldPathArrayItemValue(pathStr, valueStr string) (ProjectInvitation_FieldPathArrayItemValue, error) { 630 fp, err := ParseProjectInvitation_FieldPath(pathStr) 631 if err != nil { 632 return nil, err 633 } 634 fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr) 635 if err != nil { 636 return nil, status.Errorf(codes.InvalidArgument, "error parsing ProjectInvitation field path array item value from %s: %v", valueStr, err) 637 } 638 return fpaiv.(ProjectInvitation_FieldPathArrayItemValue), nil 639 } 640 641 func MustParseProjectInvitation_FieldPathArrayItemValue(pathStr, valueStr string) ProjectInvitation_FieldPathArrayItemValue { 642 fpaiv, err := ParseProjectInvitation_FieldPathArrayItemValue(pathStr, valueStr) 643 if err != nil { 644 panic(err) 645 } 646 return fpaiv 647 } 648 649 type ProjectInvitation_FieldTerminalPathArrayItemValue struct { 650 ProjectInvitation_FieldTerminalPath 651 value interface{} 652 } 653 654 var _ ProjectInvitation_FieldPathArrayItemValue = (*ProjectInvitation_FieldTerminalPathArrayItemValue)(nil) 655 656 // GetRawValue returns stored element value for array in object ProjectInvitation as interface{} 657 func (fpaiv *ProjectInvitation_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} { 658 return fpaiv.value 659 } 660 661 func (fpaiv *ProjectInvitation_FieldTerminalPathArrayItemValue) GetSingle(source *ProjectInvitation) (interface{}, bool) { 662 return nil, false 663 } 664 665 func (fpaiv *ProjectInvitation_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) { 666 return fpaiv.GetSingle(source.(*ProjectInvitation)) 667 } 668 669 // Contains returns a boolean indicating if value that is being held is present in given 'ProjectInvitation' 670 func (fpaiv *ProjectInvitation_FieldTerminalPathArrayItemValue) ContainsValue(source *ProjectInvitation) bool { 671 slice := fpaiv.ProjectInvitation_FieldTerminalPath.Get(source) 672 for _, v := range slice { 673 if asProtoMsg, ok := fpaiv.value.(proto.Message); ok { 674 if proto.Equal(asProtoMsg, v.(proto.Message)) { 675 return true 676 } 677 } else if reflect.DeepEqual(v, fpaiv.value) { 678 return true 679 } 680 } 681 return false 682 } 683 684 type ProjectInvitation_FieldSubPathArrayItemValue struct { 685 ProjectInvitation_FieldPath 686 subPathItemValue gotenobject.FieldPathArrayItemValue 687 } 688 689 // GetRawValue returns stored array item value 690 func (fpaivs *ProjectInvitation_FieldSubPathArrayItemValue) GetRawItemValue() interface{} { 691 return fpaivs.subPathItemValue.GetRawItemValue() 692 } 693 func (fpaivs *ProjectInvitation_FieldSubPathArrayItemValue) AsMetadataPathItemValue() (meta.Meta_FieldPathArrayItemValue, bool) { 694 res, ok := fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue) 695 return res, ok 696 } 697 func (fpaivs *ProjectInvitation_FieldSubPathArrayItemValue) AsInvitationPathItemValue() (iam_invitation.Invitation_FieldPathArrayItemValue, bool) { 698 res, ok := fpaivs.subPathItemValue.(iam_invitation.Invitation_FieldPathArrayItemValue) 699 return res, ok 700 } 701 702 // Contains returns a boolean indicating if value that is being held is present in given 'ProjectInvitation' 703 func (fpaivs *ProjectInvitation_FieldSubPathArrayItemValue) ContainsValue(source *ProjectInvitation) bool { 704 switch fpaivs.Selector() { 705 case ProjectInvitation_FieldPathSelectorMetadata: 706 return fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue).ContainsValue(source.GetMetadata()) 707 case ProjectInvitation_FieldPathSelectorInvitation: 708 return fpaivs.subPathItemValue.(iam_invitation.Invitation_FieldPathArrayItemValue).ContainsValue(source.GetInvitation()) 709 default: 710 panic(fmt.Sprintf("Invalid selector for ProjectInvitation: %d", fpaivs.Selector())) 711 } 712 } 713 714 // ProjectInvitation_FieldPathArrayOfValues allows storing slice of values for ProjectInvitation fields according to their type 715 type ProjectInvitation_FieldPathArrayOfValues interface { 716 gotenobject.FieldPathArrayOfValues 717 ProjectInvitation_FieldPath 718 } 719 720 func ParseProjectInvitation_FieldPathArrayOfValues(pathStr, valuesStr string) (ProjectInvitation_FieldPathArrayOfValues, error) { 721 fp, err := ParseProjectInvitation_FieldPath(pathStr) 722 if err != nil { 723 return nil, err 724 } 725 fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr) 726 if err != nil { 727 return nil, status.Errorf(codes.InvalidArgument, "error parsing ProjectInvitation field path array of values from %s: %v", valuesStr, err) 728 } 729 return fpaov.(ProjectInvitation_FieldPathArrayOfValues), nil 730 } 731 732 func MustParseProjectInvitation_FieldPathArrayOfValues(pathStr, valuesStr string) ProjectInvitation_FieldPathArrayOfValues { 733 fpaov, err := ParseProjectInvitation_FieldPathArrayOfValues(pathStr, valuesStr) 734 if err != nil { 735 panic(err) 736 } 737 return fpaov 738 } 739 740 type ProjectInvitation_FieldTerminalPathArrayOfValues struct { 741 ProjectInvitation_FieldTerminalPath 742 values interface{} 743 } 744 745 var _ ProjectInvitation_FieldPathArrayOfValues = (*ProjectInvitation_FieldTerminalPathArrayOfValues)(nil) 746 747 func (fpaov *ProjectInvitation_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) { 748 switch fpaov.selector { 749 case ProjectInvitation_FieldPathSelectorName: 750 for _, v := range fpaov.values.([]*Name) { 751 values = append(values, v) 752 } 753 case ProjectInvitation_FieldPathSelectorMetadata: 754 for _, v := range fpaov.values.([]*meta.Meta) { 755 values = append(values, v) 756 } 757 case ProjectInvitation_FieldPathSelectorProjectDisplayName: 758 for _, v := range fpaov.values.([]string) { 759 values = append(values, v) 760 } 761 case ProjectInvitation_FieldPathSelectorInvitation: 762 for _, v := range fpaov.values.([]*iam_invitation.Invitation) { 763 values = append(values, v) 764 } 765 } 766 return 767 } 768 func (fpaov *ProjectInvitation_FieldTerminalPathArrayOfValues) AsNameArrayOfValues() ([]*Name, bool) { 769 res, ok := fpaov.values.([]*Name) 770 return res, ok 771 } 772 func (fpaov *ProjectInvitation_FieldTerminalPathArrayOfValues) AsMetadataArrayOfValues() ([]*meta.Meta, bool) { 773 res, ok := fpaov.values.([]*meta.Meta) 774 return res, ok 775 } 776 func (fpaov *ProjectInvitation_FieldTerminalPathArrayOfValues) AsProjectDisplayNameArrayOfValues() ([]string, bool) { 777 res, ok := fpaov.values.([]string) 778 return res, ok 779 } 780 func (fpaov *ProjectInvitation_FieldTerminalPathArrayOfValues) AsInvitationArrayOfValues() ([]*iam_invitation.Invitation, bool) { 781 res, ok := fpaov.values.([]*iam_invitation.Invitation) 782 return res, ok 783 } 784 785 type ProjectInvitation_FieldSubPathArrayOfValues struct { 786 ProjectInvitation_FieldPath 787 subPathArrayOfValues gotenobject.FieldPathArrayOfValues 788 } 789 790 var _ ProjectInvitation_FieldPathArrayOfValues = (*ProjectInvitation_FieldSubPathArrayOfValues)(nil) 791 792 func (fpsaov *ProjectInvitation_FieldSubPathArrayOfValues) GetRawValues() []interface{} { 793 return fpsaov.subPathArrayOfValues.GetRawValues() 794 } 795 func (fpsaov *ProjectInvitation_FieldSubPathArrayOfValues) AsMetadataPathArrayOfValues() (meta.Meta_FieldPathArrayOfValues, bool) { 796 res, ok := fpsaov.subPathArrayOfValues.(meta.Meta_FieldPathArrayOfValues) 797 return res, ok 798 } 799 func (fpsaov *ProjectInvitation_FieldSubPathArrayOfValues) AsInvitationPathArrayOfValues() (iam_invitation.Invitation_FieldPathArrayOfValues, bool) { 800 res, ok := fpsaov.subPathArrayOfValues.(iam_invitation.Invitation_FieldPathArrayOfValues) 801 return res, ok 802 }