github.com/cloudwan/edgelq-sdk@v1.15.4/iam/resources/v1/organization/organization.pb.fieldpath.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/iam/proto/v1/organization.proto 3 // DO NOT EDIT!!! 4 5 package organization 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_common "github.com/cloudwan/edgelq-sdk/iam/resources/v1/common" 27 meta_service "github.com/cloudwan/goten-sdk/meta-service/resources/v1/service" 28 meta "github.com/cloudwan/goten-sdk/types/meta" 29 multi_region_policy "github.com/cloudwan/goten-sdk/types/multi_region_policy" 30 ) 31 32 // ensure the imports are used 33 var ( 34 _ = new(json.Marshaler) 35 _ = new(fmt.Stringer) 36 _ = reflect.DeepEqual 37 _ = strings.Builder{} 38 _ = time.Second 39 40 _ = strcase.ToLowerCamel 41 _ = codes.NotFound 42 _ = status.Status{} 43 _ = protojson.UnmarshalOptions{} 44 _ = new(proto.Message) 45 _ = protoregistry.GlobalTypes 46 47 _ = new(gotenobject.FieldPath) 48 ) 49 50 // make sure we're using proto imports 51 var ( 52 _ = &iam_common.PCR{} 53 _ = &meta_service.Service{} 54 _ = &meta.Meta{} 55 _ = &multi_region_policy.MultiRegionPolicy{} 56 ) 57 58 // FieldPath provides implementation to handle 59 // https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto 60 type Organization_FieldPath interface { 61 gotenobject.FieldPath 62 Selector() Organization_FieldPathSelector 63 Get(source *Organization) []interface{} 64 GetSingle(source *Organization) (interface{}, bool) 65 ClearValue(item *Organization) 66 67 // Those methods build corresponding Organization_FieldPathValue 68 // (or array of values) and holds passed value. Panics if injected type is incorrect. 69 WithIValue(value interface{}) Organization_FieldPathValue 70 WithIArrayOfValues(values interface{}) Organization_FieldPathArrayOfValues 71 WithIArrayItemValue(value interface{}) Organization_FieldPathArrayItemValue 72 } 73 74 type Organization_FieldPathSelector int32 75 76 const ( 77 Organization_FieldPathSelectorName Organization_FieldPathSelector = 0 78 Organization_FieldPathSelectorMetadata Organization_FieldPathSelector = 1 79 Organization_FieldPathSelectorTitle Organization_FieldPathSelector = 2 80 Organization_FieldPathSelectorDescription Organization_FieldPathSelector = 3 81 Organization_FieldPathSelectorParentOrganization Organization_FieldPathSelector = 4 82 Organization_FieldPathSelectorMultiRegionPolicy Organization_FieldPathSelector = 5 83 Organization_FieldPathSelectorAllowedServices Organization_FieldPathSelector = 6 84 Organization_FieldPathSelectorBusinessTier Organization_FieldPathSelector = 7 85 Organization_FieldPathSelectorServiceTiers Organization_FieldPathSelector = 8 86 Organization_FieldPathSelectorRootOrganization Organization_FieldPathSelector = 9 87 Organization_FieldPathSelectorAncestryPath Organization_FieldPathSelector = 10 88 Organization_FieldPathSelectorServiceErrors Organization_FieldPathSelector = 11 89 Organization_FieldPathSelectorServicesGeneration Organization_FieldPathSelector = 12 90 ) 91 92 func (s Organization_FieldPathSelector) String() string { 93 switch s { 94 case Organization_FieldPathSelectorName: 95 return "name" 96 case Organization_FieldPathSelectorMetadata: 97 return "metadata" 98 case Organization_FieldPathSelectorTitle: 99 return "title" 100 case Organization_FieldPathSelectorDescription: 101 return "description" 102 case Organization_FieldPathSelectorParentOrganization: 103 return "parent_organization" 104 case Organization_FieldPathSelectorMultiRegionPolicy: 105 return "multi_region_policy" 106 case Organization_FieldPathSelectorAllowedServices: 107 return "allowed_services" 108 case Organization_FieldPathSelectorBusinessTier: 109 return "business_tier" 110 case Organization_FieldPathSelectorServiceTiers: 111 return "service_tiers" 112 case Organization_FieldPathSelectorRootOrganization: 113 return "root_organization" 114 case Organization_FieldPathSelectorAncestryPath: 115 return "ancestry_path" 116 case Organization_FieldPathSelectorServiceErrors: 117 return "service_errors" 118 case Organization_FieldPathSelectorServicesGeneration: 119 return "services_generation" 120 default: 121 panic(fmt.Sprintf("Invalid selector for Organization: %d", s)) 122 } 123 } 124 125 func BuildOrganization_FieldPath(fp gotenobject.RawFieldPath) (Organization_FieldPath, error) { 126 if len(fp) == 0 { 127 return nil, status.Error(codes.InvalidArgument, "empty field path for object Organization") 128 } 129 if len(fp) == 1 { 130 switch fp[0] { 131 case "name": 132 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorName}, nil 133 case "metadata": 134 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorMetadata}, nil 135 case "title": 136 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorTitle}, nil 137 case "description": 138 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorDescription}, nil 139 case "parent_organization", "parentOrganization", "parent-organization": 140 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorParentOrganization}, nil 141 case "multi_region_policy", "multiRegionPolicy", "multi-region-policy": 142 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorMultiRegionPolicy}, nil 143 case "allowed_services", "allowedServices", "allowed-services": 144 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorAllowedServices}, nil 145 case "business_tier", "businessTier", "business-tier": 146 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorBusinessTier}, nil 147 case "service_tiers", "serviceTiers", "service-tiers": 148 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorServiceTiers}, nil 149 case "root_organization", "rootOrganization", "root-organization": 150 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorRootOrganization}, nil 151 case "ancestry_path", "ancestryPath", "ancestry-path": 152 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorAncestryPath}, nil 153 case "service_errors", "serviceErrors", "service-errors": 154 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorServiceErrors}, nil 155 case "services_generation", "servicesGeneration", "services-generation": 156 return &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorServicesGeneration}, nil 157 } 158 } else { 159 switch fp[0] { 160 case "metadata": 161 if subpath, err := meta.BuildMeta_FieldPath(fp[1:]); err != nil { 162 return nil, err 163 } else { 164 return &Organization_FieldSubPath{selector: Organization_FieldPathSelectorMetadata, subPath: subpath}, nil 165 } 166 case "multi_region_policy", "multiRegionPolicy", "multi-region-policy": 167 if subpath, err := multi_region_policy.BuildMultiRegionPolicy_FieldPath(fp[1:]); err != nil { 168 return nil, err 169 } else { 170 return &Organization_FieldSubPath{selector: Organization_FieldPathSelectorMultiRegionPolicy, subPath: subpath}, nil 171 } 172 case "service_tiers", "serviceTiers", "service-tiers": 173 if subpath, err := iam_common.BuildServiceBusinessTier_FieldPath(fp[1:]); err != nil { 174 return nil, err 175 } else { 176 return &Organization_FieldSubPath{selector: Organization_FieldPathSelectorServiceTiers, subPath: subpath}, nil 177 } 178 case "service_errors", "serviceErrors", "service-errors": 179 if len(fp) > 2 { 180 return nil, status.Errorf(codes.InvalidArgument, "sub path for maps ('%s') are not supported (object Organization)", fp) 181 } 182 return &Organization_FieldPathMap{selector: Organization_FieldPathSelectorServiceErrors, key: fp[1]}, nil 183 } 184 } 185 return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object Organization", fp) 186 } 187 188 func ParseOrganization_FieldPath(rawField string) (Organization_FieldPath, error) { 189 fp, err := gotenobject.ParseRawFieldPath(rawField) 190 if err != nil { 191 return nil, err 192 } 193 return BuildOrganization_FieldPath(fp) 194 } 195 196 func MustParseOrganization_FieldPath(rawField string) Organization_FieldPath { 197 fp, err := ParseOrganization_FieldPath(rawField) 198 if err != nil { 199 panic(err) 200 } 201 return fp 202 } 203 204 type Organization_FieldTerminalPath struct { 205 selector Organization_FieldPathSelector 206 } 207 208 var _ Organization_FieldPath = (*Organization_FieldTerminalPath)(nil) 209 210 func (fp *Organization_FieldTerminalPath) Selector() Organization_FieldPathSelector { 211 return fp.selector 212 } 213 214 // String returns path representation in proto convention 215 func (fp *Organization_FieldTerminalPath) String() string { 216 return fp.selector.String() 217 } 218 219 // JSONString returns path representation is JSON convention 220 func (fp *Organization_FieldTerminalPath) JSONString() string { 221 return strcase.ToLowerCamel(fp.String()) 222 } 223 224 // Get returns all values pointed by specific field from source Organization 225 func (fp *Organization_FieldTerminalPath) Get(source *Organization) (values []interface{}) { 226 if source != nil { 227 switch fp.selector { 228 case Organization_FieldPathSelectorName: 229 if source.Name != nil { 230 values = append(values, source.Name) 231 } 232 case Organization_FieldPathSelectorMetadata: 233 if source.Metadata != nil { 234 values = append(values, source.Metadata) 235 } 236 case Organization_FieldPathSelectorTitle: 237 values = append(values, source.Title) 238 case Organization_FieldPathSelectorDescription: 239 values = append(values, source.Description) 240 case Organization_FieldPathSelectorParentOrganization: 241 if source.ParentOrganization != nil { 242 values = append(values, source.ParentOrganization) 243 } 244 case Organization_FieldPathSelectorMultiRegionPolicy: 245 if source.MultiRegionPolicy != nil { 246 values = append(values, source.MultiRegionPolicy) 247 } 248 case Organization_FieldPathSelectorAllowedServices: 249 for _, value := range source.GetAllowedServices() { 250 values = append(values, value) 251 } 252 case Organization_FieldPathSelectorBusinessTier: 253 values = append(values, source.BusinessTier) 254 case Organization_FieldPathSelectorServiceTiers: 255 for _, value := range source.GetServiceTiers() { 256 values = append(values, value) 257 } 258 case Organization_FieldPathSelectorRootOrganization: 259 if source.RootOrganization != nil { 260 values = append(values, source.RootOrganization) 261 } 262 case Organization_FieldPathSelectorAncestryPath: 263 for _, value := range source.GetAncestryPath() { 264 values = append(values, value) 265 } 266 case Organization_FieldPathSelectorServiceErrors: 267 if source.ServiceErrors != nil { 268 values = append(values, source.ServiceErrors) 269 } 270 case Organization_FieldPathSelectorServicesGeneration: 271 values = append(values, source.ServicesGeneration) 272 default: 273 panic(fmt.Sprintf("Invalid selector for Organization: %d", fp.selector)) 274 } 275 } 276 return 277 } 278 279 func (fp *Organization_FieldTerminalPath) GetRaw(source proto.Message) []interface{} { 280 return fp.Get(source.(*Organization)) 281 } 282 283 // GetSingle returns value pointed by specific field of from source Organization 284 func (fp *Organization_FieldTerminalPath) GetSingle(source *Organization) (interface{}, bool) { 285 switch fp.selector { 286 case Organization_FieldPathSelectorName: 287 res := source.GetName() 288 return res, res != nil 289 case Organization_FieldPathSelectorMetadata: 290 res := source.GetMetadata() 291 return res, res != nil 292 case Organization_FieldPathSelectorTitle: 293 return source.GetTitle(), source != nil 294 case Organization_FieldPathSelectorDescription: 295 return source.GetDescription(), source != nil 296 case Organization_FieldPathSelectorParentOrganization: 297 res := source.GetParentOrganization() 298 return res, res != nil 299 case Organization_FieldPathSelectorMultiRegionPolicy: 300 res := source.GetMultiRegionPolicy() 301 return res, res != nil 302 case Organization_FieldPathSelectorAllowedServices: 303 res := source.GetAllowedServices() 304 return res, res != nil 305 case Organization_FieldPathSelectorBusinessTier: 306 return source.GetBusinessTier(), source != nil 307 case Organization_FieldPathSelectorServiceTiers: 308 res := source.GetServiceTiers() 309 return res, res != nil 310 case Organization_FieldPathSelectorRootOrganization: 311 res := source.GetRootOrganization() 312 return res, res != nil 313 case Organization_FieldPathSelectorAncestryPath: 314 res := source.GetAncestryPath() 315 return res, res != nil 316 case Organization_FieldPathSelectorServiceErrors: 317 res := source.GetServiceErrors() 318 return res, res != nil 319 case Organization_FieldPathSelectorServicesGeneration: 320 return source.GetServicesGeneration(), source != nil 321 default: 322 panic(fmt.Sprintf("Invalid selector for Organization: %d", fp.selector)) 323 } 324 } 325 326 func (fp *Organization_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 327 return fp.GetSingle(source.(*Organization)) 328 } 329 330 // GetDefault returns a default value of the field type 331 func (fp *Organization_FieldTerminalPath) GetDefault() interface{} { 332 switch fp.selector { 333 case Organization_FieldPathSelectorName: 334 return (*Name)(nil) 335 case Organization_FieldPathSelectorMetadata: 336 return (*meta.Meta)(nil) 337 case Organization_FieldPathSelectorTitle: 338 return "" 339 case Organization_FieldPathSelectorDescription: 340 return "" 341 case Organization_FieldPathSelectorParentOrganization: 342 return (*Reference)(nil) 343 case Organization_FieldPathSelectorMultiRegionPolicy: 344 return (*multi_region_policy.MultiRegionPolicy)(nil) 345 case Organization_FieldPathSelectorAllowedServices: 346 return ([]*meta_service.Reference)(nil) 347 case Organization_FieldPathSelectorBusinessTier: 348 return iam_common.BusinessTier_UNDEFINED 349 case Organization_FieldPathSelectorServiceTiers: 350 return ([]*iam_common.ServiceBusinessTier)(nil) 351 case Organization_FieldPathSelectorRootOrganization: 352 return (*Name)(nil) 353 case Organization_FieldPathSelectorAncestryPath: 354 return ([]*Name)(nil) 355 case Organization_FieldPathSelectorServiceErrors: 356 return (map[string]*iam_common.ServiceErrors)(nil) 357 case Organization_FieldPathSelectorServicesGeneration: 358 return int64(0) 359 default: 360 panic(fmt.Sprintf("Invalid selector for Organization: %d", fp.selector)) 361 } 362 } 363 364 func (fp *Organization_FieldTerminalPath) ClearValue(item *Organization) { 365 if item != nil { 366 switch fp.selector { 367 case Organization_FieldPathSelectorName: 368 item.Name = nil 369 case Organization_FieldPathSelectorMetadata: 370 item.Metadata = nil 371 case Organization_FieldPathSelectorTitle: 372 item.Title = "" 373 case Organization_FieldPathSelectorDescription: 374 item.Description = "" 375 case Organization_FieldPathSelectorParentOrganization: 376 item.ParentOrganization = nil 377 case Organization_FieldPathSelectorMultiRegionPolicy: 378 item.MultiRegionPolicy = nil 379 case Organization_FieldPathSelectorAllowedServices: 380 item.AllowedServices = nil 381 case Organization_FieldPathSelectorBusinessTier: 382 item.BusinessTier = iam_common.BusinessTier_UNDEFINED 383 case Organization_FieldPathSelectorServiceTiers: 384 item.ServiceTiers = nil 385 case Organization_FieldPathSelectorRootOrganization: 386 item.RootOrganization = nil 387 case Organization_FieldPathSelectorAncestryPath: 388 item.AncestryPath = nil 389 case Organization_FieldPathSelectorServiceErrors: 390 item.ServiceErrors = nil 391 case Organization_FieldPathSelectorServicesGeneration: 392 item.ServicesGeneration = int64(0) 393 default: 394 panic(fmt.Sprintf("Invalid selector for Organization: %d", fp.selector)) 395 } 396 } 397 } 398 399 func (fp *Organization_FieldTerminalPath) ClearValueRaw(item proto.Message) { 400 fp.ClearValue(item.(*Organization)) 401 } 402 403 // IsLeaf - whether field path is holds simple value 404 func (fp *Organization_FieldTerminalPath) IsLeaf() bool { 405 return fp.selector == Organization_FieldPathSelectorName || 406 fp.selector == Organization_FieldPathSelectorTitle || 407 fp.selector == Organization_FieldPathSelectorDescription || 408 fp.selector == Organization_FieldPathSelectorParentOrganization || 409 fp.selector == Organization_FieldPathSelectorAllowedServices || 410 fp.selector == Organization_FieldPathSelectorBusinessTier || 411 fp.selector == Organization_FieldPathSelectorRootOrganization || 412 fp.selector == Organization_FieldPathSelectorAncestryPath || 413 fp.selector == Organization_FieldPathSelectorServicesGeneration 414 } 415 416 func (fp *Organization_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 417 return []gotenobject.FieldPath{fp} 418 } 419 420 func (fp *Organization_FieldTerminalPath) WithIValue(value interface{}) Organization_FieldPathValue { 421 switch fp.selector { 422 case Organization_FieldPathSelectorName: 423 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.(*Name)} 424 case Organization_FieldPathSelectorMetadata: 425 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.(*meta.Meta)} 426 case Organization_FieldPathSelectorTitle: 427 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.(string)} 428 case Organization_FieldPathSelectorDescription: 429 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.(string)} 430 case Organization_FieldPathSelectorParentOrganization: 431 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.(*Reference)} 432 case Organization_FieldPathSelectorMultiRegionPolicy: 433 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.(*multi_region_policy.MultiRegionPolicy)} 434 case Organization_FieldPathSelectorAllowedServices: 435 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.([]*meta_service.Reference)} 436 case Organization_FieldPathSelectorBusinessTier: 437 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.(iam_common.BusinessTier)} 438 case Organization_FieldPathSelectorServiceTiers: 439 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.([]*iam_common.ServiceBusinessTier)} 440 case Organization_FieldPathSelectorRootOrganization: 441 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.(*Name)} 442 case Organization_FieldPathSelectorAncestryPath: 443 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.([]*Name)} 444 case Organization_FieldPathSelectorServiceErrors: 445 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.(map[string]*iam_common.ServiceErrors)} 446 case Organization_FieldPathSelectorServicesGeneration: 447 return &Organization_FieldTerminalPathValue{Organization_FieldTerminalPath: *fp, value: value.(int64)} 448 default: 449 panic(fmt.Sprintf("Invalid selector for Organization: %d", fp.selector)) 450 } 451 } 452 453 func (fp *Organization_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 454 return fp.WithIValue(value) 455 } 456 457 func (fp *Organization_FieldTerminalPath) WithIArrayOfValues(values interface{}) Organization_FieldPathArrayOfValues { 458 fpaov := &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp} 459 switch fp.selector { 460 case Organization_FieldPathSelectorName: 461 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([]*Name)} 462 case Organization_FieldPathSelectorMetadata: 463 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([]*meta.Meta)} 464 case Organization_FieldPathSelectorTitle: 465 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([]string)} 466 case Organization_FieldPathSelectorDescription: 467 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([]string)} 468 case Organization_FieldPathSelectorParentOrganization: 469 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([]*Reference)} 470 case Organization_FieldPathSelectorMultiRegionPolicy: 471 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([]*multi_region_policy.MultiRegionPolicy)} 472 case Organization_FieldPathSelectorAllowedServices: 473 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([][]*meta_service.Reference)} 474 case Organization_FieldPathSelectorBusinessTier: 475 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([]iam_common.BusinessTier)} 476 case Organization_FieldPathSelectorServiceTiers: 477 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([][]*iam_common.ServiceBusinessTier)} 478 case Organization_FieldPathSelectorRootOrganization: 479 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([]*Name)} 480 case Organization_FieldPathSelectorAncestryPath: 481 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([][]*Name)} 482 case Organization_FieldPathSelectorServiceErrors: 483 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([]map[string]*iam_common.ServiceErrors)} 484 case Organization_FieldPathSelectorServicesGeneration: 485 return &Organization_FieldTerminalPathArrayOfValues{Organization_FieldTerminalPath: *fp, values: values.([]int64)} 486 default: 487 panic(fmt.Sprintf("Invalid selector for Organization: %d", fp.selector)) 488 } 489 return fpaov 490 } 491 492 func (fp *Organization_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 493 return fp.WithIArrayOfValues(values) 494 } 495 496 func (fp *Organization_FieldTerminalPath) WithIArrayItemValue(value interface{}) Organization_FieldPathArrayItemValue { 497 switch fp.selector { 498 case Organization_FieldPathSelectorAllowedServices: 499 return &Organization_FieldTerminalPathArrayItemValue{Organization_FieldTerminalPath: *fp, value: value.(*meta_service.Reference)} 500 case Organization_FieldPathSelectorServiceTiers: 501 return &Organization_FieldTerminalPathArrayItemValue{Organization_FieldTerminalPath: *fp, value: value.(*iam_common.ServiceBusinessTier)} 502 case Organization_FieldPathSelectorAncestryPath: 503 return &Organization_FieldTerminalPathArrayItemValue{Organization_FieldTerminalPath: *fp, value: value.(*Name)} 504 default: 505 panic(fmt.Sprintf("Invalid selector for Organization: %d", fp.selector)) 506 } 507 } 508 509 func (fp *Organization_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 510 return fp.WithIArrayItemValue(value) 511 } 512 513 // FieldPath for map type with additional Key information 514 type Organization_FieldPathMap struct { 515 key string 516 selector Organization_FieldPathSelector 517 } 518 519 var _ Organization_FieldPath = (*Organization_FieldPathMap)(nil) 520 521 func (fpm *Organization_FieldPathMap) Selector() Organization_FieldPathSelector { 522 return fpm.selector 523 } 524 525 func (fpm *Organization_FieldPathMap) Key() string { 526 return fpm.key 527 } 528 529 // String returns path representation in proto convention 530 func (fpm *Organization_FieldPathMap) String() string { 531 return fpm.selector.String() + "." + fpm.key 532 } 533 534 // JSONString returns path representation is JSON convention. Note that map keys are not transformed 535 func (fpm *Organization_FieldPathMap) JSONString() string { 536 return strcase.ToLowerCamel(fpm.selector.String()) + "." + fpm.key 537 } 538 539 // Get returns all values pointed by selected field map key from source Organization 540 func (fpm *Organization_FieldPathMap) Get(source *Organization) (values []interface{}) { 541 switch fpm.selector { 542 case Organization_FieldPathSelectorServiceErrors: 543 if value, ok := source.GetServiceErrors()[fpm.key]; ok { 544 values = append(values, value) 545 } 546 default: 547 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpm.selector)) 548 } 549 return 550 } 551 552 func (fpm *Organization_FieldPathMap) GetRaw(source proto.Message) []interface{} { 553 return fpm.Get(source.(*Organization)) 554 } 555 556 // GetSingle returns value by selected field map key from source Organization 557 func (fpm *Organization_FieldPathMap) GetSingle(source *Organization) (interface{}, bool) { 558 switch fpm.selector { 559 case Organization_FieldPathSelectorServiceErrors: 560 res, ok := source.GetServiceErrors()[fpm.key] 561 return res, ok 562 default: 563 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpm.selector)) 564 } 565 } 566 567 func (fpm *Organization_FieldPathMap) GetSingleRaw(source proto.Message) (interface{}, bool) { 568 return fpm.GetSingle(source.(*Organization)) 569 } 570 571 // GetDefault returns a default value of the field type 572 func (fpm *Organization_FieldPathMap) GetDefault() interface{} { 573 switch fpm.selector { 574 case Organization_FieldPathSelectorServiceErrors: 575 var v *iam_common.ServiceErrors 576 return v 577 default: 578 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpm.selector)) 579 } 580 } 581 582 func (fpm *Organization_FieldPathMap) ClearValue(item *Organization) { 583 if item != nil { 584 switch fpm.selector { 585 case Organization_FieldPathSelectorServiceErrors: 586 delete(item.ServiceErrors, fpm.key) 587 default: 588 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpm.selector)) 589 } 590 } 591 } 592 593 func (fpm *Organization_FieldPathMap) ClearValueRaw(item proto.Message) { 594 fpm.ClearValue(item.(*Organization)) 595 } 596 597 // IsLeaf - whether field path is holds simple value 598 func (fpm *Organization_FieldPathMap) IsLeaf() bool { 599 switch fpm.selector { 600 case Organization_FieldPathSelectorServiceErrors: 601 return false 602 default: 603 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpm.selector)) 604 } 605 } 606 607 func (fpm *Organization_FieldPathMap) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 608 return []gotenobject.FieldPath{fpm} 609 } 610 611 func (fpm *Organization_FieldPathMap) WithIValue(value interface{}) Organization_FieldPathValue { 612 switch fpm.selector { 613 case Organization_FieldPathSelectorServiceErrors: 614 return &Organization_FieldPathMapValue{Organization_FieldPathMap: *fpm, value: value.(*iam_common.ServiceErrors)} 615 default: 616 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpm.selector)) 617 } 618 } 619 620 func (fpm *Organization_FieldPathMap) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 621 return fpm.WithIValue(value) 622 } 623 624 func (fpm *Organization_FieldPathMap) WithIArrayOfValues(values interface{}) Organization_FieldPathArrayOfValues { 625 switch fpm.selector { 626 case Organization_FieldPathSelectorServiceErrors: 627 return &Organization_FieldPathMapArrayOfValues{Organization_FieldPathMap: *fpm, values: values.([]*iam_common.ServiceErrors)} 628 default: 629 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpm.selector)) 630 } 631 } 632 633 func (fpm *Organization_FieldPathMap) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 634 return fpm.WithIArrayOfValues(values) 635 } 636 637 func (fpm *Organization_FieldPathMap) WithIArrayItemValue(value interface{}) Organization_FieldPathArrayItemValue { 638 panic("Cannot create array item value from map fieldpath") 639 } 640 641 func (fpm *Organization_FieldPathMap) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 642 return fpm.WithIArrayItemValue(value) 643 } 644 645 type Organization_FieldSubPath struct { 646 selector Organization_FieldPathSelector 647 subPath gotenobject.FieldPath 648 } 649 650 var _ Organization_FieldPath = (*Organization_FieldSubPath)(nil) 651 652 func (fps *Organization_FieldSubPath) Selector() Organization_FieldPathSelector { 653 return fps.selector 654 } 655 func (fps *Organization_FieldSubPath) AsMetadataSubPath() (meta.Meta_FieldPath, bool) { 656 res, ok := fps.subPath.(meta.Meta_FieldPath) 657 return res, ok 658 } 659 func (fps *Organization_FieldSubPath) AsMultiRegionPolicySubPath() (multi_region_policy.MultiRegionPolicy_FieldPath, bool) { 660 res, ok := fps.subPath.(multi_region_policy.MultiRegionPolicy_FieldPath) 661 return res, ok 662 } 663 func (fps *Organization_FieldSubPath) AsServiceTiersSubPath() (iam_common.ServiceBusinessTier_FieldPath, bool) { 664 res, ok := fps.subPath.(iam_common.ServiceBusinessTier_FieldPath) 665 return res, ok 666 } 667 668 // String returns path representation in proto convention 669 func (fps *Organization_FieldSubPath) String() string { 670 return fps.selector.String() + "." + fps.subPath.String() 671 } 672 673 // JSONString returns path representation is JSON convention 674 func (fps *Organization_FieldSubPath) JSONString() string { 675 return strcase.ToLowerCamel(fps.selector.String()) + "." + fps.subPath.JSONString() 676 } 677 678 // Get returns all values pointed by selected field from source Organization 679 func (fps *Organization_FieldSubPath) Get(source *Organization) (values []interface{}) { 680 switch fps.selector { 681 case Organization_FieldPathSelectorMetadata: 682 values = append(values, fps.subPath.GetRaw(source.GetMetadata())...) 683 case Organization_FieldPathSelectorMultiRegionPolicy: 684 values = append(values, fps.subPath.GetRaw(source.GetMultiRegionPolicy())...) 685 case Organization_FieldPathSelectorServiceTiers: 686 for _, item := range source.GetServiceTiers() { 687 values = append(values, fps.subPath.GetRaw(item)...) 688 } 689 default: 690 panic(fmt.Sprintf("Invalid selector for Organization: %d", fps.selector)) 691 } 692 return 693 } 694 695 func (fps *Organization_FieldSubPath) GetRaw(source proto.Message) []interface{} { 696 return fps.Get(source.(*Organization)) 697 } 698 699 // GetSingle returns value of selected field from source Organization 700 func (fps *Organization_FieldSubPath) GetSingle(source *Organization) (interface{}, bool) { 701 switch fps.selector { 702 case Organization_FieldPathSelectorMetadata: 703 if source.GetMetadata() == nil { 704 return nil, false 705 } 706 return fps.subPath.GetSingleRaw(source.GetMetadata()) 707 case Organization_FieldPathSelectorMultiRegionPolicy: 708 if source.GetMultiRegionPolicy() == nil { 709 return nil, false 710 } 711 return fps.subPath.GetSingleRaw(source.GetMultiRegionPolicy()) 712 case Organization_FieldPathSelectorServiceTiers: 713 if len(source.GetServiceTiers()) == 0 { 714 return nil, false 715 } 716 return fps.subPath.GetSingleRaw(source.GetServiceTiers()[0]) 717 default: 718 panic(fmt.Sprintf("Invalid selector for Organization: %d", fps.selector)) 719 } 720 } 721 722 func (fps *Organization_FieldSubPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 723 return fps.GetSingle(source.(*Organization)) 724 } 725 726 // GetDefault returns a default value of the field type 727 func (fps *Organization_FieldSubPath) GetDefault() interface{} { 728 return fps.subPath.GetDefault() 729 } 730 731 func (fps *Organization_FieldSubPath) ClearValue(item *Organization) { 732 if item != nil { 733 switch fps.selector { 734 case Organization_FieldPathSelectorMetadata: 735 fps.subPath.ClearValueRaw(item.Metadata) 736 case Organization_FieldPathSelectorMultiRegionPolicy: 737 fps.subPath.ClearValueRaw(item.MultiRegionPolicy) 738 case Organization_FieldPathSelectorServiceTiers: 739 for _, subItem := range item.ServiceTiers { 740 fps.subPath.ClearValueRaw(subItem) 741 } 742 default: 743 panic(fmt.Sprintf("Invalid selector for Organization: %d", fps.selector)) 744 } 745 } 746 } 747 748 func (fps *Organization_FieldSubPath) ClearValueRaw(item proto.Message) { 749 fps.ClearValue(item.(*Organization)) 750 } 751 752 // IsLeaf - whether field path is holds simple value 753 func (fps *Organization_FieldSubPath) IsLeaf() bool { 754 return fps.subPath.IsLeaf() 755 } 756 757 func (fps *Organization_FieldSubPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 758 iPaths := []gotenobject.FieldPath{&Organization_FieldTerminalPath{selector: fps.selector}} 759 iPaths = append(iPaths, fps.subPath.SplitIntoTerminalIPaths()...) 760 return iPaths 761 } 762 763 func (fps *Organization_FieldSubPath) WithIValue(value interface{}) Organization_FieldPathValue { 764 return &Organization_FieldSubPathValue{fps, fps.subPath.WithRawIValue(value)} 765 } 766 767 func (fps *Organization_FieldSubPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 768 return fps.WithIValue(value) 769 } 770 771 func (fps *Organization_FieldSubPath) WithIArrayOfValues(values interface{}) Organization_FieldPathArrayOfValues { 772 return &Organization_FieldSubPathArrayOfValues{fps, fps.subPath.WithRawIArrayOfValues(values)} 773 } 774 775 func (fps *Organization_FieldSubPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 776 return fps.WithIArrayOfValues(values) 777 } 778 779 func (fps *Organization_FieldSubPath) WithIArrayItemValue(value interface{}) Organization_FieldPathArrayItemValue { 780 return &Organization_FieldSubPathArrayItemValue{fps, fps.subPath.WithRawIArrayItemValue(value)} 781 } 782 783 func (fps *Organization_FieldSubPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 784 return fps.WithIArrayItemValue(value) 785 } 786 787 // Organization_FieldPathValue allows storing values for Organization fields according to their type 788 type Organization_FieldPathValue interface { 789 Organization_FieldPath 790 gotenobject.FieldPathValue 791 SetTo(target **Organization) 792 CompareWith(*Organization) (cmp int, comparable bool) 793 } 794 795 func ParseOrganization_FieldPathValue(pathStr, valueStr string) (Organization_FieldPathValue, error) { 796 fp, err := ParseOrganization_FieldPath(pathStr) 797 if err != nil { 798 return nil, err 799 } 800 fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr) 801 if err != nil { 802 return nil, status.Errorf(codes.InvalidArgument, "error parsing Organization field path value from %s: %v", valueStr, err) 803 } 804 return fpv.(Organization_FieldPathValue), nil 805 } 806 807 func MustParseOrganization_FieldPathValue(pathStr, valueStr string) Organization_FieldPathValue { 808 fpv, err := ParseOrganization_FieldPathValue(pathStr, valueStr) 809 if err != nil { 810 panic(err) 811 } 812 return fpv 813 } 814 815 type Organization_FieldTerminalPathValue struct { 816 Organization_FieldTerminalPath 817 value interface{} 818 } 819 820 var _ Organization_FieldPathValue = (*Organization_FieldTerminalPathValue)(nil) 821 822 // GetRawValue returns raw value stored under selected path for 'Organization' as interface{} 823 func (fpv *Organization_FieldTerminalPathValue) GetRawValue() interface{} { 824 return fpv.value 825 } 826 func (fpv *Organization_FieldTerminalPathValue) AsNameValue() (*Name, bool) { 827 res, ok := fpv.value.(*Name) 828 return res, ok 829 } 830 func (fpv *Organization_FieldTerminalPathValue) AsMetadataValue() (*meta.Meta, bool) { 831 res, ok := fpv.value.(*meta.Meta) 832 return res, ok 833 } 834 func (fpv *Organization_FieldTerminalPathValue) AsTitleValue() (string, bool) { 835 res, ok := fpv.value.(string) 836 return res, ok 837 } 838 func (fpv *Organization_FieldTerminalPathValue) AsDescriptionValue() (string, bool) { 839 res, ok := fpv.value.(string) 840 return res, ok 841 } 842 func (fpv *Organization_FieldTerminalPathValue) AsParentOrganizationValue() (*Reference, bool) { 843 res, ok := fpv.value.(*Reference) 844 return res, ok 845 } 846 func (fpv *Organization_FieldTerminalPathValue) AsMultiRegionPolicyValue() (*multi_region_policy.MultiRegionPolicy, bool) { 847 res, ok := fpv.value.(*multi_region_policy.MultiRegionPolicy) 848 return res, ok 849 } 850 func (fpv *Organization_FieldTerminalPathValue) AsAllowedServicesValue() ([]*meta_service.Reference, bool) { 851 res, ok := fpv.value.([]*meta_service.Reference) 852 return res, ok 853 } 854 func (fpv *Organization_FieldTerminalPathValue) AsBusinessTierValue() (iam_common.BusinessTier, bool) { 855 res, ok := fpv.value.(iam_common.BusinessTier) 856 return res, ok 857 } 858 func (fpv *Organization_FieldTerminalPathValue) AsServiceTiersValue() ([]*iam_common.ServiceBusinessTier, bool) { 859 res, ok := fpv.value.([]*iam_common.ServiceBusinessTier) 860 return res, ok 861 } 862 func (fpv *Organization_FieldTerminalPathValue) AsRootOrganizationValue() (*Name, bool) { 863 res, ok := fpv.value.(*Name) 864 return res, ok 865 } 866 func (fpv *Organization_FieldTerminalPathValue) AsAncestryPathValue() ([]*Name, bool) { 867 res, ok := fpv.value.([]*Name) 868 return res, ok 869 } 870 func (fpv *Organization_FieldTerminalPathValue) AsServiceErrorsValue() (map[string]*iam_common.ServiceErrors, bool) { 871 res, ok := fpv.value.(map[string]*iam_common.ServiceErrors) 872 return res, ok 873 } 874 func (fpv *Organization_FieldTerminalPathValue) AsServicesGenerationValue() (int64, bool) { 875 res, ok := fpv.value.(int64) 876 return res, ok 877 } 878 879 // SetTo stores value for selected field for object Organization 880 func (fpv *Organization_FieldTerminalPathValue) SetTo(target **Organization) { 881 if *target == nil { 882 *target = new(Organization) 883 } 884 switch fpv.selector { 885 case Organization_FieldPathSelectorName: 886 (*target).Name = fpv.value.(*Name) 887 case Organization_FieldPathSelectorMetadata: 888 (*target).Metadata = fpv.value.(*meta.Meta) 889 case Organization_FieldPathSelectorTitle: 890 (*target).Title = fpv.value.(string) 891 case Organization_FieldPathSelectorDescription: 892 (*target).Description = fpv.value.(string) 893 case Organization_FieldPathSelectorParentOrganization: 894 (*target).ParentOrganization = fpv.value.(*Reference) 895 case Organization_FieldPathSelectorMultiRegionPolicy: 896 (*target).MultiRegionPolicy = fpv.value.(*multi_region_policy.MultiRegionPolicy) 897 case Organization_FieldPathSelectorAllowedServices: 898 (*target).AllowedServices = fpv.value.([]*meta_service.Reference) 899 case Organization_FieldPathSelectorBusinessTier: 900 (*target).BusinessTier = fpv.value.(iam_common.BusinessTier) 901 case Organization_FieldPathSelectorServiceTiers: 902 (*target).ServiceTiers = fpv.value.([]*iam_common.ServiceBusinessTier) 903 case Organization_FieldPathSelectorRootOrganization: 904 (*target).RootOrganization = fpv.value.(*Name) 905 case Organization_FieldPathSelectorAncestryPath: 906 (*target).AncestryPath = fpv.value.([]*Name) 907 case Organization_FieldPathSelectorServiceErrors: 908 (*target).ServiceErrors = fpv.value.(map[string]*iam_common.ServiceErrors) 909 case Organization_FieldPathSelectorServicesGeneration: 910 (*target).ServicesGeneration = fpv.value.(int64) 911 default: 912 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpv.selector)) 913 } 914 } 915 916 func (fpv *Organization_FieldTerminalPathValue) SetToRaw(target proto.Message) { 917 typedObject := target.(*Organization) 918 fpv.SetTo(&typedObject) 919 } 920 921 // CompareWith compares value in the 'Organization_FieldTerminalPathValue' with the value under path in 'Organization'. 922 func (fpv *Organization_FieldTerminalPathValue) CompareWith(source *Organization) (int, bool) { 923 switch fpv.selector { 924 case Organization_FieldPathSelectorName: 925 leftValue := fpv.value.(*Name) 926 rightValue := source.GetName() 927 if leftValue == nil { 928 if rightValue != nil { 929 return -1, true 930 } 931 return 0, true 932 } 933 if rightValue == nil { 934 return 1, true 935 } 936 if leftValue.String() == rightValue.String() { 937 return 0, true 938 } else if leftValue.String() < rightValue.String() { 939 return -1, true 940 } else { 941 return 1, true 942 } 943 case Organization_FieldPathSelectorMetadata: 944 return 0, false 945 case Organization_FieldPathSelectorTitle: 946 leftValue := fpv.value.(string) 947 rightValue := source.GetTitle() 948 if (leftValue) == (rightValue) { 949 return 0, true 950 } else if (leftValue) < (rightValue) { 951 return -1, true 952 } else { 953 return 1, true 954 } 955 case Organization_FieldPathSelectorDescription: 956 leftValue := fpv.value.(string) 957 rightValue := source.GetDescription() 958 if (leftValue) == (rightValue) { 959 return 0, true 960 } else if (leftValue) < (rightValue) { 961 return -1, true 962 } else { 963 return 1, true 964 } 965 case Organization_FieldPathSelectorParentOrganization: 966 leftValue := fpv.value.(*Reference) 967 rightValue := source.GetParentOrganization() 968 if leftValue == nil { 969 if rightValue != nil { 970 return -1, true 971 } 972 return 0, true 973 } 974 if rightValue == nil { 975 return 1, true 976 } 977 if leftValue.String() == rightValue.String() { 978 return 0, true 979 } else if leftValue.String() < rightValue.String() { 980 return -1, true 981 } else { 982 return 1, true 983 } 984 case Organization_FieldPathSelectorMultiRegionPolicy: 985 return 0, false 986 case Organization_FieldPathSelectorAllowedServices: 987 return 0, false 988 case Organization_FieldPathSelectorBusinessTier: 989 leftValue := fpv.value.(iam_common.BusinessTier) 990 rightValue := source.GetBusinessTier() 991 if (leftValue) == (rightValue) { 992 return 0, true 993 } else if (leftValue) < (rightValue) { 994 return -1, true 995 } else { 996 return 1, true 997 } 998 case Organization_FieldPathSelectorServiceTiers: 999 return 0, false 1000 case Organization_FieldPathSelectorRootOrganization: 1001 leftValue := fpv.value.(*Name) 1002 rightValue := source.GetRootOrganization() 1003 if leftValue == nil { 1004 if rightValue != nil { 1005 return -1, true 1006 } 1007 return 0, true 1008 } 1009 if rightValue == nil { 1010 return 1, true 1011 } 1012 if leftValue.String() == rightValue.String() { 1013 return 0, true 1014 } else if leftValue.String() < rightValue.String() { 1015 return -1, true 1016 } else { 1017 return 1, true 1018 } 1019 case Organization_FieldPathSelectorAncestryPath: 1020 return 0, false 1021 case Organization_FieldPathSelectorServiceErrors: 1022 return 0, false 1023 case Organization_FieldPathSelectorServicesGeneration: 1024 leftValue := fpv.value.(int64) 1025 rightValue := source.GetServicesGeneration() 1026 if (leftValue) == (rightValue) { 1027 return 0, true 1028 } else if (leftValue) < (rightValue) { 1029 return -1, true 1030 } else { 1031 return 1, true 1032 } 1033 default: 1034 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpv.selector)) 1035 } 1036 } 1037 1038 func (fpv *Organization_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) { 1039 return fpv.CompareWith(source.(*Organization)) 1040 } 1041 1042 type Organization_FieldPathMapValue struct { 1043 Organization_FieldPathMap 1044 value interface{} 1045 } 1046 1047 var _ Organization_FieldPathValue = (*Organization_FieldPathMapValue)(nil) 1048 1049 // GetValue returns value stored under selected field in Organization as interface{} 1050 func (fpmv *Organization_FieldPathMapValue) GetRawValue() interface{} { 1051 return fpmv.value 1052 } 1053 func (fpmv *Organization_FieldPathMapValue) AsServiceErrorsElementValue() (*iam_common.ServiceErrors, bool) { 1054 res, ok := fpmv.value.(*iam_common.ServiceErrors) 1055 return res, ok 1056 } 1057 1058 // SetTo stores value for selected field in Organization 1059 func (fpmv *Organization_FieldPathMapValue) SetTo(target **Organization) { 1060 if *target == nil { 1061 *target = new(Organization) 1062 } 1063 switch fpmv.selector { 1064 case Organization_FieldPathSelectorServiceErrors: 1065 if (*target).ServiceErrors == nil { 1066 (*target).ServiceErrors = make(map[string]*iam_common.ServiceErrors) 1067 } 1068 (*target).ServiceErrors[fpmv.key] = fpmv.value.(*iam_common.ServiceErrors) 1069 default: 1070 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpmv.selector)) 1071 } 1072 } 1073 1074 func (fpmv *Organization_FieldPathMapValue) SetToRaw(target proto.Message) { 1075 typedObject := target.(*Organization) 1076 fpmv.SetTo(&typedObject) 1077 } 1078 1079 // CompareWith compares value in the 'Organization_FieldPathMapValue' with the value under path in 'Organization'. 1080 func (fpmv *Organization_FieldPathMapValue) CompareWith(source *Organization) (int, bool) { 1081 switch fpmv.selector { 1082 case Organization_FieldPathSelectorServiceErrors: 1083 return 0, false 1084 default: 1085 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpmv.selector)) 1086 } 1087 } 1088 1089 func (fpmv *Organization_FieldPathMapValue) CompareWithRaw(source proto.Message) (int, bool) { 1090 return fpmv.CompareWith(source.(*Organization)) 1091 } 1092 1093 type Organization_FieldSubPathValue struct { 1094 Organization_FieldPath 1095 subPathValue gotenobject.FieldPathValue 1096 } 1097 1098 var _ Organization_FieldPathValue = (*Organization_FieldSubPathValue)(nil) 1099 1100 func (fpvs *Organization_FieldSubPathValue) AsMetadataPathValue() (meta.Meta_FieldPathValue, bool) { 1101 res, ok := fpvs.subPathValue.(meta.Meta_FieldPathValue) 1102 return res, ok 1103 } 1104 func (fpvs *Organization_FieldSubPathValue) AsMultiRegionPolicyPathValue() (multi_region_policy.MultiRegionPolicy_FieldPathValue, bool) { 1105 res, ok := fpvs.subPathValue.(multi_region_policy.MultiRegionPolicy_FieldPathValue) 1106 return res, ok 1107 } 1108 func (fpvs *Organization_FieldSubPathValue) AsServiceTiersPathValue() (iam_common.ServiceBusinessTier_FieldPathValue, bool) { 1109 res, ok := fpvs.subPathValue.(iam_common.ServiceBusinessTier_FieldPathValue) 1110 return res, ok 1111 } 1112 1113 func (fpvs *Organization_FieldSubPathValue) SetTo(target **Organization) { 1114 if *target == nil { 1115 *target = new(Organization) 1116 } 1117 switch fpvs.Selector() { 1118 case Organization_FieldPathSelectorMetadata: 1119 fpvs.subPathValue.(meta.Meta_FieldPathValue).SetTo(&(*target).Metadata) 1120 case Organization_FieldPathSelectorMultiRegionPolicy: 1121 fpvs.subPathValue.(multi_region_policy.MultiRegionPolicy_FieldPathValue).SetTo(&(*target).MultiRegionPolicy) 1122 case Organization_FieldPathSelectorServiceTiers: 1123 panic("FieldPath setter is unsupported for array subpaths") 1124 default: 1125 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpvs.Selector())) 1126 } 1127 } 1128 1129 func (fpvs *Organization_FieldSubPathValue) SetToRaw(target proto.Message) { 1130 typedObject := target.(*Organization) 1131 fpvs.SetTo(&typedObject) 1132 } 1133 1134 func (fpvs *Organization_FieldSubPathValue) GetRawValue() interface{} { 1135 return fpvs.subPathValue.GetRawValue() 1136 } 1137 1138 func (fpvs *Organization_FieldSubPathValue) CompareWith(source *Organization) (int, bool) { 1139 switch fpvs.Selector() { 1140 case Organization_FieldPathSelectorMetadata: 1141 return fpvs.subPathValue.(meta.Meta_FieldPathValue).CompareWith(source.GetMetadata()) 1142 case Organization_FieldPathSelectorMultiRegionPolicy: 1143 return fpvs.subPathValue.(multi_region_policy.MultiRegionPolicy_FieldPathValue).CompareWith(source.GetMultiRegionPolicy()) 1144 case Organization_FieldPathSelectorServiceTiers: 1145 return 0, false // repeated field 1146 default: 1147 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpvs.Selector())) 1148 } 1149 } 1150 1151 func (fpvs *Organization_FieldSubPathValue) CompareWithRaw(source proto.Message) (int, bool) { 1152 return fpvs.CompareWith(source.(*Organization)) 1153 } 1154 1155 // Organization_FieldPathArrayItemValue allows storing single item in Path-specific values for Organization according to their type 1156 // Present only for array (repeated) types. 1157 type Organization_FieldPathArrayItemValue interface { 1158 gotenobject.FieldPathArrayItemValue 1159 Organization_FieldPath 1160 ContainsValue(*Organization) bool 1161 } 1162 1163 // ParseOrganization_FieldPathArrayItemValue parses string and JSON-encoded value to its Value 1164 func ParseOrganization_FieldPathArrayItemValue(pathStr, valueStr string) (Organization_FieldPathArrayItemValue, error) { 1165 fp, err := ParseOrganization_FieldPath(pathStr) 1166 if err != nil { 1167 return nil, err 1168 } 1169 fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr) 1170 if err != nil { 1171 return nil, status.Errorf(codes.InvalidArgument, "error parsing Organization field path array item value from %s: %v", valueStr, err) 1172 } 1173 return fpaiv.(Organization_FieldPathArrayItemValue), nil 1174 } 1175 1176 func MustParseOrganization_FieldPathArrayItemValue(pathStr, valueStr string) Organization_FieldPathArrayItemValue { 1177 fpaiv, err := ParseOrganization_FieldPathArrayItemValue(pathStr, valueStr) 1178 if err != nil { 1179 panic(err) 1180 } 1181 return fpaiv 1182 } 1183 1184 type Organization_FieldTerminalPathArrayItemValue struct { 1185 Organization_FieldTerminalPath 1186 value interface{} 1187 } 1188 1189 var _ Organization_FieldPathArrayItemValue = (*Organization_FieldTerminalPathArrayItemValue)(nil) 1190 1191 // GetRawValue returns stored element value for array in object Organization as interface{} 1192 func (fpaiv *Organization_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} { 1193 return fpaiv.value 1194 } 1195 func (fpaiv *Organization_FieldTerminalPathArrayItemValue) AsAllowedServicesItemValue() (*meta_service.Reference, bool) { 1196 res, ok := fpaiv.value.(*meta_service.Reference) 1197 return res, ok 1198 } 1199 func (fpaiv *Organization_FieldTerminalPathArrayItemValue) AsServiceTiersItemValue() (*iam_common.ServiceBusinessTier, bool) { 1200 res, ok := fpaiv.value.(*iam_common.ServiceBusinessTier) 1201 return res, ok 1202 } 1203 func (fpaiv *Organization_FieldTerminalPathArrayItemValue) AsAncestryPathItemValue() (*Name, bool) { 1204 res, ok := fpaiv.value.(*Name) 1205 return res, ok 1206 } 1207 1208 func (fpaiv *Organization_FieldTerminalPathArrayItemValue) GetSingle(source *Organization) (interface{}, bool) { 1209 return nil, false 1210 } 1211 1212 func (fpaiv *Organization_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) { 1213 return fpaiv.GetSingle(source.(*Organization)) 1214 } 1215 1216 // Contains returns a boolean indicating if value that is being held is present in given 'Organization' 1217 func (fpaiv *Organization_FieldTerminalPathArrayItemValue) ContainsValue(source *Organization) bool { 1218 slice := fpaiv.Organization_FieldTerminalPath.Get(source) 1219 for _, v := range slice { 1220 if asProtoMsg, ok := fpaiv.value.(proto.Message); ok { 1221 if proto.Equal(asProtoMsg, v.(proto.Message)) { 1222 return true 1223 } 1224 } else if reflect.DeepEqual(v, fpaiv.value) { 1225 return true 1226 } 1227 } 1228 return false 1229 } 1230 1231 type Organization_FieldSubPathArrayItemValue struct { 1232 Organization_FieldPath 1233 subPathItemValue gotenobject.FieldPathArrayItemValue 1234 } 1235 1236 // GetRawValue returns stored array item value 1237 func (fpaivs *Organization_FieldSubPathArrayItemValue) GetRawItemValue() interface{} { 1238 return fpaivs.subPathItemValue.GetRawItemValue() 1239 } 1240 func (fpaivs *Organization_FieldSubPathArrayItemValue) AsMetadataPathItemValue() (meta.Meta_FieldPathArrayItemValue, bool) { 1241 res, ok := fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue) 1242 return res, ok 1243 } 1244 func (fpaivs *Organization_FieldSubPathArrayItemValue) AsMultiRegionPolicyPathItemValue() (multi_region_policy.MultiRegionPolicy_FieldPathArrayItemValue, bool) { 1245 res, ok := fpaivs.subPathItemValue.(multi_region_policy.MultiRegionPolicy_FieldPathArrayItemValue) 1246 return res, ok 1247 } 1248 func (fpaivs *Organization_FieldSubPathArrayItemValue) AsServiceTiersPathItemValue() (iam_common.ServiceBusinessTier_FieldPathArrayItemValue, bool) { 1249 res, ok := fpaivs.subPathItemValue.(iam_common.ServiceBusinessTier_FieldPathArrayItemValue) 1250 return res, ok 1251 } 1252 1253 // Contains returns a boolean indicating if value that is being held is present in given 'Organization' 1254 func (fpaivs *Organization_FieldSubPathArrayItemValue) ContainsValue(source *Organization) bool { 1255 switch fpaivs.Selector() { 1256 case Organization_FieldPathSelectorMetadata: 1257 return fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue).ContainsValue(source.GetMetadata()) 1258 case Organization_FieldPathSelectorMultiRegionPolicy: 1259 return fpaivs.subPathItemValue.(multi_region_policy.MultiRegionPolicy_FieldPathArrayItemValue).ContainsValue(source.GetMultiRegionPolicy()) 1260 case Organization_FieldPathSelectorServiceTiers: 1261 return false // repeated/map field 1262 default: 1263 panic(fmt.Sprintf("Invalid selector for Organization: %d", fpaivs.Selector())) 1264 } 1265 } 1266 1267 // Organization_FieldPathArrayOfValues allows storing slice of values for Organization fields according to their type 1268 type Organization_FieldPathArrayOfValues interface { 1269 gotenobject.FieldPathArrayOfValues 1270 Organization_FieldPath 1271 } 1272 1273 func ParseOrganization_FieldPathArrayOfValues(pathStr, valuesStr string) (Organization_FieldPathArrayOfValues, error) { 1274 fp, err := ParseOrganization_FieldPath(pathStr) 1275 if err != nil { 1276 return nil, err 1277 } 1278 fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr) 1279 if err != nil { 1280 return nil, status.Errorf(codes.InvalidArgument, "error parsing Organization field path array of values from %s: %v", valuesStr, err) 1281 } 1282 return fpaov.(Organization_FieldPathArrayOfValues), nil 1283 } 1284 1285 func MustParseOrganization_FieldPathArrayOfValues(pathStr, valuesStr string) Organization_FieldPathArrayOfValues { 1286 fpaov, err := ParseOrganization_FieldPathArrayOfValues(pathStr, valuesStr) 1287 if err != nil { 1288 panic(err) 1289 } 1290 return fpaov 1291 } 1292 1293 type Organization_FieldTerminalPathArrayOfValues struct { 1294 Organization_FieldTerminalPath 1295 values interface{} 1296 } 1297 1298 var _ Organization_FieldPathArrayOfValues = (*Organization_FieldTerminalPathArrayOfValues)(nil) 1299 1300 func (fpaov *Organization_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) { 1301 switch fpaov.selector { 1302 case Organization_FieldPathSelectorName: 1303 for _, v := range fpaov.values.([]*Name) { 1304 values = append(values, v) 1305 } 1306 case Organization_FieldPathSelectorMetadata: 1307 for _, v := range fpaov.values.([]*meta.Meta) { 1308 values = append(values, v) 1309 } 1310 case Organization_FieldPathSelectorTitle: 1311 for _, v := range fpaov.values.([]string) { 1312 values = append(values, v) 1313 } 1314 case Organization_FieldPathSelectorDescription: 1315 for _, v := range fpaov.values.([]string) { 1316 values = append(values, v) 1317 } 1318 case Organization_FieldPathSelectorParentOrganization: 1319 for _, v := range fpaov.values.([]*Reference) { 1320 values = append(values, v) 1321 } 1322 case Organization_FieldPathSelectorMultiRegionPolicy: 1323 for _, v := range fpaov.values.([]*multi_region_policy.MultiRegionPolicy) { 1324 values = append(values, v) 1325 } 1326 case Organization_FieldPathSelectorAllowedServices: 1327 for _, v := range fpaov.values.([][]*meta_service.Reference) { 1328 values = append(values, v) 1329 } 1330 case Organization_FieldPathSelectorBusinessTier: 1331 for _, v := range fpaov.values.([]iam_common.BusinessTier) { 1332 values = append(values, v) 1333 } 1334 case Organization_FieldPathSelectorServiceTiers: 1335 for _, v := range fpaov.values.([][]*iam_common.ServiceBusinessTier) { 1336 values = append(values, v) 1337 } 1338 case Organization_FieldPathSelectorRootOrganization: 1339 for _, v := range fpaov.values.([]*Name) { 1340 values = append(values, v) 1341 } 1342 case Organization_FieldPathSelectorAncestryPath: 1343 for _, v := range fpaov.values.([][]*Name) { 1344 values = append(values, v) 1345 } 1346 case Organization_FieldPathSelectorServiceErrors: 1347 for _, v := range fpaov.values.([]map[string]*iam_common.ServiceErrors) { 1348 values = append(values, v) 1349 } 1350 case Organization_FieldPathSelectorServicesGeneration: 1351 for _, v := range fpaov.values.([]int64) { 1352 values = append(values, v) 1353 } 1354 } 1355 return 1356 } 1357 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsNameArrayOfValues() ([]*Name, bool) { 1358 res, ok := fpaov.values.([]*Name) 1359 return res, ok 1360 } 1361 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsMetadataArrayOfValues() ([]*meta.Meta, bool) { 1362 res, ok := fpaov.values.([]*meta.Meta) 1363 return res, ok 1364 } 1365 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsTitleArrayOfValues() ([]string, bool) { 1366 res, ok := fpaov.values.([]string) 1367 return res, ok 1368 } 1369 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsDescriptionArrayOfValues() ([]string, bool) { 1370 res, ok := fpaov.values.([]string) 1371 return res, ok 1372 } 1373 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsParentOrganizationArrayOfValues() ([]*Reference, bool) { 1374 res, ok := fpaov.values.([]*Reference) 1375 return res, ok 1376 } 1377 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsMultiRegionPolicyArrayOfValues() ([]*multi_region_policy.MultiRegionPolicy, bool) { 1378 res, ok := fpaov.values.([]*multi_region_policy.MultiRegionPolicy) 1379 return res, ok 1380 } 1381 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsAllowedServicesArrayOfValues() ([][]*meta_service.Reference, bool) { 1382 res, ok := fpaov.values.([][]*meta_service.Reference) 1383 return res, ok 1384 } 1385 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsBusinessTierArrayOfValues() ([]iam_common.BusinessTier, bool) { 1386 res, ok := fpaov.values.([]iam_common.BusinessTier) 1387 return res, ok 1388 } 1389 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsServiceTiersArrayOfValues() ([][]*iam_common.ServiceBusinessTier, bool) { 1390 res, ok := fpaov.values.([][]*iam_common.ServiceBusinessTier) 1391 return res, ok 1392 } 1393 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsRootOrganizationArrayOfValues() ([]*Name, bool) { 1394 res, ok := fpaov.values.([]*Name) 1395 return res, ok 1396 } 1397 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsAncestryPathArrayOfValues() ([][]*Name, bool) { 1398 res, ok := fpaov.values.([][]*Name) 1399 return res, ok 1400 } 1401 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsServiceErrorsArrayOfValues() ([]map[string]*iam_common.ServiceErrors, bool) { 1402 res, ok := fpaov.values.([]map[string]*iam_common.ServiceErrors) 1403 return res, ok 1404 } 1405 func (fpaov *Organization_FieldTerminalPathArrayOfValues) AsServicesGenerationArrayOfValues() ([]int64, bool) { 1406 res, ok := fpaov.values.([]int64) 1407 return res, ok 1408 } 1409 1410 type Organization_FieldPathMapArrayOfValues struct { 1411 Organization_FieldPathMap 1412 values interface{} 1413 } 1414 1415 var _ Organization_FieldPathArrayOfValues = (*Organization_FieldPathMapArrayOfValues)(nil) 1416 1417 func (fpmaov *Organization_FieldPathMapArrayOfValues) GetRawValues() (values []interface{}) { 1418 switch fpmaov.selector { 1419 case Organization_FieldPathSelectorServiceErrors: 1420 for _, v := range fpmaov.values.([]*iam_common.ServiceErrors) { 1421 values = append(values, v) 1422 } 1423 } 1424 return 1425 } 1426 func (fpmaov *Organization_FieldPathMapArrayOfValues) AsServiceErrorsArrayOfElementValues() ([]*iam_common.ServiceErrors, bool) { 1427 res, ok := fpmaov.values.([]*iam_common.ServiceErrors) 1428 return res, ok 1429 } 1430 1431 type Organization_FieldSubPathArrayOfValues struct { 1432 Organization_FieldPath 1433 subPathArrayOfValues gotenobject.FieldPathArrayOfValues 1434 } 1435 1436 var _ Organization_FieldPathArrayOfValues = (*Organization_FieldSubPathArrayOfValues)(nil) 1437 1438 func (fpsaov *Organization_FieldSubPathArrayOfValues) GetRawValues() []interface{} { 1439 return fpsaov.subPathArrayOfValues.GetRawValues() 1440 } 1441 func (fpsaov *Organization_FieldSubPathArrayOfValues) AsMetadataPathArrayOfValues() (meta.Meta_FieldPathArrayOfValues, bool) { 1442 res, ok := fpsaov.subPathArrayOfValues.(meta.Meta_FieldPathArrayOfValues) 1443 return res, ok 1444 } 1445 func (fpsaov *Organization_FieldSubPathArrayOfValues) AsMultiRegionPolicyPathArrayOfValues() (multi_region_policy.MultiRegionPolicy_FieldPathArrayOfValues, bool) { 1446 res, ok := fpsaov.subPathArrayOfValues.(multi_region_policy.MultiRegionPolicy_FieldPathArrayOfValues) 1447 return res, ok 1448 } 1449 func (fpsaov *Organization_FieldSubPathArrayOfValues) AsServiceTiersPathArrayOfValues() (iam_common.ServiceBusinessTier_FieldPathArrayOfValues, bool) { 1450 res, ok := fpsaov.subPathArrayOfValues.(iam_common.ServiceBusinessTier_FieldPathArrayOfValues) 1451 return res, ok 1452 }