github.com/cloudwan/edgelq-sdk@v1.15.4/secrets/resources/v1/secret/secret.pb.fieldpath.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/secrets/proto/v1/secret.proto 3 // DO NOT EDIT!!! 4 5 package secret 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 project "github.com/cloudwan/edgelq-sdk/secrets/resources/v1/project" 27 meta "github.com/cloudwan/goten-sdk/types/meta" 28 ) 29 30 // ensure the imports are used 31 var ( 32 _ = new(json.Marshaler) 33 _ = new(fmt.Stringer) 34 _ = reflect.DeepEqual 35 _ = strings.Builder{} 36 _ = time.Second 37 38 _ = strcase.ToLowerCamel 39 _ = codes.NotFound 40 _ = status.Status{} 41 _ = protojson.UnmarshalOptions{} 42 _ = new(proto.Message) 43 _ = protoregistry.GlobalTypes 44 45 _ = new(gotenobject.FieldPath) 46 ) 47 48 // make sure we're using proto imports 49 var ( 50 _ = &project.Project{} 51 _ = &meta.Meta{} 52 ) 53 54 // FieldPath provides implementation to handle 55 // https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto 56 type Secret_FieldPath interface { 57 gotenobject.FieldPath 58 Selector() Secret_FieldPathSelector 59 Get(source *Secret) []interface{} 60 GetSingle(source *Secret) (interface{}, bool) 61 ClearValue(item *Secret) 62 63 // Those methods build corresponding Secret_FieldPathValue 64 // (or array of values) and holds passed value. Panics if injected type is incorrect. 65 WithIValue(value interface{}) Secret_FieldPathValue 66 WithIArrayOfValues(values interface{}) Secret_FieldPathArrayOfValues 67 WithIArrayItemValue(value interface{}) Secret_FieldPathArrayItemValue 68 } 69 70 type Secret_FieldPathSelector int32 71 72 const ( 73 Secret_FieldPathSelectorName Secret_FieldPathSelector = 0 74 Secret_FieldPathSelectorMetadata Secret_FieldPathSelector = 1 75 Secret_FieldPathSelectorDisplayName Secret_FieldPathSelector = 2 76 Secret_FieldPathSelectorDescription Secret_FieldPathSelector = 3 77 Secret_FieldPathSelectorEncData Secret_FieldPathSelector = 4 78 Secret_FieldPathSelectorData Secret_FieldPathSelector = 5 79 ) 80 81 func (s Secret_FieldPathSelector) String() string { 82 switch s { 83 case Secret_FieldPathSelectorName: 84 return "name" 85 case Secret_FieldPathSelectorMetadata: 86 return "metadata" 87 case Secret_FieldPathSelectorDisplayName: 88 return "display_name" 89 case Secret_FieldPathSelectorDescription: 90 return "description" 91 case Secret_FieldPathSelectorEncData: 92 return "enc_data" 93 case Secret_FieldPathSelectorData: 94 return "data" 95 default: 96 panic(fmt.Sprintf("Invalid selector for Secret: %d", s)) 97 } 98 } 99 100 func BuildSecret_FieldPath(fp gotenobject.RawFieldPath) (Secret_FieldPath, error) { 101 if len(fp) == 0 { 102 return nil, status.Error(codes.InvalidArgument, "empty field path for object Secret") 103 } 104 if len(fp) == 1 { 105 switch fp[0] { 106 case "name": 107 return &Secret_FieldTerminalPath{selector: Secret_FieldPathSelectorName}, nil 108 case "metadata": 109 return &Secret_FieldTerminalPath{selector: Secret_FieldPathSelectorMetadata}, nil 110 case "display_name", "displayName", "display-name": 111 return &Secret_FieldTerminalPath{selector: Secret_FieldPathSelectorDisplayName}, nil 112 case "description": 113 return &Secret_FieldTerminalPath{selector: Secret_FieldPathSelectorDescription}, nil 114 case "enc_data", "encData", "enc-data": 115 return &Secret_FieldTerminalPath{selector: Secret_FieldPathSelectorEncData}, nil 116 case "data": 117 return &Secret_FieldTerminalPath{selector: Secret_FieldPathSelectorData}, nil 118 } 119 } else { 120 switch fp[0] { 121 case "metadata": 122 if subpath, err := meta.BuildMeta_FieldPath(fp[1:]); err != nil { 123 return nil, err 124 } else { 125 return &Secret_FieldSubPath{selector: Secret_FieldPathSelectorMetadata, subPath: subpath}, nil 126 } 127 case "data": 128 if len(fp) > 2 { 129 return nil, status.Errorf(codes.InvalidArgument, "sub path for maps ('%s') are not supported (object Secret)", fp) 130 } 131 return &Secret_FieldPathMap{selector: Secret_FieldPathSelectorData, key: fp[1]}, nil 132 } 133 } 134 return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object Secret", fp) 135 } 136 137 func ParseSecret_FieldPath(rawField string) (Secret_FieldPath, error) { 138 fp, err := gotenobject.ParseRawFieldPath(rawField) 139 if err != nil { 140 return nil, err 141 } 142 return BuildSecret_FieldPath(fp) 143 } 144 145 func MustParseSecret_FieldPath(rawField string) Secret_FieldPath { 146 fp, err := ParseSecret_FieldPath(rawField) 147 if err != nil { 148 panic(err) 149 } 150 return fp 151 } 152 153 type Secret_FieldTerminalPath struct { 154 selector Secret_FieldPathSelector 155 } 156 157 var _ Secret_FieldPath = (*Secret_FieldTerminalPath)(nil) 158 159 func (fp *Secret_FieldTerminalPath) Selector() Secret_FieldPathSelector { 160 return fp.selector 161 } 162 163 // String returns path representation in proto convention 164 func (fp *Secret_FieldTerminalPath) String() string { 165 return fp.selector.String() 166 } 167 168 // JSONString returns path representation is JSON convention 169 func (fp *Secret_FieldTerminalPath) JSONString() string { 170 return strcase.ToLowerCamel(fp.String()) 171 } 172 173 // Get returns all values pointed by specific field from source Secret 174 func (fp *Secret_FieldTerminalPath) Get(source *Secret) (values []interface{}) { 175 if source != nil { 176 switch fp.selector { 177 case Secret_FieldPathSelectorName: 178 if source.Name != nil { 179 values = append(values, source.Name) 180 } 181 case Secret_FieldPathSelectorMetadata: 182 if source.Metadata != nil { 183 values = append(values, source.Metadata) 184 } 185 case Secret_FieldPathSelectorDisplayName: 186 values = append(values, source.DisplayName) 187 case Secret_FieldPathSelectorDescription: 188 values = append(values, source.Description) 189 case Secret_FieldPathSelectorEncData: 190 values = append(values, source.EncData) 191 case Secret_FieldPathSelectorData: 192 values = append(values, source.Data) 193 default: 194 panic(fmt.Sprintf("Invalid selector for Secret: %d", fp.selector)) 195 } 196 } 197 return 198 } 199 200 func (fp *Secret_FieldTerminalPath) GetRaw(source proto.Message) []interface{} { 201 return fp.Get(source.(*Secret)) 202 } 203 204 // GetSingle returns value pointed by specific field of from source Secret 205 func (fp *Secret_FieldTerminalPath) GetSingle(source *Secret) (interface{}, bool) { 206 switch fp.selector { 207 case Secret_FieldPathSelectorName: 208 res := source.GetName() 209 return res, res != nil 210 case Secret_FieldPathSelectorMetadata: 211 res := source.GetMetadata() 212 return res, res != nil 213 case Secret_FieldPathSelectorDisplayName: 214 return source.GetDisplayName(), source != nil 215 case Secret_FieldPathSelectorDescription: 216 return source.GetDescription(), source != nil 217 case Secret_FieldPathSelectorEncData: 218 res := source.GetEncData() 219 return res, res != nil 220 case Secret_FieldPathSelectorData: 221 res := source.GetData() 222 return res, res != nil 223 default: 224 panic(fmt.Sprintf("Invalid selector for Secret: %d", fp.selector)) 225 } 226 } 227 228 func (fp *Secret_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 229 return fp.GetSingle(source.(*Secret)) 230 } 231 232 // GetDefault returns a default value of the field type 233 func (fp *Secret_FieldTerminalPath) GetDefault() interface{} { 234 switch fp.selector { 235 case Secret_FieldPathSelectorName: 236 return (*Name)(nil) 237 case Secret_FieldPathSelectorMetadata: 238 return (*meta.Meta)(nil) 239 case Secret_FieldPathSelectorDisplayName: 240 return "" 241 case Secret_FieldPathSelectorDescription: 242 return "" 243 case Secret_FieldPathSelectorEncData: 244 return ([]byte)(nil) 245 case Secret_FieldPathSelectorData: 246 return (map[string]string)(nil) 247 default: 248 panic(fmt.Sprintf("Invalid selector for Secret: %d", fp.selector)) 249 } 250 } 251 252 func (fp *Secret_FieldTerminalPath) ClearValue(item *Secret) { 253 if item != nil { 254 switch fp.selector { 255 case Secret_FieldPathSelectorName: 256 item.Name = nil 257 case Secret_FieldPathSelectorMetadata: 258 item.Metadata = nil 259 case Secret_FieldPathSelectorDisplayName: 260 item.DisplayName = "" 261 case Secret_FieldPathSelectorDescription: 262 item.Description = "" 263 case Secret_FieldPathSelectorEncData: 264 item.EncData = nil 265 case Secret_FieldPathSelectorData: 266 item.Data = nil 267 default: 268 panic(fmt.Sprintf("Invalid selector for Secret: %d", fp.selector)) 269 } 270 } 271 } 272 273 func (fp *Secret_FieldTerminalPath) ClearValueRaw(item proto.Message) { 274 fp.ClearValue(item.(*Secret)) 275 } 276 277 // IsLeaf - whether field path is holds simple value 278 func (fp *Secret_FieldTerminalPath) IsLeaf() bool { 279 return fp.selector == Secret_FieldPathSelectorName || 280 fp.selector == Secret_FieldPathSelectorDisplayName || 281 fp.selector == Secret_FieldPathSelectorDescription || 282 fp.selector == Secret_FieldPathSelectorEncData || 283 fp.selector == Secret_FieldPathSelectorData 284 } 285 286 func (fp *Secret_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 287 return []gotenobject.FieldPath{fp} 288 } 289 290 func (fp *Secret_FieldTerminalPath) WithIValue(value interface{}) Secret_FieldPathValue { 291 switch fp.selector { 292 case Secret_FieldPathSelectorName: 293 return &Secret_FieldTerminalPathValue{Secret_FieldTerminalPath: *fp, value: value.(*Name)} 294 case Secret_FieldPathSelectorMetadata: 295 return &Secret_FieldTerminalPathValue{Secret_FieldTerminalPath: *fp, value: value.(*meta.Meta)} 296 case Secret_FieldPathSelectorDisplayName: 297 return &Secret_FieldTerminalPathValue{Secret_FieldTerminalPath: *fp, value: value.(string)} 298 case Secret_FieldPathSelectorDescription: 299 return &Secret_FieldTerminalPathValue{Secret_FieldTerminalPath: *fp, value: value.(string)} 300 case Secret_FieldPathSelectorEncData: 301 return &Secret_FieldTerminalPathValue{Secret_FieldTerminalPath: *fp, value: value.([]byte)} 302 case Secret_FieldPathSelectorData: 303 return &Secret_FieldTerminalPathValue{Secret_FieldTerminalPath: *fp, value: value.(map[string]string)} 304 default: 305 panic(fmt.Sprintf("Invalid selector for Secret: %d", fp.selector)) 306 } 307 } 308 309 func (fp *Secret_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 310 return fp.WithIValue(value) 311 } 312 313 func (fp *Secret_FieldTerminalPath) WithIArrayOfValues(values interface{}) Secret_FieldPathArrayOfValues { 314 fpaov := &Secret_FieldTerminalPathArrayOfValues{Secret_FieldTerminalPath: *fp} 315 switch fp.selector { 316 case Secret_FieldPathSelectorName: 317 return &Secret_FieldTerminalPathArrayOfValues{Secret_FieldTerminalPath: *fp, values: values.([]*Name)} 318 case Secret_FieldPathSelectorMetadata: 319 return &Secret_FieldTerminalPathArrayOfValues{Secret_FieldTerminalPath: *fp, values: values.([]*meta.Meta)} 320 case Secret_FieldPathSelectorDisplayName: 321 return &Secret_FieldTerminalPathArrayOfValues{Secret_FieldTerminalPath: *fp, values: values.([]string)} 322 case Secret_FieldPathSelectorDescription: 323 return &Secret_FieldTerminalPathArrayOfValues{Secret_FieldTerminalPath: *fp, values: values.([]string)} 324 case Secret_FieldPathSelectorEncData: 325 return &Secret_FieldTerminalPathArrayOfValues{Secret_FieldTerminalPath: *fp, values: values.([][]byte)} 326 case Secret_FieldPathSelectorData: 327 return &Secret_FieldTerminalPathArrayOfValues{Secret_FieldTerminalPath: *fp, values: values.([]map[string]string)} 328 default: 329 panic(fmt.Sprintf("Invalid selector for Secret: %d", fp.selector)) 330 } 331 return fpaov 332 } 333 334 func (fp *Secret_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 335 return fp.WithIArrayOfValues(values) 336 } 337 338 func (fp *Secret_FieldTerminalPath) WithIArrayItemValue(value interface{}) Secret_FieldPathArrayItemValue { 339 switch fp.selector { 340 default: 341 panic(fmt.Sprintf("Invalid selector for Secret: %d", fp.selector)) 342 } 343 } 344 345 func (fp *Secret_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 346 return fp.WithIArrayItemValue(value) 347 } 348 349 // FieldPath for map type with additional Key information 350 type Secret_FieldPathMap struct { 351 key string 352 selector Secret_FieldPathSelector 353 } 354 355 var _ Secret_FieldPath = (*Secret_FieldPathMap)(nil) 356 357 func (fpm *Secret_FieldPathMap) Selector() Secret_FieldPathSelector { 358 return fpm.selector 359 } 360 361 func (fpm *Secret_FieldPathMap) Key() string { 362 return fpm.key 363 } 364 365 // String returns path representation in proto convention 366 func (fpm *Secret_FieldPathMap) String() string { 367 return fpm.selector.String() + "." + fpm.key 368 } 369 370 // JSONString returns path representation is JSON convention. Note that map keys are not transformed 371 func (fpm *Secret_FieldPathMap) JSONString() string { 372 return strcase.ToLowerCamel(fpm.selector.String()) + "." + fpm.key 373 } 374 375 // Get returns all values pointed by selected field map key from source Secret 376 func (fpm *Secret_FieldPathMap) Get(source *Secret) (values []interface{}) { 377 switch fpm.selector { 378 case Secret_FieldPathSelectorData: 379 if value, ok := source.GetData()[fpm.key]; ok { 380 values = append(values, value) 381 } 382 default: 383 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpm.selector)) 384 } 385 return 386 } 387 388 func (fpm *Secret_FieldPathMap) GetRaw(source proto.Message) []interface{} { 389 return fpm.Get(source.(*Secret)) 390 } 391 392 // GetSingle returns value by selected field map key from source Secret 393 func (fpm *Secret_FieldPathMap) GetSingle(source *Secret) (interface{}, bool) { 394 switch fpm.selector { 395 case Secret_FieldPathSelectorData: 396 res, ok := source.GetData()[fpm.key] 397 return res, ok 398 default: 399 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpm.selector)) 400 } 401 } 402 403 func (fpm *Secret_FieldPathMap) GetSingleRaw(source proto.Message) (interface{}, bool) { 404 return fpm.GetSingle(source.(*Secret)) 405 } 406 407 // GetDefault returns a default value of the field type 408 func (fpm *Secret_FieldPathMap) GetDefault() interface{} { 409 switch fpm.selector { 410 case Secret_FieldPathSelectorData: 411 var v string 412 return v 413 default: 414 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpm.selector)) 415 } 416 } 417 418 func (fpm *Secret_FieldPathMap) ClearValue(item *Secret) { 419 if item != nil { 420 switch fpm.selector { 421 case Secret_FieldPathSelectorData: 422 delete(item.Data, fpm.key) 423 default: 424 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpm.selector)) 425 } 426 } 427 } 428 429 func (fpm *Secret_FieldPathMap) ClearValueRaw(item proto.Message) { 430 fpm.ClearValue(item.(*Secret)) 431 } 432 433 // IsLeaf - whether field path is holds simple value 434 func (fpm *Secret_FieldPathMap) IsLeaf() bool { 435 switch fpm.selector { 436 case Secret_FieldPathSelectorData: 437 return true 438 default: 439 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpm.selector)) 440 } 441 } 442 443 func (fpm *Secret_FieldPathMap) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 444 return []gotenobject.FieldPath{fpm} 445 } 446 447 func (fpm *Secret_FieldPathMap) WithIValue(value interface{}) Secret_FieldPathValue { 448 switch fpm.selector { 449 case Secret_FieldPathSelectorData: 450 return &Secret_FieldPathMapValue{Secret_FieldPathMap: *fpm, value: value.(string)} 451 default: 452 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpm.selector)) 453 } 454 } 455 456 func (fpm *Secret_FieldPathMap) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 457 return fpm.WithIValue(value) 458 } 459 460 func (fpm *Secret_FieldPathMap) WithIArrayOfValues(values interface{}) Secret_FieldPathArrayOfValues { 461 switch fpm.selector { 462 case Secret_FieldPathSelectorData: 463 return &Secret_FieldPathMapArrayOfValues{Secret_FieldPathMap: *fpm, values: values.([]string)} 464 default: 465 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpm.selector)) 466 } 467 } 468 469 func (fpm *Secret_FieldPathMap) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 470 return fpm.WithIArrayOfValues(values) 471 } 472 473 func (fpm *Secret_FieldPathMap) WithIArrayItemValue(value interface{}) Secret_FieldPathArrayItemValue { 474 panic("Cannot create array item value from map fieldpath") 475 } 476 477 func (fpm *Secret_FieldPathMap) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 478 return fpm.WithIArrayItemValue(value) 479 } 480 481 type Secret_FieldSubPath struct { 482 selector Secret_FieldPathSelector 483 subPath gotenobject.FieldPath 484 } 485 486 var _ Secret_FieldPath = (*Secret_FieldSubPath)(nil) 487 488 func (fps *Secret_FieldSubPath) Selector() Secret_FieldPathSelector { 489 return fps.selector 490 } 491 func (fps *Secret_FieldSubPath) AsMetadataSubPath() (meta.Meta_FieldPath, bool) { 492 res, ok := fps.subPath.(meta.Meta_FieldPath) 493 return res, ok 494 } 495 496 // String returns path representation in proto convention 497 func (fps *Secret_FieldSubPath) String() string { 498 return fps.selector.String() + "." + fps.subPath.String() 499 } 500 501 // JSONString returns path representation is JSON convention 502 func (fps *Secret_FieldSubPath) JSONString() string { 503 return strcase.ToLowerCamel(fps.selector.String()) + "." + fps.subPath.JSONString() 504 } 505 506 // Get returns all values pointed by selected field from source Secret 507 func (fps *Secret_FieldSubPath) Get(source *Secret) (values []interface{}) { 508 switch fps.selector { 509 case Secret_FieldPathSelectorMetadata: 510 values = append(values, fps.subPath.GetRaw(source.GetMetadata())...) 511 default: 512 panic(fmt.Sprintf("Invalid selector for Secret: %d", fps.selector)) 513 } 514 return 515 } 516 517 func (fps *Secret_FieldSubPath) GetRaw(source proto.Message) []interface{} { 518 return fps.Get(source.(*Secret)) 519 } 520 521 // GetSingle returns value of selected field from source Secret 522 func (fps *Secret_FieldSubPath) GetSingle(source *Secret) (interface{}, bool) { 523 switch fps.selector { 524 case Secret_FieldPathSelectorMetadata: 525 if source.GetMetadata() == nil { 526 return nil, false 527 } 528 return fps.subPath.GetSingleRaw(source.GetMetadata()) 529 default: 530 panic(fmt.Sprintf("Invalid selector for Secret: %d", fps.selector)) 531 } 532 } 533 534 func (fps *Secret_FieldSubPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 535 return fps.GetSingle(source.(*Secret)) 536 } 537 538 // GetDefault returns a default value of the field type 539 func (fps *Secret_FieldSubPath) GetDefault() interface{} { 540 return fps.subPath.GetDefault() 541 } 542 543 func (fps *Secret_FieldSubPath) ClearValue(item *Secret) { 544 if item != nil { 545 switch fps.selector { 546 case Secret_FieldPathSelectorMetadata: 547 fps.subPath.ClearValueRaw(item.Metadata) 548 default: 549 panic(fmt.Sprintf("Invalid selector for Secret: %d", fps.selector)) 550 } 551 } 552 } 553 554 func (fps *Secret_FieldSubPath) ClearValueRaw(item proto.Message) { 555 fps.ClearValue(item.(*Secret)) 556 } 557 558 // IsLeaf - whether field path is holds simple value 559 func (fps *Secret_FieldSubPath) IsLeaf() bool { 560 return fps.subPath.IsLeaf() 561 } 562 563 func (fps *Secret_FieldSubPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 564 iPaths := []gotenobject.FieldPath{&Secret_FieldTerminalPath{selector: fps.selector}} 565 iPaths = append(iPaths, fps.subPath.SplitIntoTerminalIPaths()...) 566 return iPaths 567 } 568 569 func (fps *Secret_FieldSubPath) WithIValue(value interface{}) Secret_FieldPathValue { 570 return &Secret_FieldSubPathValue{fps, fps.subPath.WithRawIValue(value)} 571 } 572 573 func (fps *Secret_FieldSubPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 574 return fps.WithIValue(value) 575 } 576 577 func (fps *Secret_FieldSubPath) WithIArrayOfValues(values interface{}) Secret_FieldPathArrayOfValues { 578 return &Secret_FieldSubPathArrayOfValues{fps, fps.subPath.WithRawIArrayOfValues(values)} 579 } 580 581 func (fps *Secret_FieldSubPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 582 return fps.WithIArrayOfValues(values) 583 } 584 585 func (fps *Secret_FieldSubPath) WithIArrayItemValue(value interface{}) Secret_FieldPathArrayItemValue { 586 return &Secret_FieldSubPathArrayItemValue{fps, fps.subPath.WithRawIArrayItemValue(value)} 587 } 588 589 func (fps *Secret_FieldSubPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 590 return fps.WithIArrayItemValue(value) 591 } 592 593 // Secret_FieldPathValue allows storing values for Secret fields according to their type 594 type Secret_FieldPathValue interface { 595 Secret_FieldPath 596 gotenobject.FieldPathValue 597 SetTo(target **Secret) 598 CompareWith(*Secret) (cmp int, comparable bool) 599 } 600 601 func ParseSecret_FieldPathValue(pathStr, valueStr string) (Secret_FieldPathValue, error) { 602 fp, err := ParseSecret_FieldPath(pathStr) 603 if err != nil { 604 return nil, err 605 } 606 fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr) 607 if err != nil { 608 return nil, status.Errorf(codes.InvalidArgument, "error parsing Secret field path value from %s: %v", valueStr, err) 609 } 610 return fpv.(Secret_FieldPathValue), nil 611 } 612 613 func MustParseSecret_FieldPathValue(pathStr, valueStr string) Secret_FieldPathValue { 614 fpv, err := ParseSecret_FieldPathValue(pathStr, valueStr) 615 if err != nil { 616 panic(err) 617 } 618 return fpv 619 } 620 621 type Secret_FieldTerminalPathValue struct { 622 Secret_FieldTerminalPath 623 value interface{} 624 } 625 626 var _ Secret_FieldPathValue = (*Secret_FieldTerminalPathValue)(nil) 627 628 // GetRawValue returns raw value stored under selected path for 'Secret' as interface{} 629 func (fpv *Secret_FieldTerminalPathValue) GetRawValue() interface{} { 630 return fpv.value 631 } 632 func (fpv *Secret_FieldTerminalPathValue) AsNameValue() (*Name, bool) { 633 res, ok := fpv.value.(*Name) 634 return res, ok 635 } 636 func (fpv *Secret_FieldTerminalPathValue) AsMetadataValue() (*meta.Meta, bool) { 637 res, ok := fpv.value.(*meta.Meta) 638 return res, ok 639 } 640 func (fpv *Secret_FieldTerminalPathValue) AsDisplayNameValue() (string, bool) { 641 res, ok := fpv.value.(string) 642 return res, ok 643 } 644 func (fpv *Secret_FieldTerminalPathValue) AsDescriptionValue() (string, bool) { 645 res, ok := fpv.value.(string) 646 return res, ok 647 } 648 func (fpv *Secret_FieldTerminalPathValue) AsEncDataValue() ([]byte, bool) { 649 res, ok := fpv.value.([]byte) 650 return res, ok 651 } 652 func (fpv *Secret_FieldTerminalPathValue) AsDataValue() (map[string]string, bool) { 653 res, ok := fpv.value.(map[string]string) 654 return res, ok 655 } 656 657 // SetTo stores value for selected field for object Secret 658 func (fpv *Secret_FieldTerminalPathValue) SetTo(target **Secret) { 659 if *target == nil { 660 *target = new(Secret) 661 } 662 switch fpv.selector { 663 case Secret_FieldPathSelectorName: 664 (*target).Name = fpv.value.(*Name) 665 case Secret_FieldPathSelectorMetadata: 666 (*target).Metadata = fpv.value.(*meta.Meta) 667 case Secret_FieldPathSelectorDisplayName: 668 (*target).DisplayName = fpv.value.(string) 669 case Secret_FieldPathSelectorDescription: 670 (*target).Description = fpv.value.(string) 671 case Secret_FieldPathSelectorEncData: 672 (*target).EncData = fpv.value.([]byte) 673 case Secret_FieldPathSelectorData: 674 (*target).Data = fpv.value.(map[string]string) 675 default: 676 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpv.selector)) 677 } 678 } 679 680 func (fpv *Secret_FieldTerminalPathValue) SetToRaw(target proto.Message) { 681 typedObject := target.(*Secret) 682 fpv.SetTo(&typedObject) 683 } 684 685 // CompareWith compares value in the 'Secret_FieldTerminalPathValue' with the value under path in 'Secret'. 686 func (fpv *Secret_FieldTerminalPathValue) CompareWith(source *Secret) (int, bool) { 687 switch fpv.selector { 688 case Secret_FieldPathSelectorName: 689 leftValue := fpv.value.(*Name) 690 rightValue := source.GetName() 691 if leftValue == nil { 692 if rightValue != nil { 693 return -1, true 694 } 695 return 0, true 696 } 697 if rightValue == nil { 698 return 1, true 699 } 700 if leftValue.String() == rightValue.String() { 701 return 0, true 702 } else if leftValue.String() < rightValue.String() { 703 return -1, true 704 } else { 705 return 1, true 706 } 707 case Secret_FieldPathSelectorMetadata: 708 return 0, false 709 case Secret_FieldPathSelectorDisplayName: 710 leftValue := fpv.value.(string) 711 rightValue := source.GetDisplayName() 712 if (leftValue) == (rightValue) { 713 return 0, true 714 } else if (leftValue) < (rightValue) { 715 return -1, true 716 } else { 717 return 1, true 718 } 719 case Secret_FieldPathSelectorDescription: 720 leftValue := fpv.value.(string) 721 rightValue := source.GetDescription() 722 if (leftValue) == (rightValue) { 723 return 0, true 724 } else if (leftValue) < (rightValue) { 725 return -1, true 726 } else { 727 return 1, true 728 } 729 case Secret_FieldPathSelectorEncData: 730 return 0, false 731 case Secret_FieldPathSelectorData: 732 return 0, false 733 default: 734 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpv.selector)) 735 } 736 } 737 738 func (fpv *Secret_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) { 739 return fpv.CompareWith(source.(*Secret)) 740 } 741 742 type Secret_FieldPathMapValue struct { 743 Secret_FieldPathMap 744 value interface{} 745 } 746 747 var _ Secret_FieldPathValue = (*Secret_FieldPathMapValue)(nil) 748 749 // GetValue returns value stored under selected field in Secret as interface{} 750 func (fpmv *Secret_FieldPathMapValue) GetRawValue() interface{} { 751 return fpmv.value 752 } 753 func (fpmv *Secret_FieldPathMapValue) AsDataElementValue() (string, bool) { 754 res, ok := fpmv.value.(string) 755 return res, ok 756 } 757 758 // SetTo stores value for selected field in Secret 759 func (fpmv *Secret_FieldPathMapValue) SetTo(target **Secret) { 760 if *target == nil { 761 *target = new(Secret) 762 } 763 switch fpmv.selector { 764 case Secret_FieldPathSelectorData: 765 if (*target).Data == nil { 766 (*target).Data = make(map[string]string) 767 } 768 (*target).Data[fpmv.key] = fpmv.value.(string) 769 default: 770 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpmv.selector)) 771 } 772 } 773 774 func (fpmv *Secret_FieldPathMapValue) SetToRaw(target proto.Message) { 775 typedObject := target.(*Secret) 776 fpmv.SetTo(&typedObject) 777 } 778 779 // CompareWith compares value in the 'Secret_FieldPathMapValue' with the value under path in 'Secret'. 780 func (fpmv *Secret_FieldPathMapValue) CompareWith(source *Secret) (int, bool) { 781 switch fpmv.selector { 782 case Secret_FieldPathSelectorData: 783 leftValue := fpmv.value.(string) 784 rightValue := source.GetData()[fpmv.key] 785 if (leftValue) == (rightValue) { 786 return 0, true 787 } else if (leftValue) < (rightValue) { 788 return -1, true 789 } else { 790 return 1, true 791 } 792 default: 793 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpmv.selector)) 794 } 795 } 796 797 func (fpmv *Secret_FieldPathMapValue) CompareWithRaw(source proto.Message) (int, bool) { 798 return fpmv.CompareWith(source.(*Secret)) 799 } 800 801 type Secret_FieldSubPathValue struct { 802 Secret_FieldPath 803 subPathValue gotenobject.FieldPathValue 804 } 805 806 var _ Secret_FieldPathValue = (*Secret_FieldSubPathValue)(nil) 807 808 func (fpvs *Secret_FieldSubPathValue) AsMetadataPathValue() (meta.Meta_FieldPathValue, bool) { 809 res, ok := fpvs.subPathValue.(meta.Meta_FieldPathValue) 810 return res, ok 811 } 812 813 func (fpvs *Secret_FieldSubPathValue) SetTo(target **Secret) { 814 if *target == nil { 815 *target = new(Secret) 816 } 817 switch fpvs.Selector() { 818 case Secret_FieldPathSelectorMetadata: 819 fpvs.subPathValue.(meta.Meta_FieldPathValue).SetTo(&(*target).Metadata) 820 default: 821 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpvs.Selector())) 822 } 823 } 824 825 func (fpvs *Secret_FieldSubPathValue) SetToRaw(target proto.Message) { 826 typedObject := target.(*Secret) 827 fpvs.SetTo(&typedObject) 828 } 829 830 func (fpvs *Secret_FieldSubPathValue) GetRawValue() interface{} { 831 return fpvs.subPathValue.GetRawValue() 832 } 833 834 func (fpvs *Secret_FieldSubPathValue) CompareWith(source *Secret) (int, bool) { 835 switch fpvs.Selector() { 836 case Secret_FieldPathSelectorMetadata: 837 return fpvs.subPathValue.(meta.Meta_FieldPathValue).CompareWith(source.GetMetadata()) 838 default: 839 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpvs.Selector())) 840 } 841 } 842 843 func (fpvs *Secret_FieldSubPathValue) CompareWithRaw(source proto.Message) (int, bool) { 844 return fpvs.CompareWith(source.(*Secret)) 845 } 846 847 // Secret_FieldPathArrayItemValue allows storing single item in Path-specific values for Secret according to their type 848 // Present only for array (repeated) types. 849 type Secret_FieldPathArrayItemValue interface { 850 gotenobject.FieldPathArrayItemValue 851 Secret_FieldPath 852 ContainsValue(*Secret) bool 853 } 854 855 // ParseSecret_FieldPathArrayItemValue parses string and JSON-encoded value to its Value 856 func ParseSecret_FieldPathArrayItemValue(pathStr, valueStr string) (Secret_FieldPathArrayItemValue, error) { 857 fp, err := ParseSecret_FieldPath(pathStr) 858 if err != nil { 859 return nil, err 860 } 861 fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr) 862 if err != nil { 863 return nil, status.Errorf(codes.InvalidArgument, "error parsing Secret field path array item value from %s: %v", valueStr, err) 864 } 865 return fpaiv.(Secret_FieldPathArrayItemValue), nil 866 } 867 868 func MustParseSecret_FieldPathArrayItemValue(pathStr, valueStr string) Secret_FieldPathArrayItemValue { 869 fpaiv, err := ParseSecret_FieldPathArrayItemValue(pathStr, valueStr) 870 if err != nil { 871 panic(err) 872 } 873 return fpaiv 874 } 875 876 type Secret_FieldTerminalPathArrayItemValue struct { 877 Secret_FieldTerminalPath 878 value interface{} 879 } 880 881 var _ Secret_FieldPathArrayItemValue = (*Secret_FieldTerminalPathArrayItemValue)(nil) 882 883 // GetRawValue returns stored element value for array in object Secret as interface{} 884 func (fpaiv *Secret_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} { 885 return fpaiv.value 886 } 887 888 func (fpaiv *Secret_FieldTerminalPathArrayItemValue) GetSingle(source *Secret) (interface{}, bool) { 889 return nil, false 890 } 891 892 func (fpaiv *Secret_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) { 893 return fpaiv.GetSingle(source.(*Secret)) 894 } 895 896 // Contains returns a boolean indicating if value that is being held is present in given 'Secret' 897 func (fpaiv *Secret_FieldTerminalPathArrayItemValue) ContainsValue(source *Secret) bool { 898 slice := fpaiv.Secret_FieldTerminalPath.Get(source) 899 for _, v := range slice { 900 if asProtoMsg, ok := fpaiv.value.(proto.Message); ok { 901 if proto.Equal(asProtoMsg, v.(proto.Message)) { 902 return true 903 } 904 } else if reflect.DeepEqual(v, fpaiv.value) { 905 return true 906 } 907 } 908 return false 909 } 910 911 type Secret_FieldSubPathArrayItemValue struct { 912 Secret_FieldPath 913 subPathItemValue gotenobject.FieldPathArrayItemValue 914 } 915 916 // GetRawValue returns stored array item value 917 func (fpaivs *Secret_FieldSubPathArrayItemValue) GetRawItemValue() interface{} { 918 return fpaivs.subPathItemValue.GetRawItemValue() 919 } 920 func (fpaivs *Secret_FieldSubPathArrayItemValue) AsMetadataPathItemValue() (meta.Meta_FieldPathArrayItemValue, bool) { 921 res, ok := fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue) 922 return res, ok 923 } 924 925 // Contains returns a boolean indicating if value that is being held is present in given 'Secret' 926 func (fpaivs *Secret_FieldSubPathArrayItemValue) ContainsValue(source *Secret) bool { 927 switch fpaivs.Selector() { 928 case Secret_FieldPathSelectorMetadata: 929 return fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue).ContainsValue(source.GetMetadata()) 930 default: 931 panic(fmt.Sprintf("Invalid selector for Secret: %d", fpaivs.Selector())) 932 } 933 } 934 935 // Secret_FieldPathArrayOfValues allows storing slice of values for Secret fields according to their type 936 type Secret_FieldPathArrayOfValues interface { 937 gotenobject.FieldPathArrayOfValues 938 Secret_FieldPath 939 } 940 941 func ParseSecret_FieldPathArrayOfValues(pathStr, valuesStr string) (Secret_FieldPathArrayOfValues, error) { 942 fp, err := ParseSecret_FieldPath(pathStr) 943 if err != nil { 944 return nil, err 945 } 946 fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr) 947 if err != nil { 948 return nil, status.Errorf(codes.InvalidArgument, "error parsing Secret field path array of values from %s: %v", valuesStr, err) 949 } 950 return fpaov.(Secret_FieldPathArrayOfValues), nil 951 } 952 953 func MustParseSecret_FieldPathArrayOfValues(pathStr, valuesStr string) Secret_FieldPathArrayOfValues { 954 fpaov, err := ParseSecret_FieldPathArrayOfValues(pathStr, valuesStr) 955 if err != nil { 956 panic(err) 957 } 958 return fpaov 959 } 960 961 type Secret_FieldTerminalPathArrayOfValues struct { 962 Secret_FieldTerminalPath 963 values interface{} 964 } 965 966 var _ Secret_FieldPathArrayOfValues = (*Secret_FieldTerminalPathArrayOfValues)(nil) 967 968 func (fpaov *Secret_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) { 969 switch fpaov.selector { 970 case Secret_FieldPathSelectorName: 971 for _, v := range fpaov.values.([]*Name) { 972 values = append(values, v) 973 } 974 case Secret_FieldPathSelectorMetadata: 975 for _, v := range fpaov.values.([]*meta.Meta) { 976 values = append(values, v) 977 } 978 case Secret_FieldPathSelectorDisplayName: 979 for _, v := range fpaov.values.([]string) { 980 values = append(values, v) 981 } 982 case Secret_FieldPathSelectorDescription: 983 for _, v := range fpaov.values.([]string) { 984 values = append(values, v) 985 } 986 case Secret_FieldPathSelectorEncData: 987 for _, v := range fpaov.values.([][]byte) { 988 values = append(values, v) 989 } 990 case Secret_FieldPathSelectorData: 991 for _, v := range fpaov.values.([]map[string]string) { 992 values = append(values, v) 993 } 994 } 995 return 996 } 997 func (fpaov *Secret_FieldTerminalPathArrayOfValues) AsNameArrayOfValues() ([]*Name, bool) { 998 res, ok := fpaov.values.([]*Name) 999 return res, ok 1000 } 1001 func (fpaov *Secret_FieldTerminalPathArrayOfValues) AsMetadataArrayOfValues() ([]*meta.Meta, bool) { 1002 res, ok := fpaov.values.([]*meta.Meta) 1003 return res, ok 1004 } 1005 func (fpaov *Secret_FieldTerminalPathArrayOfValues) AsDisplayNameArrayOfValues() ([]string, bool) { 1006 res, ok := fpaov.values.([]string) 1007 return res, ok 1008 } 1009 func (fpaov *Secret_FieldTerminalPathArrayOfValues) AsDescriptionArrayOfValues() ([]string, bool) { 1010 res, ok := fpaov.values.([]string) 1011 return res, ok 1012 } 1013 func (fpaov *Secret_FieldTerminalPathArrayOfValues) AsEncDataArrayOfValues() ([][]byte, bool) { 1014 res, ok := fpaov.values.([][]byte) 1015 return res, ok 1016 } 1017 func (fpaov *Secret_FieldTerminalPathArrayOfValues) AsDataArrayOfValues() ([]map[string]string, bool) { 1018 res, ok := fpaov.values.([]map[string]string) 1019 return res, ok 1020 } 1021 1022 type Secret_FieldPathMapArrayOfValues struct { 1023 Secret_FieldPathMap 1024 values interface{} 1025 } 1026 1027 var _ Secret_FieldPathArrayOfValues = (*Secret_FieldPathMapArrayOfValues)(nil) 1028 1029 func (fpmaov *Secret_FieldPathMapArrayOfValues) GetRawValues() (values []interface{}) { 1030 switch fpmaov.selector { 1031 case Secret_FieldPathSelectorData: 1032 for _, v := range fpmaov.values.([]string) { 1033 values = append(values, v) 1034 } 1035 } 1036 return 1037 } 1038 func (fpmaov *Secret_FieldPathMapArrayOfValues) AsDataArrayOfElementValues() ([]string, bool) { 1039 res, ok := fpmaov.values.([]string) 1040 return res, ok 1041 } 1042 1043 type Secret_FieldSubPathArrayOfValues struct { 1044 Secret_FieldPath 1045 subPathArrayOfValues gotenobject.FieldPathArrayOfValues 1046 } 1047 1048 var _ Secret_FieldPathArrayOfValues = (*Secret_FieldSubPathArrayOfValues)(nil) 1049 1050 func (fpsaov *Secret_FieldSubPathArrayOfValues) GetRawValues() []interface{} { 1051 return fpsaov.subPathArrayOfValues.GetRawValues() 1052 } 1053 func (fpsaov *Secret_FieldSubPathArrayOfValues) AsMetadataPathArrayOfValues() (meta.Meta_FieldPathArrayOfValues, bool) { 1054 res, ok := fpsaov.subPathArrayOfValues.(meta.Meta_FieldPathArrayOfValues) 1055 return res, ok 1056 }