github.com/cloudwan/edgelq-sdk@v1.15.4/limits/resources/v1/accepted_plan/accepted_plan.pb.fieldpath.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/limits/proto/v1/accepted_plan.proto 3 // DO NOT EDIT!!! 4 5 package accepted_plan 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_organization "github.com/cloudwan/edgelq-sdk/iam/resources/v1/organization" 27 iam_project "github.com/cloudwan/edgelq-sdk/iam/resources/v1/project" 28 common "github.com/cloudwan/edgelq-sdk/limits/resources/v1/common" 29 plan "github.com/cloudwan/edgelq-sdk/limits/resources/v1/plan" 30 meta_service "github.com/cloudwan/goten-sdk/meta-service/resources/v1/service" 31 meta "github.com/cloudwan/goten-sdk/types/meta" 32 ) 33 34 // ensure the imports are used 35 var ( 36 _ = new(json.Marshaler) 37 _ = new(fmt.Stringer) 38 _ = reflect.DeepEqual 39 _ = strings.Builder{} 40 _ = time.Second 41 42 _ = strcase.ToLowerCamel 43 _ = codes.NotFound 44 _ = status.Status{} 45 _ = protojson.UnmarshalOptions{} 46 _ = new(proto.Message) 47 _ = protoregistry.GlobalTypes 48 49 _ = new(gotenobject.FieldPath) 50 ) 51 52 // make sure we're using proto imports 53 var ( 54 _ = &iam_organization.Organization{} 55 _ = &iam_project.Project{} 56 _ = &common.RegionalPlanAssignment{} 57 _ = &plan.Plan{} 58 _ = &meta_service.Service{} 59 _ = &meta.Meta{} 60 ) 61 62 // FieldPath provides implementation to handle 63 // https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto 64 type AcceptedPlan_FieldPath interface { 65 gotenobject.FieldPath 66 Selector() AcceptedPlan_FieldPathSelector 67 Get(source *AcceptedPlan) []interface{} 68 GetSingle(source *AcceptedPlan) (interface{}, bool) 69 ClearValue(item *AcceptedPlan) 70 71 // Those methods build corresponding AcceptedPlan_FieldPathValue 72 // (or array of values) and holds passed value. Panics if injected type is incorrect. 73 WithIValue(value interface{}) AcceptedPlan_FieldPathValue 74 WithIArrayOfValues(values interface{}) AcceptedPlan_FieldPathArrayOfValues 75 WithIArrayItemValue(value interface{}) AcceptedPlan_FieldPathArrayItemValue 76 } 77 78 type AcceptedPlan_FieldPathSelector int32 79 80 const ( 81 AcceptedPlan_FieldPathSelectorName AcceptedPlan_FieldPathSelector = 0 82 AcceptedPlan_FieldPathSelectorMetadata AcceptedPlan_FieldPathSelector = 1 83 AcceptedPlan_FieldPathSelectorDefaultRegionalPlan AcceptedPlan_FieldPathSelector = 2 84 AcceptedPlan_FieldPathSelectorService AcceptedPlan_FieldPathSelector = 3 85 AcceptedPlan_FieldPathSelectorRegionalPlanOverrides AcceptedPlan_FieldPathSelector = 4 86 AcceptedPlan_FieldPathSelectorExtensions AcceptedPlan_FieldPathSelector = 5 87 AcceptedPlan_FieldPathSelectorAllowances AcceptedPlan_FieldPathSelector = 6 88 AcceptedPlan_FieldPathSelectorAppliedRegions AcceptedPlan_FieldPathSelector = 7 89 AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration AcceptedPlan_FieldPathSelector = 8 90 AcceptedPlan_FieldPathSelectorAssignee AcceptedPlan_FieldPathSelector = 9 91 ) 92 93 func (s AcceptedPlan_FieldPathSelector) String() string { 94 switch s { 95 case AcceptedPlan_FieldPathSelectorName: 96 return "name" 97 case AcceptedPlan_FieldPathSelectorMetadata: 98 return "metadata" 99 case AcceptedPlan_FieldPathSelectorDefaultRegionalPlan: 100 return "default_regional_plan" 101 case AcceptedPlan_FieldPathSelectorService: 102 return "service" 103 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 104 return "regional_plan_overrides" 105 case AcceptedPlan_FieldPathSelectorExtensions: 106 return "extensions" 107 case AcceptedPlan_FieldPathSelectorAllowances: 108 return "allowances" 109 case AcceptedPlan_FieldPathSelectorAppliedRegions: 110 return "applied_regions" 111 case AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration: 112 return "applied_plan_spec_generation" 113 case AcceptedPlan_FieldPathSelectorAssignee: 114 return "assignee" 115 default: 116 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", s)) 117 } 118 } 119 120 func BuildAcceptedPlan_FieldPath(fp gotenobject.RawFieldPath) (AcceptedPlan_FieldPath, error) { 121 if len(fp) == 0 { 122 return nil, status.Error(codes.InvalidArgument, "empty field path for object AcceptedPlan") 123 } 124 if len(fp) == 1 { 125 switch fp[0] { 126 case "name": 127 return &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorName}, nil 128 case "metadata": 129 return &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorMetadata}, nil 130 case "default_regional_plan", "defaultRegionalPlan", "default-regional-plan": 131 return &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorDefaultRegionalPlan}, nil 132 case "service": 133 return &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorService}, nil 134 case "regional_plan_overrides", "regionalPlanOverrides", "regional-plan-overrides": 135 return &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorRegionalPlanOverrides}, nil 136 case "extensions": 137 return &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorExtensions}, nil 138 case "allowances": 139 return &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorAllowances}, nil 140 case "applied_regions", "appliedRegions", "applied-regions": 141 return &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorAppliedRegions}, nil 142 case "applied_plan_spec_generation", "appliedPlanSpecGeneration", "applied-plan-spec-generation": 143 return &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration}, nil 144 case "assignee": 145 return &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorAssignee}, nil 146 } 147 } else { 148 switch fp[0] { 149 case "metadata": 150 if subpath, err := meta.BuildMeta_FieldPath(fp[1:]); err != nil { 151 return nil, err 152 } else { 153 return &AcceptedPlan_FieldSubPath{selector: AcceptedPlan_FieldPathSelectorMetadata, subPath: subpath}, nil 154 } 155 case "regional_plan_overrides", "regionalPlanOverrides", "regional-plan-overrides": 156 if subpath, err := common.BuildRegionalPlanAssignment_FieldPath(fp[1:]); err != nil { 157 return nil, err 158 } else { 159 return &AcceptedPlan_FieldSubPath{selector: AcceptedPlan_FieldPathSelectorRegionalPlanOverrides, subPath: subpath}, nil 160 } 161 case "extensions": 162 if subpath, err := common.BuildAllowance_FieldPath(fp[1:]); err != nil { 163 return nil, err 164 } else { 165 return &AcceptedPlan_FieldSubPath{selector: AcceptedPlan_FieldPathSelectorExtensions, subPath: subpath}, nil 166 } 167 case "allowances": 168 if subpath, err := common.BuildAllowance_FieldPath(fp[1:]); err != nil { 169 return nil, err 170 } else { 171 return &AcceptedPlan_FieldSubPath{selector: AcceptedPlan_FieldPathSelectorAllowances, subPath: subpath}, nil 172 } 173 case "assignee": 174 if subpath, err := BuildAcceptedPlanAssignee_FieldPath(fp[1:]); err != nil { 175 return nil, err 176 } else { 177 return &AcceptedPlan_FieldSubPath{selector: AcceptedPlan_FieldPathSelectorAssignee, subPath: subpath}, nil 178 } 179 } 180 } 181 return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object AcceptedPlan", fp) 182 } 183 184 func ParseAcceptedPlan_FieldPath(rawField string) (AcceptedPlan_FieldPath, error) { 185 fp, err := gotenobject.ParseRawFieldPath(rawField) 186 if err != nil { 187 return nil, err 188 } 189 return BuildAcceptedPlan_FieldPath(fp) 190 } 191 192 func MustParseAcceptedPlan_FieldPath(rawField string) AcceptedPlan_FieldPath { 193 fp, err := ParseAcceptedPlan_FieldPath(rawField) 194 if err != nil { 195 panic(err) 196 } 197 return fp 198 } 199 200 type AcceptedPlan_FieldTerminalPath struct { 201 selector AcceptedPlan_FieldPathSelector 202 } 203 204 var _ AcceptedPlan_FieldPath = (*AcceptedPlan_FieldTerminalPath)(nil) 205 206 func (fp *AcceptedPlan_FieldTerminalPath) Selector() AcceptedPlan_FieldPathSelector { 207 return fp.selector 208 } 209 210 // String returns path representation in proto convention 211 func (fp *AcceptedPlan_FieldTerminalPath) String() string { 212 return fp.selector.String() 213 } 214 215 // JSONString returns path representation is JSON convention 216 func (fp *AcceptedPlan_FieldTerminalPath) JSONString() string { 217 return strcase.ToLowerCamel(fp.String()) 218 } 219 220 // Get returns all values pointed by specific field from source AcceptedPlan 221 func (fp *AcceptedPlan_FieldTerminalPath) Get(source *AcceptedPlan) (values []interface{}) { 222 if source != nil { 223 switch fp.selector { 224 case AcceptedPlan_FieldPathSelectorName: 225 if source.Name != nil { 226 values = append(values, source.Name) 227 } 228 case AcceptedPlan_FieldPathSelectorMetadata: 229 if source.Metadata != nil { 230 values = append(values, source.Metadata) 231 } 232 case AcceptedPlan_FieldPathSelectorDefaultRegionalPlan: 233 if source.DefaultRegionalPlan != nil { 234 values = append(values, source.DefaultRegionalPlan) 235 } 236 case AcceptedPlan_FieldPathSelectorService: 237 if source.Service != nil { 238 values = append(values, source.Service) 239 } 240 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 241 for _, value := range source.GetRegionalPlanOverrides() { 242 values = append(values, value) 243 } 244 case AcceptedPlan_FieldPathSelectorExtensions: 245 for _, value := range source.GetExtensions() { 246 values = append(values, value) 247 } 248 case AcceptedPlan_FieldPathSelectorAllowances: 249 for _, value := range source.GetAllowances() { 250 values = append(values, value) 251 } 252 case AcceptedPlan_FieldPathSelectorAppliedRegions: 253 for _, value := range source.GetAppliedRegions() { 254 values = append(values, value) 255 } 256 case AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration: 257 values = append(values, source.AppliedPlanSpecGeneration) 258 case AcceptedPlan_FieldPathSelectorAssignee: 259 if source.Assignee != nil { 260 values = append(values, source.Assignee) 261 } 262 default: 263 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fp.selector)) 264 } 265 } 266 return 267 } 268 269 func (fp *AcceptedPlan_FieldTerminalPath) GetRaw(source proto.Message) []interface{} { 270 return fp.Get(source.(*AcceptedPlan)) 271 } 272 273 // GetSingle returns value pointed by specific field of from source AcceptedPlan 274 func (fp *AcceptedPlan_FieldTerminalPath) GetSingle(source *AcceptedPlan) (interface{}, bool) { 275 switch fp.selector { 276 case AcceptedPlan_FieldPathSelectorName: 277 res := source.GetName() 278 return res, res != nil 279 case AcceptedPlan_FieldPathSelectorMetadata: 280 res := source.GetMetadata() 281 return res, res != nil 282 case AcceptedPlan_FieldPathSelectorDefaultRegionalPlan: 283 res := source.GetDefaultRegionalPlan() 284 return res, res != nil 285 case AcceptedPlan_FieldPathSelectorService: 286 res := source.GetService() 287 return res, res != nil 288 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 289 res := source.GetRegionalPlanOverrides() 290 return res, res != nil 291 case AcceptedPlan_FieldPathSelectorExtensions: 292 res := source.GetExtensions() 293 return res, res != nil 294 case AcceptedPlan_FieldPathSelectorAllowances: 295 res := source.GetAllowances() 296 return res, res != nil 297 case AcceptedPlan_FieldPathSelectorAppliedRegions: 298 res := source.GetAppliedRegions() 299 return res, res != nil 300 case AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration: 301 return source.GetAppliedPlanSpecGeneration(), source != nil 302 case AcceptedPlan_FieldPathSelectorAssignee: 303 res := source.GetAssignee() 304 return res, res != nil 305 default: 306 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fp.selector)) 307 } 308 } 309 310 func (fp *AcceptedPlan_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 311 return fp.GetSingle(source.(*AcceptedPlan)) 312 } 313 314 // GetDefault returns a default value of the field type 315 func (fp *AcceptedPlan_FieldTerminalPath) GetDefault() interface{} { 316 switch fp.selector { 317 case AcceptedPlan_FieldPathSelectorName: 318 return (*Name)(nil) 319 case AcceptedPlan_FieldPathSelectorMetadata: 320 return (*meta.Meta)(nil) 321 case AcceptedPlan_FieldPathSelectorDefaultRegionalPlan: 322 return (*plan.Reference)(nil) 323 case AcceptedPlan_FieldPathSelectorService: 324 return (*meta_service.Reference)(nil) 325 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 326 return ([]*common.RegionalPlanAssignment)(nil) 327 case AcceptedPlan_FieldPathSelectorExtensions: 328 return ([]*common.Allowance)(nil) 329 case AcceptedPlan_FieldPathSelectorAllowances: 330 return ([]*common.Allowance)(nil) 331 case AcceptedPlan_FieldPathSelectorAppliedRegions: 332 return ([]string)(nil) 333 case AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration: 334 return int64(0) 335 case AcceptedPlan_FieldPathSelectorAssignee: 336 return (*AcceptedPlan_Assignee)(nil) 337 default: 338 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fp.selector)) 339 } 340 } 341 342 func (fp *AcceptedPlan_FieldTerminalPath) ClearValue(item *AcceptedPlan) { 343 if item != nil { 344 switch fp.selector { 345 case AcceptedPlan_FieldPathSelectorName: 346 item.Name = nil 347 case AcceptedPlan_FieldPathSelectorMetadata: 348 item.Metadata = nil 349 case AcceptedPlan_FieldPathSelectorDefaultRegionalPlan: 350 item.DefaultRegionalPlan = nil 351 case AcceptedPlan_FieldPathSelectorService: 352 item.Service = nil 353 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 354 item.RegionalPlanOverrides = nil 355 case AcceptedPlan_FieldPathSelectorExtensions: 356 item.Extensions = nil 357 case AcceptedPlan_FieldPathSelectorAllowances: 358 item.Allowances = nil 359 case AcceptedPlan_FieldPathSelectorAppliedRegions: 360 item.AppliedRegions = nil 361 case AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration: 362 item.AppliedPlanSpecGeneration = int64(0) 363 case AcceptedPlan_FieldPathSelectorAssignee: 364 item.Assignee = nil 365 default: 366 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fp.selector)) 367 } 368 } 369 } 370 371 func (fp *AcceptedPlan_FieldTerminalPath) ClearValueRaw(item proto.Message) { 372 fp.ClearValue(item.(*AcceptedPlan)) 373 } 374 375 // IsLeaf - whether field path is holds simple value 376 func (fp *AcceptedPlan_FieldTerminalPath) IsLeaf() bool { 377 return fp.selector == AcceptedPlan_FieldPathSelectorName || 378 fp.selector == AcceptedPlan_FieldPathSelectorDefaultRegionalPlan || 379 fp.selector == AcceptedPlan_FieldPathSelectorService || 380 fp.selector == AcceptedPlan_FieldPathSelectorAppliedRegions || 381 fp.selector == AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration 382 } 383 384 func (fp *AcceptedPlan_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 385 return []gotenobject.FieldPath{fp} 386 } 387 388 func (fp *AcceptedPlan_FieldTerminalPath) WithIValue(value interface{}) AcceptedPlan_FieldPathValue { 389 switch fp.selector { 390 case AcceptedPlan_FieldPathSelectorName: 391 return &AcceptedPlan_FieldTerminalPathValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.(*Name)} 392 case AcceptedPlan_FieldPathSelectorMetadata: 393 return &AcceptedPlan_FieldTerminalPathValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.(*meta.Meta)} 394 case AcceptedPlan_FieldPathSelectorDefaultRegionalPlan: 395 return &AcceptedPlan_FieldTerminalPathValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.(*plan.Reference)} 396 case AcceptedPlan_FieldPathSelectorService: 397 return &AcceptedPlan_FieldTerminalPathValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.(*meta_service.Reference)} 398 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 399 return &AcceptedPlan_FieldTerminalPathValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.([]*common.RegionalPlanAssignment)} 400 case AcceptedPlan_FieldPathSelectorExtensions: 401 return &AcceptedPlan_FieldTerminalPathValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.([]*common.Allowance)} 402 case AcceptedPlan_FieldPathSelectorAllowances: 403 return &AcceptedPlan_FieldTerminalPathValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.([]*common.Allowance)} 404 case AcceptedPlan_FieldPathSelectorAppliedRegions: 405 return &AcceptedPlan_FieldTerminalPathValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.([]string)} 406 case AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration: 407 return &AcceptedPlan_FieldTerminalPathValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.(int64)} 408 case AcceptedPlan_FieldPathSelectorAssignee: 409 return &AcceptedPlan_FieldTerminalPathValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.(*AcceptedPlan_Assignee)} 410 default: 411 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fp.selector)) 412 } 413 } 414 415 func (fp *AcceptedPlan_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 416 return fp.WithIValue(value) 417 } 418 419 func (fp *AcceptedPlan_FieldTerminalPath) WithIArrayOfValues(values interface{}) AcceptedPlan_FieldPathArrayOfValues { 420 fpaov := &AcceptedPlan_FieldTerminalPathArrayOfValues{AcceptedPlan_FieldTerminalPath: *fp} 421 switch fp.selector { 422 case AcceptedPlan_FieldPathSelectorName: 423 return &AcceptedPlan_FieldTerminalPathArrayOfValues{AcceptedPlan_FieldTerminalPath: *fp, values: values.([]*Name)} 424 case AcceptedPlan_FieldPathSelectorMetadata: 425 return &AcceptedPlan_FieldTerminalPathArrayOfValues{AcceptedPlan_FieldTerminalPath: *fp, values: values.([]*meta.Meta)} 426 case AcceptedPlan_FieldPathSelectorDefaultRegionalPlan: 427 return &AcceptedPlan_FieldTerminalPathArrayOfValues{AcceptedPlan_FieldTerminalPath: *fp, values: values.([]*plan.Reference)} 428 case AcceptedPlan_FieldPathSelectorService: 429 return &AcceptedPlan_FieldTerminalPathArrayOfValues{AcceptedPlan_FieldTerminalPath: *fp, values: values.([]*meta_service.Reference)} 430 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 431 return &AcceptedPlan_FieldTerminalPathArrayOfValues{AcceptedPlan_FieldTerminalPath: *fp, values: values.([][]*common.RegionalPlanAssignment)} 432 case AcceptedPlan_FieldPathSelectorExtensions: 433 return &AcceptedPlan_FieldTerminalPathArrayOfValues{AcceptedPlan_FieldTerminalPath: *fp, values: values.([][]*common.Allowance)} 434 case AcceptedPlan_FieldPathSelectorAllowances: 435 return &AcceptedPlan_FieldTerminalPathArrayOfValues{AcceptedPlan_FieldTerminalPath: *fp, values: values.([][]*common.Allowance)} 436 case AcceptedPlan_FieldPathSelectorAppliedRegions: 437 return &AcceptedPlan_FieldTerminalPathArrayOfValues{AcceptedPlan_FieldTerminalPath: *fp, values: values.([][]string)} 438 case AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration: 439 return &AcceptedPlan_FieldTerminalPathArrayOfValues{AcceptedPlan_FieldTerminalPath: *fp, values: values.([]int64)} 440 case AcceptedPlan_FieldPathSelectorAssignee: 441 return &AcceptedPlan_FieldTerminalPathArrayOfValues{AcceptedPlan_FieldTerminalPath: *fp, values: values.([]*AcceptedPlan_Assignee)} 442 default: 443 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fp.selector)) 444 } 445 return fpaov 446 } 447 448 func (fp *AcceptedPlan_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 449 return fp.WithIArrayOfValues(values) 450 } 451 452 func (fp *AcceptedPlan_FieldTerminalPath) WithIArrayItemValue(value interface{}) AcceptedPlan_FieldPathArrayItemValue { 453 switch fp.selector { 454 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 455 return &AcceptedPlan_FieldTerminalPathArrayItemValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.(*common.RegionalPlanAssignment)} 456 case AcceptedPlan_FieldPathSelectorExtensions: 457 return &AcceptedPlan_FieldTerminalPathArrayItemValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.(*common.Allowance)} 458 case AcceptedPlan_FieldPathSelectorAllowances: 459 return &AcceptedPlan_FieldTerminalPathArrayItemValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.(*common.Allowance)} 460 case AcceptedPlan_FieldPathSelectorAppliedRegions: 461 return &AcceptedPlan_FieldTerminalPathArrayItemValue{AcceptedPlan_FieldTerminalPath: *fp, value: value.(string)} 462 default: 463 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fp.selector)) 464 } 465 } 466 467 func (fp *AcceptedPlan_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 468 return fp.WithIArrayItemValue(value) 469 } 470 471 type AcceptedPlan_FieldSubPath struct { 472 selector AcceptedPlan_FieldPathSelector 473 subPath gotenobject.FieldPath 474 } 475 476 var _ AcceptedPlan_FieldPath = (*AcceptedPlan_FieldSubPath)(nil) 477 478 func (fps *AcceptedPlan_FieldSubPath) Selector() AcceptedPlan_FieldPathSelector { 479 return fps.selector 480 } 481 func (fps *AcceptedPlan_FieldSubPath) AsMetadataSubPath() (meta.Meta_FieldPath, bool) { 482 res, ok := fps.subPath.(meta.Meta_FieldPath) 483 return res, ok 484 } 485 func (fps *AcceptedPlan_FieldSubPath) AsRegionalPlanOverridesSubPath() (common.RegionalPlanAssignment_FieldPath, bool) { 486 res, ok := fps.subPath.(common.RegionalPlanAssignment_FieldPath) 487 return res, ok 488 } 489 func (fps *AcceptedPlan_FieldSubPath) AsExtensionsSubPath() (common.Allowance_FieldPath, bool) { 490 res, ok := fps.subPath.(common.Allowance_FieldPath) 491 return res, ok 492 } 493 func (fps *AcceptedPlan_FieldSubPath) AsAllowancesSubPath() (common.Allowance_FieldPath, bool) { 494 res, ok := fps.subPath.(common.Allowance_FieldPath) 495 return res, ok 496 } 497 func (fps *AcceptedPlan_FieldSubPath) AsAssigneeSubPath() (AcceptedPlanAssignee_FieldPath, bool) { 498 res, ok := fps.subPath.(AcceptedPlanAssignee_FieldPath) 499 return res, ok 500 } 501 502 // String returns path representation in proto convention 503 func (fps *AcceptedPlan_FieldSubPath) String() string { 504 return fps.selector.String() + "." + fps.subPath.String() 505 } 506 507 // JSONString returns path representation is JSON convention 508 func (fps *AcceptedPlan_FieldSubPath) JSONString() string { 509 return strcase.ToLowerCamel(fps.selector.String()) + "." + fps.subPath.JSONString() 510 } 511 512 // Get returns all values pointed by selected field from source AcceptedPlan 513 func (fps *AcceptedPlan_FieldSubPath) Get(source *AcceptedPlan) (values []interface{}) { 514 switch fps.selector { 515 case AcceptedPlan_FieldPathSelectorMetadata: 516 values = append(values, fps.subPath.GetRaw(source.GetMetadata())...) 517 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 518 for _, item := range source.GetRegionalPlanOverrides() { 519 values = append(values, fps.subPath.GetRaw(item)...) 520 } 521 case AcceptedPlan_FieldPathSelectorExtensions: 522 for _, item := range source.GetExtensions() { 523 values = append(values, fps.subPath.GetRaw(item)...) 524 } 525 case AcceptedPlan_FieldPathSelectorAllowances: 526 for _, item := range source.GetAllowances() { 527 values = append(values, fps.subPath.GetRaw(item)...) 528 } 529 case AcceptedPlan_FieldPathSelectorAssignee: 530 values = append(values, fps.subPath.GetRaw(source.GetAssignee())...) 531 default: 532 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fps.selector)) 533 } 534 return 535 } 536 537 func (fps *AcceptedPlan_FieldSubPath) GetRaw(source proto.Message) []interface{} { 538 return fps.Get(source.(*AcceptedPlan)) 539 } 540 541 // GetSingle returns value of selected field from source AcceptedPlan 542 func (fps *AcceptedPlan_FieldSubPath) GetSingle(source *AcceptedPlan) (interface{}, bool) { 543 switch fps.selector { 544 case AcceptedPlan_FieldPathSelectorMetadata: 545 if source.GetMetadata() == nil { 546 return nil, false 547 } 548 return fps.subPath.GetSingleRaw(source.GetMetadata()) 549 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 550 if len(source.GetRegionalPlanOverrides()) == 0 { 551 return nil, false 552 } 553 return fps.subPath.GetSingleRaw(source.GetRegionalPlanOverrides()[0]) 554 case AcceptedPlan_FieldPathSelectorExtensions: 555 if len(source.GetExtensions()) == 0 { 556 return nil, false 557 } 558 return fps.subPath.GetSingleRaw(source.GetExtensions()[0]) 559 case AcceptedPlan_FieldPathSelectorAllowances: 560 if len(source.GetAllowances()) == 0 { 561 return nil, false 562 } 563 return fps.subPath.GetSingleRaw(source.GetAllowances()[0]) 564 case AcceptedPlan_FieldPathSelectorAssignee: 565 if source.GetAssignee() == nil { 566 return nil, false 567 } 568 return fps.subPath.GetSingleRaw(source.GetAssignee()) 569 default: 570 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fps.selector)) 571 } 572 } 573 574 func (fps *AcceptedPlan_FieldSubPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 575 return fps.GetSingle(source.(*AcceptedPlan)) 576 } 577 578 // GetDefault returns a default value of the field type 579 func (fps *AcceptedPlan_FieldSubPath) GetDefault() interface{} { 580 return fps.subPath.GetDefault() 581 } 582 583 func (fps *AcceptedPlan_FieldSubPath) ClearValue(item *AcceptedPlan) { 584 if item != nil { 585 switch fps.selector { 586 case AcceptedPlan_FieldPathSelectorMetadata: 587 fps.subPath.ClearValueRaw(item.Metadata) 588 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 589 for _, subItem := range item.RegionalPlanOverrides { 590 fps.subPath.ClearValueRaw(subItem) 591 } 592 case AcceptedPlan_FieldPathSelectorExtensions: 593 for _, subItem := range item.Extensions { 594 fps.subPath.ClearValueRaw(subItem) 595 } 596 case AcceptedPlan_FieldPathSelectorAllowances: 597 for _, subItem := range item.Allowances { 598 fps.subPath.ClearValueRaw(subItem) 599 } 600 case AcceptedPlan_FieldPathSelectorAssignee: 601 fps.subPath.ClearValueRaw(item.Assignee) 602 default: 603 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fps.selector)) 604 } 605 } 606 } 607 608 func (fps *AcceptedPlan_FieldSubPath) ClearValueRaw(item proto.Message) { 609 fps.ClearValue(item.(*AcceptedPlan)) 610 } 611 612 // IsLeaf - whether field path is holds simple value 613 func (fps *AcceptedPlan_FieldSubPath) IsLeaf() bool { 614 return fps.subPath.IsLeaf() 615 } 616 617 func (fps *AcceptedPlan_FieldSubPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 618 iPaths := []gotenobject.FieldPath{&AcceptedPlan_FieldTerminalPath{selector: fps.selector}} 619 iPaths = append(iPaths, fps.subPath.SplitIntoTerminalIPaths()...) 620 return iPaths 621 } 622 623 func (fps *AcceptedPlan_FieldSubPath) WithIValue(value interface{}) AcceptedPlan_FieldPathValue { 624 return &AcceptedPlan_FieldSubPathValue{fps, fps.subPath.WithRawIValue(value)} 625 } 626 627 func (fps *AcceptedPlan_FieldSubPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 628 return fps.WithIValue(value) 629 } 630 631 func (fps *AcceptedPlan_FieldSubPath) WithIArrayOfValues(values interface{}) AcceptedPlan_FieldPathArrayOfValues { 632 return &AcceptedPlan_FieldSubPathArrayOfValues{fps, fps.subPath.WithRawIArrayOfValues(values)} 633 } 634 635 func (fps *AcceptedPlan_FieldSubPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 636 return fps.WithIArrayOfValues(values) 637 } 638 639 func (fps *AcceptedPlan_FieldSubPath) WithIArrayItemValue(value interface{}) AcceptedPlan_FieldPathArrayItemValue { 640 return &AcceptedPlan_FieldSubPathArrayItemValue{fps, fps.subPath.WithRawIArrayItemValue(value)} 641 } 642 643 func (fps *AcceptedPlan_FieldSubPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 644 return fps.WithIArrayItemValue(value) 645 } 646 647 // AcceptedPlan_FieldPathValue allows storing values for AcceptedPlan fields according to their type 648 type AcceptedPlan_FieldPathValue interface { 649 AcceptedPlan_FieldPath 650 gotenobject.FieldPathValue 651 SetTo(target **AcceptedPlan) 652 CompareWith(*AcceptedPlan) (cmp int, comparable bool) 653 } 654 655 func ParseAcceptedPlan_FieldPathValue(pathStr, valueStr string) (AcceptedPlan_FieldPathValue, error) { 656 fp, err := ParseAcceptedPlan_FieldPath(pathStr) 657 if err != nil { 658 return nil, err 659 } 660 fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr) 661 if err != nil { 662 return nil, status.Errorf(codes.InvalidArgument, "error parsing AcceptedPlan field path value from %s: %v", valueStr, err) 663 } 664 return fpv.(AcceptedPlan_FieldPathValue), nil 665 } 666 667 func MustParseAcceptedPlan_FieldPathValue(pathStr, valueStr string) AcceptedPlan_FieldPathValue { 668 fpv, err := ParseAcceptedPlan_FieldPathValue(pathStr, valueStr) 669 if err != nil { 670 panic(err) 671 } 672 return fpv 673 } 674 675 type AcceptedPlan_FieldTerminalPathValue struct { 676 AcceptedPlan_FieldTerminalPath 677 value interface{} 678 } 679 680 var _ AcceptedPlan_FieldPathValue = (*AcceptedPlan_FieldTerminalPathValue)(nil) 681 682 // GetRawValue returns raw value stored under selected path for 'AcceptedPlan' as interface{} 683 func (fpv *AcceptedPlan_FieldTerminalPathValue) GetRawValue() interface{} { 684 return fpv.value 685 } 686 func (fpv *AcceptedPlan_FieldTerminalPathValue) AsNameValue() (*Name, bool) { 687 res, ok := fpv.value.(*Name) 688 return res, ok 689 } 690 func (fpv *AcceptedPlan_FieldTerminalPathValue) AsMetadataValue() (*meta.Meta, bool) { 691 res, ok := fpv.value.(*meta.Meta) 692 return res, ok 693 } 694 func (fpv *AcceptedPlan_FieldTerminalPathValue) AsDefaultRegionalPlanValue() (*plan.Reference, bool) { 695 res, ok := fpv.value.(*plan.Reference) 696 return res, ok 697 } 698 func (fpv *AcceptedPlan_FieldTerminalPathValue) AsServiceValue() (*meta_service.Reference, bool) { 699 res, ok := fpv.value.(*meta_service.Reference) 700 return res, ok 701 } 702 func (fpv *AcceptedPlan_FieldTerminalPathValue) AsRegionalPlanOverridesValue() ([]*common.RegionalPlanAssignment, bool) { 703 res, ok := fpv.value.([]*common.RegionalPlanAssignment) 704 return res, ok 705 } 706 func (fpv *AcceptedPlan_FieldTerminalPathValue) AsExtensionsValue() ([]*common.Allowance, bool) { 707 res, ok := fpv.value.([]*common.Allowance) 708 return res, ok 709 } 710 func (fpv *AcceptedPlan_FieldTerminalPathValue) AsAllowancesValue() ([]*common.Allowance, bool) { 711 res, ok := fpv.value.([]*common.Allowance) 712 return res, ok 713 } 714 func (fpv *AcceptedPlan_FieldTerminalPathValue) AsAppliedRegionsValue() ([]string, bool) { 715 res, ok := fpv.value.([]string) 716 return res, ok 717 } 718 func (fpv *AcceptedPlan_FieldTerminalPathValue) AsAppliedPlanSpecGenerationValue() (int64, bool) { 719 res, ok := fpv.value.(int64) 720 return res, ok 721 } 722 func (fpv *AcceptedPlan_FieldTerminalPathValue) AsAssigneeValue() (*AcceptedPlan_Assignee, bool) { 723 res, ok := fpv.value.(*AcceptedPlan_Assignee) 724 return res, ok 725 } 726 727 // SetTo stores value for selected field for object AcceptedPlan 728 func (fpv *AcceptedPlan_FieldTerminalPathValue) SetTo(target **AcceptedPlan) { 729 if *target == nil { 730 *target = new(AcceptedPlan) 731 } 732 switch fpv.selector { 733 case AcceptedPlan_FieldPathSelectorName: 734 (*target).Name = fpv.value.(*Name) 735 case AcceptedPlan_FieldPathSelectorMetadata: 736 (*target).Metadata = fpv.value.(*meta.Meta) 737 case AcceptedPlan_FieldPathSelectorDefaultRegionalPlan: 738 (*target).DefaultRegionalPlan = fpv.value.(*plan.Reference) 739 case AcceptedPlan_FieldPathSelectorService: 740 (*target).Service = fpv.value.(*meta_service.Reference) 741 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 742 (*target).RegionalPlanOverrides = fpv.value.([]*common.RegionalPlanAssignment) 743 case AcceptedPlan_FieldPathSelectorExtensions: 744 (*target).Extensions = fpv.value.([]*common.Allowance) 745 case AcceptedPlan_FieldPathSelectorAllowances: 746 (*target).Allowances = fpv.value.([]*common.Allowance) 747 case AcceptedPlan_FieldPathSelectorAppliedRegions: 748 (*target).AppliedRegions = fpv.value.([]string) 749 case AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration: 750 (*target).AppliedPlanSpecGeneration = fpv.value.(int64) 751 case AcceptedPlan_FieldPathSelectorAssignee: 752 (*target).Assignee = fpv.value.(*AcceptedPlan_Assignee) 753 default: 754 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fpv.selector)) 755 } 756 } 757 758 func (fpv *AcceptedPlan_FieldTerminalPathValue) SetToRaw(target proto.Message) { 759 typedObject := target.(*AcceptedPlan) 760 fpv.SetTo(&typedObject) 761 } 762 763 // CompareWith compares value in the 'AcceptedPlan_FieldTerminalPathValue' with the value under path in 'AcceptedPlan'. 764 func (fpv *AcceptedPlan_FieldTerminalPathValue) CompareWith(source *AcceptedPlan) (int, bool) { 765 switch fpv.selector { 766 case AcceptedPlan_FieldPathSelectorName: 767 leftValue := fpv.value.(*Name) 768 rightValue := source.GetName() 769 if leftValue == nil { 770 if rightValue != nil { 771 return -1, true 772 } 773 return 0, true 774 } 775 if rightValue == nil { 776 return 1, true 777 } 778 if leftValue.String() == rightValue.String() { 779 return 0, true 780 } else if leftValue.String() < rightValue.String() { 781 return -1, true 782 } else { 783 return 1, true 784 } 785 case AcceptedPlan_FieldPathSelectorMetadata: 786 return 0, false 787 case AcceptedPlan_FieldPathSelectorDefaultRegionalPlan: 788 leftValue := fpv.value.(*plan.Reference) 789 rightValue := source.GetDefaultRegionalPlan() 790 if leftValue == nil { 791 if rightValue != nil { 792 return -1, true 793 } 794 return 0, true 795 } 796 if rightValue == nil { 797 return 1, true 798 } 799 if leftValue.String() == rightValue.String() { 800 return 0, true 801 } else if leftValue.String() < rightValue.String() { 802 return -1, true 803 } else { 804 return 1, true 805 } 806 case AcceptedPlan_FieldPathSelectorService: 807 leftValue := fpv.value.(*meta_service.Reference) 808 rightValue := source.GetService() 809 if leftValue == nil { 810 if rightValue != nil { 811 return -1, true 812 } 813 return 0, true 814 } 815 if rightValue == nil { 816 return 1, true 817 } 818 if leftValue.String() == rightValue.String() { 819 return 0, true 820 } else if leftValue.String() < rightValue.String() { 821 return -1, true 822 } else { 823 return 1, true 824 } 825 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 826 return 0, false 827 case AcceptedPlan_FieldPathSelectorExtensions: 828 return 0, false 829 case AcceptedPlan_FieldPathSelectorAllowances: 830 return 0, false 831 case AcceptedPlan_FieldPathSelectorAppliedRegions: 832 return 0, false 833 case AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration: 834 leftValue := fpv.value.(int64) 835 rightValue := source.GetAppliedPlanSpecGeneration() 836 if (leftValue) == (rightValue) { 837 return 0, true 838 } else if (leftValue) < (rightValue) { 839 return -1, true 840 } else { 841 return 1, true 842 } 843 case AcceptedPlan_FieldPathSelectorAssignee: 844 return 0, false 845 default: 846 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fpv.selector)) 847 } 848 } 849 850 func (fpv *AcceptedPlan_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) { 851 return fpv.CompareWith(source.(*AcceptedPlan)) 852 } 853 854 type AcceptedPlan_FieldSubPathValue struct { 855 AcceptedPlan_FieldPath 856 subPathValue gotenobject.FieldPathValue 857 } 858 859 var _ AcceptedPlan_FieldPathValue = (*AcceptedPlan_FieldSubPathValue)(nil) 860 861 func (fpvs *AcceptedPlan_FieldSubPathValue) AsMetadataPathValue() (meta.Meta_FieldPathValue, bool) { 862 res, ok := fpvs.subPathValue.(meta.Meta_FieldPathValue) 863 return res, ok 864 } 865 func (fpvs *AcceptedPlan_FieldSubPathValue) AsRegionalPlanOverridesPathValue() (common.RegionalPlanAssignment_FieldPathValue, bool) { 866 res, ok := fpvs.subPathValue.(common.RegionalPlanAssignment_FieldPathValue) 867 return res, ok 868 } 869 func (fpvs *AcceptedPlan_FieldSubPathValue) AsExtensionsPathValue() (common.Allowance_FieldPathValue, bool) { 870 res, ok := fpvs.subPathValue.(common.Allowance_FieldPathValue) 871 return res, ok 872 } 873 func (fpvs *AcceptedPlan_FieldSubPathValue) AsAllowancesPathValue() (common.Allowance_FieldPathValue, bool) { 874 res, ok := fpvs.subPathValue.(common.Allowance_FieldPathValue) 875 return res, ok 876 } 877 func (fpvs *AcceptedPlan_FieldSubPathValue) AsAssigneePathValue() (AcceptedPlanAssignee_FieldPathValue, bool) { 878 res, ok := fpvs.subPathValue.(AcceptedPlanAssignee_FieldPathValue) 879 return res, ok 880 } 881 882 func (fpvs *AcceptedPlan_FieldSubPathValue) SetTo(target **AcceptedPlan) { 883 if *target == nil { 884 *target = new(AcceptedPlan) 885 } 886 switch fpvs.Selector() { 887 case AcceptedPlan_FieldPathSelectorMetadata: 888 fpvs.subPathValue.(meta.Meta_FieldPathValue).SetTo(&(*target).Metadata) 889 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 890 panic("FieldPath setter is unsupported for array subpaths") 891 case AcceptedPlan_FieldPathSelectorExtensions: 892 panic("FieldPath setter is unsupported for array subpaths") 893 case AcceptedPlan_FieldPathSelectorAllowances: 894 panic("FieldPath setter is unsupported for array subpaths") 895 case AcceptedPlan_FieldPathSelectorAssignee: 896 fpvs.subPathValue.(AcceptedPlanAssignee_FieldPathValue).SetTo(&(*target).Assignee) 897 default: 898 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fpvs.Selector())) 899 } 900 } 901 902 func (fpvs *AcceptedPlan_FieldSubPathValue) SetToRaw(target proto.Message) { 903 typedObject := target.(*AcceptedPlan) 904 fpvs.SetTo(&typedObject) 905 } 906 907 func (fpvs *AcceptedPlan_FieldSubPathValue) GetRawValue() interface{} { 908 return fpvs.subPathValue.GetRawValue() 909 } 910 911 func (fpvs *AcceptedPlan_FieldSubPathValue) CompareWith(source *AcceptedPlan) (int, bool) { 912 switch fpvs.Selector() { 913 case AcceptedPlan_FieldPathSelectorMetadata: 914 return fpvs.subPathValue.(meta.Meta_FieldPathValue).CompareWith(source.GetMetadata()) 915 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 916 return 0, false // repeated field 917 case AcceptedPlan_FieldPathSelectorExtensions: 918 return 0, false // repeated field 919 case AcceptedPlan_FieldPathSelectorAllowances: 920 return 0, false // repeated field 921 case AcceptedPlan_FieldPathSelectorAssignee: 922 return fpvs.subPathValue.(AcceptedPlanAssignee_FieldPathValue).CompareWith(source.GetAssignee()) 923 default: 924 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fpvs.Selector())) 925 } 926 } 927 928 func (fpvs *AcceptedPlan_FieldSubPathValue) CompareWithRaw(source proto.Message) (int, bool) { 929 return fpvs.CompareWith(source.(*AcceptedPlan)) 930 } 931 932 // AcceptedPlan_FieldPathArrayItemValue allows storing single item in Path-specific values for AcceptedPlan according to their type 933 // Present only for array (repeated) types. 934 type AcceptedPlan_FieldPathArrayItemValue interface { 935 gotenobject.FieldPathArrayItemValue 936 AcceptedPlan_FieldPath 937 ContainsValue(*AcceptedPlan) bool 938 } 939 940 // ParseAcceptedPlan_FieldPathArrayItemValue parses string and JSON-encoded value to its Value 941 func ParseAcceptedPlan_FieldPathArrayItemValue(pathStr, valueStr string) (AcceptedPlan_FieldPathArrayItemValue, error) { 942 fp, err := ParseAcceptedPlan_FieldPath(pathStr) 943 if err != nil { 944 return nil, err 945 } 946 fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr) 947 if err != nil { 948 return nil, status.Errorf(codes.InvalidArgument, "error parsing AcceptedPlan field path array item value from %s: %v", valueStr, err) 949 } 950 return fpaiv.(AcceptedPlan_FieldPathArrayItemValue), nil 951 } 952 953 func MustParseAcceptedPlan_FieldPathArrayItemValue(pathStr, valueStr string) AcceptedPlan_FieldPathArrayItemValue { 954 fpaiv, err := ParseAcceptedPlan_FieldPathArrayItemValue(pathStr, valueStr) 955 if err != nil { 956 panic(err) 957 } 958 return fpaiv 959 } 960 961 type AcceptedPlan_FieldTerminalPathArrayItemValue struct { 962 AcceptedPlan_FieldTerminalPath 963 value interface{} 964 } 965 966 var _ AcceptedPlan_FieldPathArrayItemValue = (*AcceptedPlan_FieldTerminalPathArrayItemValue)(nil) 967 968 // GetRawValue returns stored element value for array in object AcceptedPlan as interface{} 969 func (fpaiv *AcceptedPlan_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} { 970 return fpaiv.value 971 } 972 func (fpaiv *AcceptedPlan_FieldTerminalPathArrayItemValue) AsRegionalPlanOverridesItemValue() (*common.RegionalPlanAssignment, bool) { 973 res, ok := fpaiv.value.(*common.RegionalPlanAssignment) 974 return res, ok 975 } 976 func (fpaiv *AcceptedPlan_FieldTerminalPathArrayItemValue) AsExtensionsItemValue() (*common.Allowance, bool) { 977 res, ok := fpaiv.value.(*common.Allowance) 978 return res, ok 979 } 980 func (fpaiv *AcceptedPlan_FieldTerminalPathArrayItemValue) AsAllowancesItemValue() (*common.Allowance, bool) { 981 res, ok := fpaiv.value.(*common.Allowance) 982 return res, ok 983 } 984 func (fpaiv *AcceptedPlan_FieldTerminalPathArrayItemValue) AsAppliedRegionsItemValue() (string, bool) { 985 res, ok := fpaiv.value.(string) 986 return res, ok 987 } 988 989 func (fpaiv *AcceptedPlan_FieldTerminalPathArrayItemValue) GetSingle(source *AcceptedPlan) (interface{}, bool) { 990 return nil, false 991 } 992 993 func (fpaiv *AcceptedPlan_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) { 994 return fpaiv.GetSingle(source.(*AcceptedPlan)) 995 } 996 997 // Contains returns a boolean indicating if value that is being held is present in given 'AcceptedPlan' 998 func (fpaiv *AcceptedPlan_FieldTerminalPathArrayItemValue) ContainsValue(source *AcceptedPlan) bool { 999 slice := fpaiv.AcceptedPlan_FieldTerminalPath.Get(source) 1000 for _, v := range slice { 1001 if asProtoMsg, ok := fpaiv.value.(proto.Message); ok { 1002 if proto.Equal(asProtoMsg, v.(proto.Message)) { 1003 return true 1004 } 1005 } else if reflect.DeepEqual(v, fpaiv.value) { 1006 return true 1007 } 1008 } 1009 return false 1010 } 1011 1012 type AcceptedPlan_FieldSubPathArrayItemValue struct { 1013 AcceptedPlan_FieldPath 1014 subPathItemValue gotenobject.FieldPathArrayItemValue 1015 } 1016 1017 // GetRawValue returns stored array item value 1018 func (fpaivs *AcceptedPlan_FieldSubPathArrayItemValue) GetRawItemValue() interface{} { 1019 return fpaivs.subPathItemValue.GetRawItemValue() 1020 } 1021 func (fpaivs *AcceptedPlan_FieldSubPathArrayItemValue) AsMetadataPathItemValue() (meta.Meta_FieldPathArrayItemValue, bool) { 1022 res, ok := fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue) 1023 return res, ok 1024 } 1025 func (fpaivs *AcceptedPlan_FieldSubPathArrayItemValue) AsRegionalPlanOverridesPathItemValue() (common.RegionalPlanAssignment_FieldPathArrayItemValue, bool) { 1026 res, ok := fpaivs.subPathItemValue.(common.RegionalPlanAssignment_FieldPathArrayItemValue) 1027 return res, ok 1028 } 1029 func (fpaivs *AcceptedPlan_FieldSubPathArrayItemValue) AsExtensionsPathItemValue() (common.Allowance_FieldPathArrayItemValue, bool) { 1030 res, ok := fpaivs.subPathItemValue.(common.Allowance_FieldPathArrayItemValue) 1031 return res, ok 1032 } 1033 func (fpaivs *AcceptedPlan_FieldSubPathArrayItemValue) AsAllowancesPathItemValue() (common.Allowance_FieldPathArrayItemValue, bool) { 1034 res, ok := fpaivs.subPathItemValue.(common.Allowance_FieldPathArrayItemValue) 1035 return res, ok 1036 } 1037 func (fpaivs *AcceptedPlan_FieldSubPathArrayItemValue) AsAssigneePathItemValue() (AcceptedPlanAssignee_FieldPathArrayItemValue, bool) { 1038 res, ok := fpaivs.subPathItemValue.(AcceptedPlanAssignee_FieldPathArrayItemValue) 1039 return res, ok 1040 } 1041 1042 // Contains returns a boolean indicating if value that is being held is present in given 'AcceptedPlan' 1043 func (fpaivs *AcceptedPlan_FieldSubPathArrayItemValue) ContainsValue(source *AcceptedPlan) bool { 1044 switch fpaivs.Selector() { 1045 case AcceptedPlan_FieldPathSelectorMetadata: 1046 return fpaivs.subPathItemValue.(meta.Meta_FieldPathArrayItemValue).ContainsValue(source.GetMetadata()) 1047 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 1048 return false // repeated/map field 1049 case AcceptedPlan_FieldPathSelectorExtensions: 1050 return false // repeated/map field 1051 case AcceptedPlan_FieldPathSelectorAllowances: 1052 return false // repeated/map field 1053 case AcceptedPlan_FieldPathSelectorAssignee: 1054 return fpaivs.subPathItemValue.(AcceptedPlanAssignee_FieldPathArrayItemValue).ContainsValue(source.GetAssignee()) 1055 default: 1056 panic(fmt.Sprintf("Invalid selector for AcceptedPlan: %d", fpaivs.Selector())) 1057 } 1058 } 1059 1060 // AcceptedPlan_FieldPathArrayOfValues allows storing slice of values for AcceptedPlan fields according to their type 1061 type AcceptedPlan_FieldPathArrayOfValues interface { 1062 gotenobject.FieldPathArrayOfValues 1063 AcceptedPlan_FieldPath 1064 } 1065 1066 func ParseAcceptedPlan_FieldPathArrayOfValues(pathStr, valuesStr string) (AcceptedPlan_FieldPathArrayOfValues, error) { 1067 fp, err := ParseAcceptedPlan_FieldPath(pathStr) 1068 if err != nil { 1069 return nil, err 1070 } 1071 fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr) 1072 if err != nil { 1073 return nil, status.Errorf(codes.InvalidArgument, "error parsing AcceptedPlan field path array of values from %s: %v", valuesStr, err) 1074 } 1075 return fpaov.(AcceptedPlan_FieldPathArrayOfValues), nil 1076 } 1077 1078 func MustParseAcceptedPlan_FieldPathArrayOfValues(pathStr, valuesStr string) AcceptedPlan_FieldPathArrayOfValues { 1079 fpaov, err := ParseAcceptedPlan_FieldPathArrayOfValues(pathStr, valuesStr) 1080 if err != nil { 1081 panic(err) 1082 } 1083 return fpaov 1084 } 1085 1086 type AcceptedPlan_FieldTerminalPathArrayOfValues struct { 1087 AcceptedPlan_FieldTerminalPath 1088 values interface{} 1089 } 1090 1091 var _ AcceptedPlan_FieldPathArrayOfValues = (*AcceptedPlan_FieldTerminalPathArrayOfValues)(nil) 1092 1093 func (fpaov *AcceptedPlan_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) { 1094 switch fpaov.selector { 1095 case AcceptedPlan_FieldPathSelectorName: 1096 for _, v := range fpaov.values.([]*Name) { 1097 values = append(values, v) 1098 } 1099 case AcceptedPlan_FieldPathSelectorMetadata: 1100 for _, v := range fpaov.values.([]*meta.Meta) { 1101 values = append(values, v) 1102 } 1103 case AcceptedPlan_FieldPathSelectorDefaultRegionalPlan: 1104 for _, v := range fpaov.values.([]*plan.Reference) { 1105 values = append(values, v) 1106 } 1107 case AcceptedPlan_FieldPathSelectorService: 1108 for _, v := range fpaov.values.([]*meta_service.Reference) { 1109 values = append(values, v) 1110 } 1111 case AcceptedPlan_FieldPathSelectorRegionalPlanOverrides: 1112 for _, v := range fpaov.values.([][]*common.RegionalPlanAssignment) { 1113 values = append(values, v) 1114 } 1115 case AcceptedPlan_FieldPathSelectorExtensions: 1116 for _, v := range fpaov.values.([][]*common.Allowance) { 1117 values = append(values, v) 1118 } 1119 case AcceptedPlan_FieldPathSelectorAllowances: 1120 for _, v := range fpaov.values.([][]*common.Allowance) { 1121 values = append(values, v) 1122 } 1123 case AcceptedPlan_FieldPathSelectorAppliedRegions: 1124 for _, v := range fpaov.values.([][]string) { 1125 values = append(values, v) 1126 } 1127 case AcceptedPlan_FieldPathSelectorAppliedPlanSpecGeneration: 1128 for _, v := range fpaov.values.([]int64) { 1129 values = append(values, v) 1130 } 1131 case AcceptedPlan_FieldPathSelectorAssignee: 1132 for _, v := range fpaov.values.([]*AcceptedPlan_Assignee) { 1133 values = append(values, v) 1134 } 1135 } 1136 return 1137 } 1138 func (fpaov *AcceptedPlan_FieldTerminalPathArrayOfValues) AsNameArrayOfValues() ([]*Name, bool) { 1139 res, ok := fpaov.values.([]*Name) 1140 return res, ok 1141 } 1142 func (fpaov *AcceptedPlan_FieldTerminalPathArrayOfValues) AsMetadataArrayOfValues() ([]*meta.Meta, bool) { 1143 res, ok := fpaov.values.([]*meta.Meta) 1144 return res, ok 1145 } 1146 func (fpaov *AcceptedPlan_FieldTerminalPathArrayOfValues) AsDefaultRegionalPlanArrayOfValues() ([]*plan.Reference, bool) { 1147 res, ok := fpaov.values.([]*plan.Reference) 1148 return res, ok 1149 } 1150 func (fpaov *AcceptedPlan_FieldTerminalPathArrayOfValues) AsServiceArrayOfValues() ([]*meta_service.Reference, bool) { 1151 res, ok := fpaov.values.([]*meta_service.Reference) 1152 return res, ok 1153 } 1154 func (fpaov *AcceptedPlan_FieldTerminalPathArrayOfValues) AsRegionalPlanOverridesArrayOfValues() ([][]*common.RegionalPlanAssignment, bool) { 1155 res, ok := fpaov.values.([][]*common.RegionalPlanAssignment) 1156 return res, ok 1157 } 1158 func (fpaov *AcceptedPlan_FieldTerminalPathArrayOfValues) AsExtensionsArrayOfValues() ([][]*common.Allowance, bool) { 1159 res, ok := fpaov.values.([][]*common.Allowance) 1160 return res, ok 1161 } 1162 func (fpaov *AcceptedPlan_FieldTerminalPathArrayOfValues) AsAllowancesArrayOfValues() ([][]*common.Allowance, bool) { 1163 res, ok := fpaov.values.([][]*common.Allowance) 1164 return res, ok 1165 } 1166 func (fpaov *AcceptedPlan_FieldTerminalPathArrayOfValues) AsAppliedRegionsArrayOfValues() ([][]string, bool) { 1167 res, ok := fpaov.values.([][]string) 1168 return res, ok 1169 } 1170 func (fpaov *AcceptedPlan_FieldTerminalPathArrayOfValues) AsAppliedPlanSpecGenerationArrayOfValues() ([]int64, bool) { 1171 res, ok := fpaov.values.([]int64) 1172 return res, ok 1173 } 1174 func (fpaov *AcceptedPlan_FieldTerminalPathArrayOfValues) AsAssigneeArrayOfValues() ([]*AcceptedPlan_Assignee, bool) { 1175 res, ok := fpaov.values.([]*AcceptedPlan_Assignee) 1176 return res, ok 1177 } 1178 1179 type AcceptedPlan_FieldSubPathArrayOfValues struct { 1180 AcceptedPlan_FieldPath 1181 subPathArrayOfValues gotenobject.FieldPathArrayOfValues 1182 } 1183 1184 var _ AcceptedPlan_FieldPathArrayOfValues = (*AcceptedPlan_FieldSubPathArrayOfValues)(nil) 1185 1186 func (fpsaov *AcceptedPlan_FieldSubPathArrayOfValues) GetRawValues() []interface{} { 1187 return fpsaov.subPathArrayOfValues.GetRawValues() 1188 } 1189 func (fpsaov *AcceptedPlan_FieldSubPathArrayOfValues) AsMetadataPathArrayOfValues() (meta.Meta_FieldPathArrayOfValues, bool) { 1190 res, ok := fpsaov.subPathArrayOfValues.(meta.Meta_FieldPathArrayOfValues) 1191 return res, ok 1192 } 1193 func (fpsaov *AcceptedPlan_FieldSubPathArrayOfValues) AsRegionalPlanOverridesPathArrayOfValues() (common.RegionalPlanAssignment_FieldPathArrayOfValues, bool) { 1194 res, ok := fpsaov.subPathArrayOfValues.(common.RegionalPlanAssignment_FieldPathArrayOfValues) 1195 return res, ok 1196 } 1197 func (fpsaov *AcceptedPlan_FieldSubPathArrayOfValues) AsExtensionsPathArrayOfValues() (common.Allowance_FieldPathArrayOfValues, bool) { 1198 res, ok := fpsaov.subPathArrayOfValues.(common.Allowance_FieldPathArrayOfValues) 1199 return res, ok 1200 } 1201 func (fpsaov *AcceptedPlan_FieldSubPathArrayOfValues) AsAllowancesPathArrayOfValues() (common.Allowance_FieldPathArrayOfValues, bool) { 1202 res, ok := fpsaov.subPathArrayOfValues.(common.Allowance_FieldPathArrayOfValues) 1203 return res, ok 1204 } 1205 func (fpsaov *AcceptedPlan_FieldSubPathArrayOfValues) AsAssigneePathArrayOfValues() (AcceptedPlanAssignee_FieldPathArrayOfValues, bool) { 1206 res, ok := fpsaov.subPathArrayOfValues.(AcceptedPlanAssignee_FieldPathArrayOfValues) 1207 return res, ok 1208 } 1209 1210 // FieldPath provides implementation to handle 1211 // https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto 1212 type AcceptedPlanAssignee_FieldPath interface { 1213 gotenobject.FieldPath 1214 Selector() AcceptedPlanAssignee_FieldPathSelector 1215 Get(source *AcceptedPlan_Assignee) []interface{} 1216 GetSingle(source *AcceptedPlan_Assignee) (interface{}, bool) 1217 ClearValue(item *AcceptedPlan_Assignee) 1218 1219 // Those methods build corresponding AcceptedPlanAssignee_FieldPathValue 1220 // (or array of values) and holds passed value. Panics if injected type is incorrect. 1221 WithIValue(value interface{}) AcceptedPlanAssignee_FieldPathValue 1222 WithIArrayOfValues(values interface{}) AcceptedPlanAssignee_FieldPathArrayOfValues 1223 WithIArrayItemValue(value interface{}) AcceptedPlanAssignee_FieldPathArrayItemValue 1224 } 1225 1226 type AcceptedPlanAssignee_FieldPathSelector int32 1227 1228 const ( 1229 AcceptedPlanAssignee_FieldPathSelectorProjectAssignee AcceptedPlanAssignee_FieldPathSelector = 0 1230 AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee AcceptedPlanAssignee_FieldPathSelector = 1 1231 AcceptedPlanAssignee_FieldPathSelectorServiceAssignee AcceptedPlanAssignee_FieldPathSelector = 2 1232 ) 1233 1234 func (s AcceptedPlanAssignee_FieldPathSelector) String() string { 1235 switch s { 1236 case AcceptedPlanAssignee_FieldPathSelectorProjectAssignee: 1237 return "project_assignee" 1238 case AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee: 1239 return "organization_assignee" 1240 case AcceptedPlanAssignee_FieldPathSelectorServiceAssignee: 1241 return "service_assignee" 1242 default: 1243 panic(fmt.Sprintf("Invalid selector for AcceptedPlan_Assignee: %d", s)) 1244 } 1245 } 1246 1247 func BuildAcceptedPlanAssignee_FieldPath(fp gotenobject.RawFieldPath) (AcceptedPlanAssignee_FieldPath, error) { 1248 if len(fp) == 0 { 1249 return nil, status.Error(codes.InvalidArgument, "empty field path for object AcceptedPlan_Assignee") 1250 } 1251 if len(fp) == 1 { 1252 switch fp[0] { 1253 case "project_assignee", "projectAssignee", "project-assignee": 1254 return &AcceptedPlanAssignee_FieldTerminalPath{selector: AcceptedPlanAssignee_FieldPathSelectorProjectAssignee}, nil 1255 case "organization_assignee", "organizationAssignee", "organization-assignee": 1256 return &AcceptedPlanAssignee_FieldTerminalPath{selector: AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee}, nil 1257 case "service_assignee", "serviceAssignee", "service-assignee": 1258 return &AcceptedPlanAssignee_FieldTerminalPath{selector: AcceptedPlanAssignee_FieldPathSelectorServiceAssignee}, nil 1259 } 1260 } 1261 return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object AcceptedPlan_Assignee", fp) 1262 } 1263 1264 func ParseAcceptedPlanAssignee_FieldPath(rawField string) (AcceptedPlanAssignee_FieldPath, error) { 1265 fp, err := gotenobject.ParseRawFieldPath(rawField) 1266 if err != nil { 1267 return nil, err 1268 } 1269 return BuildAcceptedPlanAssignee_FieldPath(fp) 1270 } 1271 1272 func MustParseAcceptedPlanAssignee_FieldPath(rawField string) AcceptedPlanAssignee_FieldPath { 1273 fp, err := ParseAcceptedPlanAssignee_FieldPath(rawField) 1274 if err != nil { 1275 panic(err) 1276 } 1277 return fp 1278 } 1279 1280 type AcceptedPlanAssignee_FieldTerminalPath struct { 1281 selector AcceptedPlanAssignee_FieldPathSelector 1282 } 1283 1284 var _ AcceptedPlanAssignee_FieldPath = (*AcceptedPlanAssignee_FieldTerminalPath)(nil) 1285 1286 func (fp *AcceptedPlanAssignee_FieldTerminalPath) Selector() AcceptedPlanAssignee_FieldPathSelector { 1287 return fp.selector 1288 } 1289 1290 // String returns path representation in proto convention 1291 func (fp *AcceptedPlanAssignee_FieldTerminalPath) String() string { 1292 return fp.selector.String() 1293 } 1294 1295 // JSONString returns path representation is JSON convention 1296 func (fp *AcceptedPlanAssignee_FieldTerminalPath) JSONString() string { 1297 return strcase.ToLowerCamel(fp.String()) 1298 } 1299 1300 // Get returns all values pointed by specific field from source AcceptedPlan_Assignee 1301 func (fp *AcceptedPlanAssignee_FieldTerminalPath) Get(source *AcceptedPlan_Assignee) (values []interface{}) { 1302 if source != nil { 1303 switch fp.selector { 1304 case AcceptedPlanAssignee_FieldPathSelectorProjectAssignee: 1305 if source, ok := source.Assignee.(*AcceptedPlan_Assignee_ProjectAssignee); ok && source != nil { 1306 if source.ProjectAssignee != nil { 1307 values = append(values, source.ProjectAssignee) 1308 } 1309 } 1310 case AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee: 1311 if source, ok := source.Assignee.(*AcceptedPlan_Assignee_OrganizationAssignee); ok && source != nil { 1312 if source.OrganizationAssignee != nil { 1313 values = append(values, source.OrganizationAssignee) 1314 } 1315 } 1316 case AcceptedPlanAssignee_FieldPathSelectorServiceAssignee: 1317 if source, ok := source.Assignee.(*AcceptedPlan_Assignee_ServiceAssignee); ok && source != nil { 1318 if source.ServiceAssignee != nil { 1319 values = append(values, source.ServiceAssignee) 1320 } 1321 } 1322 default: 1323 panic(fmt.Sprintf("Invalid selector for AcceptedPlan_Assignee: %d", fp.selector)) 1324 } 1325 } 1326 return 1327 } 1328 1329 func (fp *AcceptedPlanAssignee_FieldTerminalPath) GetRaw(source proto.Message) []interface{} { 1330 return fp.Get(source.(*AcceptedPlan_Assignee)) 1331 } 1332 1333 // GetSingle returns value pointed by specific field of from source AcceptedPlan_Assignee 1334 func (fp *AcceptedPlanAssignee_FieldTerminalPath) GetSingle(source *AcceptedPlan_Assignee) (interface{}, bool) { 1335 switch fp.selector { 1336 case AcceptedPlanAssignee_FieldPathSelectorProjectAssignee: 1337 // if object nil or oneof not active, return "default" type with false flag. 1338 if source == nil { 1339 return source.GetProjectAssignee(), false 1340 } 1341 _, oneOfSelected := source.Assignee.(*AcceptedPlan_Assignee_ProjectAssignee) 1342 if !oneOfSelected { 1343 return source.GetProjectAssignee(), false // to return "type" information 1344 } 1345 res := source.GetProjectAssignee() 1346 return res, res != nil 1347 case AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee: 1348 // if object nil or oneof not active, return "default" type with false flag. 1349 if source == nil { 1350 return source.GetOrganizationAssignee(), false 1351 } 1352 _, oneOfSelected := source.Assignee.(*AcceptedPlan_Assignee_OrganizationAssignee) 1353 if !oneOfSelected { 1354 return source.GetOrganizationAssignee(), false // to return "type" information 1355 } 1356 res := source.GetOrganizationAssignee() 1357 return res, res != nil 1358 case AcceptedPlanAssignee_FieldPathSelectorServiceAssignee: 1359 // if object nil or oneof not active, return "default" type with false flag. 1360 if source == nil { 1361 return source.GetServiceAssignee(), false 1362 } 1363 _, oneOfSelected := source.Assignee.(*AcceptedPlan_Assignee_ServiceAssignee) 1364 if !oneOfSelected { 1365 return source.GetServiceAssignee(), false // to return "type" information 1366 } 1367 res := source.GetServiceAssignee() 1368 return res, res != nil 1369 default: 1370 panic(fmt.Sprintf("Invalid selector for AcceptedPlan_Assignee: %d", fp.selector)) 1371 } 1372 } 1373 1374 func (fp *AcceptedPlanAssignee_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 1375 return fp.GetSingle(source.(*AcceptedPlan_Assignee)) 1376 } 1377 1378 // GetDefault returns a default value of the field type 1379 func (fp *AcceptedPlanAssignee_FieldTerminalPath) GetDefault() interface{} { 1380 switch fp.selector { 1381 case AcceptedPlanAssignee_FieldPathSelectorProjectAssignee: 1382 return (*iam_project.Reference)(nil) 1383 case AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee: 1384 return (*iam_organization.Reference)(nil) 1385 case AcceptedPlanAssignee_FieldPathSelectorServiceAssignee: 1386 return (*meta_service.Reference)(nil) 1387 default: 1388 panic(fmt.Sprintf("Invalid selector for AcceptedPlan_Assignee: %d", fp.selector)) 1389 } 1390 } 1391 1392 func (fp *AcceptedPlanAssignee_FieldTerminalPath) ClearValue(item *AcceptedPlan_Assignee) { 1393 if item != nil { 1394 switch fp.selector { 1395 case AcceptedPlanAssignee_FieldPathSelectorProjectAssignee: 1396 if item, ok := item.Assignee.(*AcceptedPlan_Assignee_ProjectAssignee); ok { 1397 item.ProjectAssignee = nil 1398 } 1399 case AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee: 1400 if item, ok := item.Assignee.(*AcceptedPlan_Assignee_OrganizationAssignee); ok { 1401 item.OrganizationAssignee = nil 1402 } 1403 case AcceptedPlanAssignee_FieldPathSelectorServiceAssignee: 1404 if item, ok := item.Assignee.(*AcceptedPlan_Assignee_ServiceAssignee); ok { 1405 item.ServiceAssignee = nil 1406 } 1407 default: 1408 panic(fmt.Sprintf("Invalid selector for AcceptedPlan_Assignee: %d", fp.selector)) 1409 } 1410 } 1411 } 1412 1413 func (fp *AcceptedPlanAssignee_FieldTerminalPath) ClearValueRaw(item proto.Message) { 1414 fp.ClearValue(item.(*AcceptedPlan_Assignee)) 1415 } 1416 1417 // IsLeaf - whether field path is holds simple value 1418 func (fp *AcceptedPlanAssignee_FieldTerminalPath) IsLeaf() bool { 1419 return fp.selector == AcceptedPlanAssignee_FieldPathSelectorProjectAssignee || 1420 fp.selector == AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee || 1421 fp.selector == AcceptedPlanAssignee_FieldPathSelectorServiceAssignee 1422 } 1423 1424 func (fp *AcceptedPlanAssignee_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 1425 return []gotenobject.FieldPath{fp} 1426 } 1427 1428 func (fp *AcceptedPlanAssignee_FieldTerminalPath) WithIValue(value interface{}) AcceptedPlanAssignee_FieldPathValue { 1429 switch fp.selector { 1430 case AcceptedPlanAssignee_FieldPathSelectorProjectAssignee: 1431 return &AcceptedPlanAssignee_FieldTerminalPathValue{AcceptedPlanAssignee_FieldTerminalPath: *fp, value: value.(*iam_project.Reference)} 1432 case AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee: 1433 return &AcceptedPlanAssignee_FieldTerminalPathValue{AcceptedPlanAssignee_FieldTerminalPath: *fp, value: value.(*iam_organization.Reference)} 1434 case AcceptedPlanAssignee_FieldPathSelectorServiceAssignee: 1435 return &AcceptedPlanAssignee_FieldTerminalPathValue{AcceptedPlanAssignee_FieldTerminalPath: *fp, value: value.(*meta_service.Reference)} 1436 default: 1437 panic(fmt.Sprintf("Invalid selector for AcceptedPlan_Assignee: %d", fp.selector)) 1438 } 1439 } 1440 1441 func (fp *AcceptedPlanAssignee_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 1442 return fp.WithIValue(value) 1443 } 1444 1445 func (fp *AcceptedPlanAssignee_FieldTerminalPath) WithIArrayOfValues(values interface{}) AcceptedPlanAssignee_FieldPathArrayOfValues { 1446 fpaov := &AcceptedPlanAssignee_FieldTerminalPathArrayOfValues{AcceptedPlanAssignee_FieldTerminalPath: *fp} 1447 switch fp.selector { 1448 case AcceptedPlanAssignee_FieldPathSelectorProjectAssignee: 1449 return &AcceptedPlanAssignee_FieldTerminalPathArrayOfValues{AcceptedPlanAssignee_FieldTerminalPath: *fp, values: values.([]*iam_project.Reference)} 1450 case AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee: 1451 return &AcceptedPlanAssignee_FieldTerminalPathArrayOfValues{AcceptedPlanAssignee_FieldTerminalPath: *fp, values: values.([]*iam_organization.Reference)} 1452 case AcceptedPlanAssignee_FieldPathSelectorServiceAssignee: 1453 return &AcceptedPlanAssignee_FieldTerminalPathArrayOfValues{AcceptedPlanAssignee_FieldTerminalPath: *fp, values: values.([]*meta_service.Reference)} 1454 default: 1455 panic(fmt.Sprintf("Invalid selector for AcceptedPlan_Assignee: %d", fp.selector)) 1456 } 1457 return fpaov 1458 } 1459 1460 func (fp *AcceptedPlanAssignee_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 1461 return fp.WithIArrayOfValues(values) 1462 } 1463 1464 func (fp *AcceptedPlanAssignee_FieldTerminalPath) WithIArrayItemValue(value interface{}) AcceptedPlanAssignee_FieldPathArrayItemValue { 1465 switch fp.selector { 1466 default: 1467 panic(fmt.Sprintf("Invalid selector for AcceptedPlan_Assignee: %d", fp.selector)) 1468 } 1469 } 1470 1471 func (fp *AcceptedPlanAssignee_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 1472 return fp.WithIArrayItemValue(value) 1473 } 1474 1475 // AcceptedPlanAssignee_FieldPathValue allows storing values for Assignee fields according to their type 1476 type AcceptedPlanAssignee_FieldPathValue interface { 1477 AcceptedPlanAssignee_FieldPath 1478 gotenobject.FieldPathValue 1479 SetTo(target **AcceptedPlan_Assignee) 1480 CompareWith(*AcceptedPlan_Assignee) (cmp int, comparable bool) 1481 } 1482 1483 func ParseAcceptedPlanAssignee_FieldPathValue(pathStr, valueStr string) (AcceptedPlanAssignee_FieldPathValue, error) { 1484 fp, err := ParseAcceptedPlanAssignee_FieldPath(pathStr) 1485 if err != nil { 1486 return nil, err 1487 } 1488 fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr) 1489 if err != nil { 1490 return nil, status.Errorf(codes.InvalidArgument, "error parsing Assignee field path value from %s: %v", valueStr, err) 1491 } 1492 return fpv.(AcceptedPlanAssignee_FieldPathValue), nil 1493 } 1494 1495 func MustParseAcceptedPlanAssignee_FieldPathValue(pathStr, valueStr string) AcceptedPlanAssignee_FieldPathValue { 1496 fpv, err := ParseAcceptedPlanAssignee_FieldPathValue(pathStr, valueStr) 1497 if err != nil { 1498 panic(err) 1499 } 1500 return fpv 1501 } 1502 1503 type AcceptedPlanAssignee_FieldTerminalPathValue struct { 1504 AcceptedPlanAssignee_FieldTerminalPath 1505 value interface{} 1506 } 1507 1508 var _ AcceptedPlanAssignee_FieldPathValue = (*AcceptedPlanAssignee_FieldTerminalPathValue)(nil) 1509 1510 // GetRawValue returns raw value stored under selected path for 'Assignee' as interface{} 1511 func (fpv *AcceptedPlanAssignee_FieldTerminalPathValue) GetRawValue() interface{} { 1512 return fpv.value 1513 } 1514 func (fpv *AcceptedPlanAssignee_FieldTerminalPathValue) AsProjectAssigneeValue() (*iam_project.Reference, bool) { 1515 res, ok := fpv.value.(*iam_project.Reference) 1516 return res, ok 1517 } 1518 func (fpv *AcceptedPlanAssignee_FieldTerminalPathValue) AsOrganizationAssigneeValue() (*iam_organization.Reference, bool) { 1519 res, ok := fpv.value.(*iam_organization.Reference) 1520 return res, ok 1521 } 1522 func (fpv *AcceptedPlanAssignee_FieldTerminalPathValue) AsServiceAssigneeValue() (*meta_service.Reference, bool) { 1523 res, ok := fpv.value.(*meta_service.Reference) 1524 return res, ok 1525 } 1526 1527 // SetTo stores value for selected field for object Assignee 1528 func (fpv *AcceptedPlanAssignee_FieldTerminalPathValue) SetTo(target **AcceptedPlan_Assignee) { 1529 if *target == nil { 1530 *target = new(AcceptedPlan_Assignee) 1531 } 1532 switch fpv.selector { 1533 case AcceptedPlanAssignee_FieldPathSelectorProjectAssignee: 1534 if _, ok := (*target).Assignee.(*AcceptedPlan_Assignee_ProjectAssignee); !ok { 1535 (*target).Assignee = &AcceptedPlan_Assignee_ProjectAssignee{} 1536 } 1537 (*target).Assignee.(*AcceptedPlan_Assignee_ProjectAssignee).ProjectAssignee = fpv.value.(*iam_project.Reference) 1538 case AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee: 1539 if _, ok := (*target).Assignee.(*AcceptedPlan_Assignee_OrganizationAssignee); !ok { 1540 (*target).Assignee = &AcceptedPlan_Assignee_OrganizationAssignee{} 1541 } 1542 (*target).Assignee.(*AcceptedPlan_Assignee_OrganizationAssignee).OrganizationAssignee = fpv.value.(*iam_organization.Reference) 1543 case AcceptedPlanAssignee_FieldPathSelectorServiceAssignee: 1544 if _, ok := (*target).Assignee.(*AcceptedPlan_Assignee_ServiceAssignee); !ok { 1545 (*target).Assignee = &AcceptedPlan_Assignee_ServiceAssignee{} 1546 } 1547 (*target).Assignee.(*AcceptedPlan_Assignee_ServiceAssignee).ServiceAssignee = fpv.value.(*meta_service.Reference) 1548 default: 1549 panic(fmt.Sprintf("Invalid selector for AcceptedPlan_Assignee: %d", fpv.selector)) 1550 } 1551 } 1552 1553 func (fpv *AcceptedPlanAssignee_FieldTerminalPathValue) SetToRaw(target proto.Message) { 1554 typedObject := target.(*AcceptedPlan_Assignee) 1555 fpv.SetTo(&typedObject) 1556 } 1557 1558 // CompareWith compares value in the 'AcceptedPlanAssignee_FieldTerminalPathValue' with the value under path in 'AcceptedPlan_Assignee'. 1559 func (fpv *AcceptedPlanAssignee_FieldTerminalPathValue) CompareWith(source *AcceptedPlan_Assignee) (int, bool) { 1560 switch fpv.selector { 1561 case AcceptedPlanAssignee_FieldPathSelectorProjectAssignee: 1562 leftValue := fpv.value.(*iam_project.Reference) 1563 rightValue := source.GetProjectAssignee() 1564 if leftValue == nil { 1565 if rightValue != nil { 1566 return -1, true 1567 } 1568 return 0, true 1569 } 1570 if rightValue == nil { 1571 return 1, true 1572 } 1573 if leftValue.String() == rightValue.String() { 1574 return 0, true 1575 } else if leftValue.String() < rightValue.String() { 1576 return -1, true 1577 } else { 1578 return 1, true 1579 } 1580 case AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee: 1581 leftValue := fpv.value.(*iam_organization.Reference) 1582 rightValue := source.GetOrganizationAssignee() 1583 if leftValue == nil { 1584 if rightValue != nil { 1585 return -1, true 1586 } 1587 return 0, true 1588 } 1589 if rightValue == nil { 1590 return 1, true 1591 } 1592 if leftValue.String() == rightValue.String() { 1593 return 0, true 1594 } else if leftValue.String() < rightValue.String() { 1595 return -1, true 1596 } else { 1597 return 1, true 1598 } 1599 case AcceptedPlanAssignee_FieldPathSelectorServiceAssignee: 1600 leftValue := fpv.value.(*meta_service.Reference) 1601 rightValue := source.GetServiceAssignee() 1602 if leftValue == nil { 1603 if rightValue != nil { 1604 return -1, true 1605 } 1606 return 0, true 1607 } 1608 if rightValue == nil { 1609 return 1, true 1610 } 1611 if leftValue.String() == rightValue.String() { 1612 return 0, true 1613 } else if leftValue.String() < rightValue.String() { 1614 return -1, true 1615 } else { 1616 return 1, true 1617 } 1618 default: 1619 panic(fmt.Sprintf("Invalid selector for AcceptedPlan_Assignee: %d", fpv.selector)) 1620 } 1621 } 1622 1623 func (fpv *AcceptedPlanAssignee_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) { 1624 return fpv.CompareWith(source.(*AcceptedPlan_Assignee)) 1625 } 1626 1627 // AcceptedPlanAssignee_FieldPathArrayItemValue allows storing single item in Path-specific values for Assignee according to their type 1628 // Present only for array (repeated) types. 1629 type AcceptedPlanAssignee_FieldPathArrayItemValue interface { 1630 gotenobject.FieldPathArrayItemValue 1631 AcceptedPlanAssignee_FieldPath 1632 ContainsValue(*AcceptedPlan_Assignee) bool 1633 } 1634 1635 // ParseAcceptedPlanAssignee_FieldPathArrayItemValue parses string and JSON-encoded value to its Value 1636 func ParseAcceptedPlanAssignee_FieldPathArrayItemValue(pathStr, valueStr string) (AcceptedPlanAssignee_FieldPathArrayItemValue, error) { 1637 fp, err := ParseAcceptedPlanAssignee_FieldPath(pathStr) 1638 if err != nil { 1639 return nil, err 1640 } 1641 fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr) 1642 if err != nil { 1643 return nil, status.Errorf(codes.InvalidArgument, "error parsing Assignee field path array item value from %s: %v", valueStr, err) 1644 } 1645 return fpaiv.(AcceptedPlanAssignee_FieldPathArrayItemValue), nil 1646 } 1647 1648 func MustParseAcceptedPlanAssignee_FieldPathArrayItemValue(pathStr, valueStr string) AcceptedPlanAssignee_FieldPathArrayItemValue { 1649 fpaiv, err := ParseAcceptedPlanAssignee_FieldPathArrayItemValue(pathStr, valueStr) 1650 if err != nil { 1651 panic(err) 1652 } 1653 return fpaiv 1654 } 1655 1656 type AcceptedPlanAssignee_FieldTerminalPathArrayItemValue struct { 1657 AcceptedPlanAssignee_FieldTerminalPath 1658 value interface{} 1659 } 1660 1661 var _ AcceptedPlanAssignee_FieldPathArrayItemValue = (*AcceptedPlanAssignee_FieldTerminalPathArrayItemValue)(nil) 1662 1663 // GetRawValue returns stored element value for array in object AcceptedPlan_Assignee as interface{} 1664 func (fpaiv *AcceptedPlanAssignee_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} { 1665 return fpaiv.value 1666 } 1667 1668 func (fpaiv *AcceptedPlanAssignee_FieldTerminalPathArrayItemValue) GetSingle(source *AcceptedPlan_Assignee) (interface{}, bool) { 1669 return nil, false 1670 } 1671 1672 func (fpaiv *AcceptedPlanAssignee_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) { 1673 return fpaiv.GetSingle(source.(*AcceptedPlan_Assignee)) 1674 } 1675 1676 // Contains returns a boolean indicating if value that is being held is present in given 'Assignee' 1677 func (fpaiv *AcceptedPlanAssignee_FieldTerminalPathArrayItemValue) ContainsValue(source *AcceptedPlan_Assignee) bool { 1678 slice := fpaiv.AcceptedPlanAssignee_FieldTerminalPath.Get(source) 1679 for _, v := range slice { 1680 if asProtoMsg, ok := fpaiv.value.(proto.Message); ok { 1681 if proto.Equal(asProtoMsg, v.(proto.Message)) { 1682 return true 1683 } 1684 } else if reflect.DeepEqual(v, fpaiv.value) { 1685 return true 1686 } 1687 } 1688 return false 1689 } 1690 1691 // AcceptedPlanAssignee_FieldPathArrayOfValues allows storing slice of values for Assignee fields according to their type 1692 type AcceptedPlanAssignee_FieldPathArrayOfValues interface { 1693 gotenobject.FieldPathArrayOfValues 1694 AcceptedPlanAssignee_FieldPath 1695 } 1696 1697 func ParseAcceptedPlanAssignee_FieldPathArrayOfValues(pathStr, valuesStr string) (AcceptedPlanAssignee_FieldPathArrayOfValues, error) { 1698 fp, err := ParseAcceptedPlanAssignee_FieldPath(pathStr) 1699 if err != nil { 1700 return nil, err 1701 } 1702 fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr) 1703 if err != nil { 1704 return nil, status.Errorf(codes.InvalidArgument, "error parsing Assignee field path array of values from %s: %v", valuesStr, err) 1705 } 1706 return fpaov.(AcceptedPlanAssignee_FieldPathArrayOfValues), nil 1707 } 1708 1709 func MustParseAcceptedPlanAssignee_FieldPathArrayOfValues(pathStr, valuesStr string) AcceptedPlanAssignee_FieldPathArrayOfValues { 1710 fpaov, err := ParseAcceptedPlanAssignee_FieldPathArrayOfValues(pathStr, valuesStr) 1711 if err != nil { 1712 panic(err) 1713 } 1714 return fpaov 1715 } 1716 1717 type AcceptedPlanAssignee_FieldTerminalPathArrayOfValues struct { 1718 AcceptedPlanAssignee_FieldTerminalPath 1719 values interface{} 1720 } 1721 1722 var _ AcceptedPlanAssignee_FieldPathArrayOfValues = (*AcceptedPlanAssignee_FieldTerminalPathArrayOfValues)(nil) 1723 1724 func (fpaov *AcceptedPlanAssignee_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) { 1725 switch fpaov.selector { 1726 case AcceptedPlanAssignee_FieldPathSelectorProjectAssignee: 1727 for _, v := range fpaov.values.([]*iam_project.Reference) { 1728 values = append(values, v) 1729 } 1730 case AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee: 1731 for _, v := range fpaov.values.([]*iam_organization.Reference) { 1732 values = append(values, v) 1733 } 1734 case AcceptedPlanAssignee_FieldPathSelectorServiceAssignee: 1735 for _, v := range fpaov.values.([]*meta_service.Reference) { 1736 values = append(values, v) 1737 } 1738 } 1739 return 1740 } 1741 func (fpaov *AcceptedPlanAssignee_FieldTerminalPathArrayOfValues) AsProjectAssigneeArrayOfValues() ([]*iam_project.Reference, bool) { 1742 res, ok := fpaov.values.([]*iam_project.Reference) 1743 return res, ok 1744 } 1745 func (fpaov *AcceptedPlanAssignee_FieldTerminalPathArrayOfValues) AsOrganizationAssigneeArrayOfValues() ([]*iam_organization.Reference, bool) { 1746 res, ok := fpaov.values.([]*iam_organization.Reference) 1747 return res, ok 1748 } 1749 func (fpaov *AcceptedPlanAssignee_FieldTerminalPathArrayOfValues) AsServiceAssigneeArrayOfValues() ([]*meta_service.Reference, bool) { 1750 res, ok := fpaov.values.([]*meta_service.Reference) 1751 return res, ok 1752 }