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