github.com/cloudwan/edgelq-sdk@v1.15.4/audit/resources/v1/resource_change_log/resource_change_log.pb.fieldpath.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/audit/proto/v1/resource_change_log.proto 3 // DO NOT EDIT!!! 4 5 package resource_change_log 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 common "github.com/cloudwan/edgelq-sdk/audit/resources/v1/common" 27 iam_organization "github.com/cloudwan/edgelq-sdk/iam/resources/v1/organization" 28 iam_project "github.com/cloudwan/edgelq-sdk/iam/resources/v1/project" 29 meta_service "github.com/cloudwan/goten-sdk/meta-service/resources/v1/service" 30 anypb "google.golang.org/protobuf/types/known/anypb" 31 fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 32 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 33 ) 34 35 // ensure the imports are used 36 var ( 37 _ = new(json.Marshaler) 38 _ = new(fmt.Stringer) 39 _ = reflect.DeepEqual 40 _ = strings.Builder{} 41 _ = time.Second 42 43 _ = strcase.ToLowerCamel 44 _ = codes.NotFound 45 _ = status.Status{} 46 _ = protojson.UnmarshalOptions{} 47 _ = new(proto.Message) 48 _ = protoregistry.GlobalTypes 49 50 _ = new(gotenobject.FieldPath) 51 ) 52 53 // make sure we're using proto imports 54 var ( 55 _ = &common.Authentication{} 56 _ = &iam_organization.Organization{} 57 _ = &iam_project.Project{} 58 _ = &anypb.Any{} 59 _ = &fieldmaskpb.FieldMask{} 60 _ = ×tamppb.Timestamp{} 61 _ = &meta_service.Service{} 62 ) 63 64 // FieldPath provides implementation to handle 65 // https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto 66 type ResourceChangeLog_FieldPath interface { 67 gotenobject.FieldPath 68 Selector() ResourceChangeLog_FieldPathSelector 69 Get(source *ResourceChangeLog) []interface{} 70 GetSingle(source *ResourceChangeLog) (interface{}, bool) 71 ClearValue(item *ResourceChangeLog) 72 73 // Those methods build corresponding ResourceChangeLog_FieldPathValue 74 // (or array of values) and holds passed value. Panics if injected type is incorrect. 75 WithIValue(value interface{}) ResourceChangeLog_FieldPathValue 76 WithIArrayOfValues(values interface{}) ResourceChangeLog_FieldPathArrayOfValues 77 WithIArrayItemValue(value interface{}) ResourceChangeLog_FieldPathArrayItemValue 78 } 79 80 type ResourceChangeLog_FieldPathSelector int32 81 82 const ( 83 ResourceChangeLog_FieldPathSelectorName ResourceChangeLog_FieldPathSelector = 0 84 ResourceChangeLog_FieldPathSelectorScope ResourceChangeLog_FieldPathSelector = 1 85 ResourceChangeLog_FieldPathSelectorRequestId ResourceChangeLog_FieldPathSelector = 2 86 ResourceChangeLog_FieldPathSelectorTimestamp ResourceChangeLog_FieldPathSelector = 3 87 ResourceChangeLog_FieldPathSelectorAuthentication ResourceChangeLog_FieldPathSelector = 4 88 ResourceChangeLog_FieldPathSelectorService ResourceChangeLog_FieldPathSelector = 5 89 ResourceChangeLog_FieldPathSelectorResource ResourceChangeLog_FieldPathSelector = 6 90 ResourceChangeLog_FieldPathSelectorTransaction ResourceChangeLog_FieldPathSelector = 7 91 ) 92 93 func (s ResourceChangeLog_FieldPathSelector) String() string { 94 switch s { 95 case ResourceChangeLog_FieldPathSelectorName: 96 return "name" 97 case ResourceChangeLog_FieldPathSelectorScope: 98 return "scope" 99 case ResourceChangeLog_FieldPathSelectorRequestId: 100 return "request_id" 101 case ResourceChangeLog_FieldPathSelectorTimestamp: 102 return "timestamp" 103 case ResourceChangeLog_FieldPathSelectorAuthentication: 104 return "authentication" 105 case ResourceChangeLog_FieldPathSelectorService: 106 return "service" 107 case ResourceChangeLog_FieldPathSelectorResource: 108 return "resource" 109 case ResourceChangeLog_FieldPathSelectorTransaction: 110 return "transaction" 111 default: 112 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", s)) 113 } 114 } 115 116 func BuildResourceChangeLog_FieldPath(fp gotenobject.RawFieldPath) (ResourceChangeLog_FieldPath, error) { 117 if len(fp) == 0 { 118 return nil, status.Error(codes.InvalidArgument, "empty field path for object ResourceChangeLog") 119 } 120 if len(fp) == 1 { 121 switch fp[0] { 122 case "name": 123 return &ResourceChangeLog_FieldTerminalPath{selector: ResourceChangeLog_FieldPathSelectorName}, nil 124 case "scope": 125 return &ResourceChangeLog_FieldTerminalPath{selector: ResourceChangeLog_FieldPathSelectorScope}, nil 126 case "request_id", "requestId", "request-id": 127 return &ResourceChangeLog_FieldTerminalPath{selector: ResourceChangeLog_FieldPathSelectorRequestId}, nil 128 case "timestamp": 129 return &ResourceChangeLog_FieldTerminalPath{selector: ResourceChangeLog_FieldPathSelectorTimestamp}, nil 130 case "authentication": 131 return &ResourceChangeLog_FieldTerminalPath{selector: ResourceChangeLog_FieldPathSelectorAuthentication}, nil 132 case "service": 133 return &ResourceChangeLog_FieldTerminalPath{selector: ResourceChangeLog_FieldPathSelectorService}, nil 134 case "resource": 135 return &ResourceChangeLog_FieldTerminalPath{selector: ResourceChangeLog_FieldPathSelectorResource}, nil 136 case "transaction": 137 return &ResourceChangeLog_FieldTerminalPath{selector: ResourceChangeLog_FieldPathSelectorTransaction}, nil 138 } 139 } else { 140 switch fp[0] { 141 case "authentication": 142 if subpath, err := common.BuildAuthentication_FieldPath(fp[1:]); err != nil { 143 return nil, err 144 } else { 145 return &ResourceChangeLog_FieldSubPath{selector: ResourceChangeLog_FieldPathSelectorAuthentication, subPath: subpath}, nil 146 } 147 case "service": 148 if subpath, err := common.BuildServiceData_FieldPath(fp[1:]); err != nil { 149 return nil, err 150 } else { 151 return &ResourceChangeLog_FieldSubPath{selector: ResourceChangeLog_FieldPathSelectorService, subPath: subpath}, nil 152 } 153 case "resource": 154 if subpath, err := BuildResourceChangeLogResourceChange_FieldPath(fp[1:]); err != nil { 155 return nil, err 156 } else { 157 return &ResourceChangeLog_FieldSubPath{selector: ResourceChangeLog_FieldPathSelectorResource, subPath: subpath}, nil 158 } 159 case "transaction": 160 if subpath, err := BuildResourceChangeLogTransactionInfo_FieldPath(fp[1:]); err != nil { 161 return nil, err 162 } else { 163 return &ResourceChangeLog_FieldSubPath{selector: ResourceChangeLog_FieldPathSelectorTransaction, subPath: subpath}, nil 164 } 165 } 166 } 167 return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object ResourceChangeLog", fp) 168 } 169 170 func ParseResourceChangeLog_FieldPath(rawField string) (ResourceChangeLog_FieldPath, error) { 171 fp, err := gotenobject.ParseRawFieldPath(rawField) 172 if err != nil { 173 return nil, err 174 } 175 return BuildResourceChangeLog_FieldPath(fp) 176 } 177 178 func MustParseResourceChangeLog_FieldPath(rawField string) ResourceChangeLog_FieldPath { 179 fp, err := ParseResourceChangeLog_FieldPath(rawField) 180 if err != nil { 181 panic(err) 182 } 183 return fp 184 } 185 186 type ResourceChangeLog_FieldTerminalPath struct { 187 selector ResourceChangeLog_FieldPathSelector 188 } 189 190 var _ ResourceChangeLog_FieldPath = (*ResourceChangeLog_FieldTerminalPath)(nil) 191 192 func (fp *ResourceChangeLog_FieldTerminalPath) Selector() ResourceChangeLog_FieldPathSelector { 193 return fp.selector 194 } 195 196 // String returns path representation in proto convention 197 func (fp *ResourceChangeLog_FieldTerminalPath) String() string { 198 return fp.selector.String() 199 } 200 201 // JSONString returns path representation is JSON convention 202 func (fp *ResourceChangeLog_FieldTerminalPath) JSONString() string { 203 return strcase.ToLowerCamel(fp.String()) 204 } 205 206 // Get returns all values pointed by specific field from source ResourceChangeLog 207 func (fp *ResourceChangeLog_FieldTerminalPath) Get(source *ResourceChangeLog) (values []interface{}) { 208 if source != nil { 209 switch fp.selector { 210 case ResourceChangeLog_FieldPathSelectorName: 211 if source.Name != nil { 212 values = append(values, source.Name) 213 } 214 case ResourceChangeLog_FieldPathSelectorScope: 215 values = append(values, source.Scope) 216 case ResourceChangeLog_FieldPathSelectorRequestId: 217 values = append(values, source.RequestId) 218 case ResourceChangeLog_FieldPathSelectorTimestamp: 219 if source.Timestamp != nil { 220 values = append(values, source.Timestamp) 221 } 222 case ResourceChangeLog_FieldPathSelectorAuthentication: 223 if source.Authentication != nil { 224 values = append(values, source.Authentication) 225 } 226 case ResourceChangeLog_FieldPathSelectorService: 227 if source.Service != nil { 228 values = append(values, source.Service) 229 } 230 case ResourceChangeLog_FieldPathSelectorResource: 231 if source.Resource != nil { 232 values = append(values, source.Resource) 233 } 234 case ResourceChangeLog_FieldPathSelectorTransaction: 235 if source.Transaction != nil { 236 values = append(values, source.Transaction) 237 } 238 default: 239 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fp.selector)) 240 } 241 } 242 return 243 } 244 245 func (fp *ResourceChangeLog_FieldTerminalPath) GetRaw(source proto.Message) []interface{} { 246 return fp.Get(source.(*ResourceChangeLog)) 247 } 248 249 // GetSingle returns value pointed by specific field of from source ResourceChangeLog 250 func (fp *ResourceChangeLog_FieldTerminalPath) GetSingle(source *ResourceChangeLog) (interface{}, bool) { 251 switch fp.selector { 252 case ResourceChangeLog_FieldPathSelectorName: 253 res := source.GetName() 254 return res, res != nil 255 case ResourceChangeLog_FieldPathSelectorScope: 256 return source.GetScope(), source != nil 257 case ResourceChangeLog_FieldPathSelectorRequestId: 258 return source.GetRequestId(), source != nil 259 case ResourceChangeLog_FieldPathSelectorTimestamp: 260 res := source.GetTimestamp() 261 return res, res != nil 262 case ResourceChangeLog_FieldPathSelectorAuthentication: 263 res := source.GetAuthentication() 264 return res, res != nil 265 case ResourceChangeLog_FieldPathSelectorService: 266 res := source.GetService() 267 return res, res != nil 268 case ResourceChangeLog_FieldPathSelectorResource: 269 res := source.GetResource() 270 return res, res != nil 271 case ResourceChangeLog_FieldPathSelectorTransaction: 272 res := source.GetTransaction() 273 return res, res != nil 274 default: 275 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fp.selector)) 276 } 277 } 278 279 func (fp *ResourceChangeLog_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 280 return fp.GetSingle(source.(*ResourceChangeLog)) 281 } 282 283 // GetDefault returns a default value of the field type 284 func (fp *ResourceChangeLog_FieldTerminalPath) GetDefault() interface{} { 285 switch fp.selector { 286 case ResourceChangeLog_FieldPathSelectorName: 287 return (*Name)(nil) 288 case ResourceChangeLog_FieldPathSelectorScope: 289 return "" 290 case ResourceChangeLog_FieldPathSelectorRequestId: 291 return uint64(0) 292 case ResourceChangeLog_FieldPathSelectorTimestamp: 293 return (*timestamppb.Timestamp)(nil) 294 case ResourceChangeLog_FieldPathSelectorAuthentication: 295 return (*common.Authentication)(nil) 296 case ResourceChangeLog_FieldPathSelectorService: 297 return (*common.ServiceData)(nil) 298 case ResourceChangeLog_FieldPathSelectorResource: 299 return (*ResourceChangeLog_ResourceChange)(nil) 300 case ResourceChangeLog_FieldPathSelectorTransaction: 301 return (*ResourceChangeLog_TransactionInfo)(nil) 302 default: 303 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fp.selector)) 304 } 305 } 306 307 func (fp *ResourceChangeLog_FieldTerminalPath) ClearValue(item *ResourceChangeLog) { 308 if item != nil { 309 switch fp.selector { 310 case ResourceChangeLog_FieldPathSelectorName: 311 item.Name = nil 312 case ResourceChangeLog_FieldPathSelectorScope: 313 item.Scope = "" 314 case ResourceChangeLog_FieldPathSelectorRequestId: 315 item.RequestId = uint64(0) 316 case ResourceChangeLog_FieldPathSelectorTimestamp: 317 item.Timestamp = nil 318 case ResourceChangeLog_FieldPathSelectorAuthentication: 319 item.Authentication = nil 320 case ResourceChangeLog_FieldPathSelectorService: 321 item.Service = nil 322 case ResourceChangeLog_FieldPathSelectorResource: 323 item.Resource = nil 324 case ResourceChangeLog_FieldPathSelectorTransaction: 325 item.Transaction = nil 326 default: 327 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fp.selector)) 328 } 329 } 330 } 331 332 func (fp *ResourceChangeLog_FieldTerminalPath) ClearValueRaw(item proto.Message) { 333 fp.ClearValue(item.(*ResourceChangeLog)) 334 } 335 336 // IsLeaf - whether field path is holds simple value 337 func (fp *ResourceChangeLog_FieldTerminalPath) IsLeaf() bool { 338 return fp.selector == ResourceChangeLog_FieldPathSelectorName || 339 fp.selector == ResourceChangeLog_FieldPathSelectorScope || 340 fp.selector == ResourceChangeLog_FieldPathSelectorRequestId || 341 fp.selector == ResourceChangeLog_FieldPathSelectorTimestamp 342 } 343 344 func (fp *ResourceChangeLog_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 345 return []gotenobject.FieldPath{fp} 346 } 347 348 func (fp *ResourceChangeLog_FieldTerminalPath) WithIValue(value interface{}) ResourceChangeLog_FieldPathValue { 349 switch fp.selector { 350 case ResourceChangeLog_FieldPathSelectorName: 351 return &ResourceChangeLog_FieldTerminalPathValue{ResourceChangeLog_FieldTerminalPath: *fp, value: value.(*Name)} 352 case ResourceChangeLog_FieldPathSelectorScope: 353 return &ResourceChangeLog_FieldTerminalPathValue{ResourceChangeLog_FieldTerminalPath: *fp, value: value.(string)} 354 case ResourceChangeLog_FieldPathSelectorRequestId: 355 return &ResourceChangeLog_FieldTerminalPathValue{ResourceChangeLog_FieldTerminalPath: *fp, value: value.(uint64)} 356 case ResourceChangeLog_FieldPathSelectorTimestamp: 357 return &ResourceChangeLog_FieldTerminalPathValue{ResourceChangeLog_FieldTerminalPath: *fp, value: value.(*timestamppb.Timestamp)} 358 case ResourceChangeLog_FieldPathSelectorAuthentication: 359 return &ResourceChangeLog_FieldTerminalPathValue{ResourceChangeLog_FieldTerminalPath: *fp, value: value.(*common.Authentication)} 360 case ResourceChangeLog_FieldPathSelectorService: 361 return &ResourceChangeLog_FieldTerminalPathValue{ResourceChangeLog_FieldTerminalPath: *fp, value: value.(*common.ServiceData)} 362 case ResourceChangeLog_FieldPathSelectorResource: 363 return &ResourceChangeLog_FieldTerminalPathValue{ResourceChangeLog_FieldTerminalPath: *fp, value: value.(*ResourceChangeLog_ResourceChange)} 364 case ResourceChangeLog_FieldPathSelectorTransaction: 365 return &ResourceChangeLog_FieldTerminalPathValue{ResourceChangeLog_FieldTerminalPath: *fp, value: value.(*ResourceChangeLog_TransactionInfo)} 366 default: 367 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fp.selector)) 368 } 369 } 370 371 func (fp *ResourceChangeLog_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 372 return fp.WithIValue(value) 373 } 374 375 func (fp *ResourceChangeLog_FieldTerminalPath) WithIArrayOfValues(values interface{}) ResourceChangeLog_FieldPathArrayOfValues { 376 fpaov := &ResourceChangeLog_FieldTerminalPathArrayOfValues{ResourceChangeLog_FieldTerminalPath: *fp} 377 switch fp.selector { 378 case ResourceChangeLog_FieldPathSelectorName: 379 return &ResourceChangeLog_FieldTerminalPathArrayOfValues{ResourceChangeLog_FieldTerminalPath: *fp, values: values.([]*Name)} 380 case ResourceChangeLog_FieldPathSelectorScope: 381 return &ResourceChangeLog_FieldTerminalPathArrayOfValues{ResourceChangeLog_FieldTerminalPath: *fp, values: values.([]string)} 382 case ResourceChangeLog_FieldPathSelectorRequestId: 383 return &ResourceChangeLog_FieldTerminalPathArrayOfValues{ResourceChangeLog_FieldTerminalPath: *fp, values: values.([]uint64)} 384 case ResourceChangeLog_FieldPathSelectorTimestamp: 385 return &ResourceChangeLog_FieldTerminalPathArrayOfValues{ResourceChangeLog_FieldTerminalPath: *fp, values: values.([]*timestamppb.Timestamp)} 386 case ResourceChangeLog_FieldPathSelectorAuthentication: 387 return &ResourceChangeLog_FieldTerminalPathArrayOfValues{ResourceChangeLog_FieldTerminalPath: *fp, values: values.([]*common.Authentication)} 388 case ResourceChangeLog_FieldPathSelectorService: 389 return &ResourceChangeLog_FieldTerminalPathArrayOfValues{ResourceChangeLog_FieldTerminalPath: *fp, values: values.([]*common.ServiceData)} 390 case ResourceChangeLog_FieldPathSelectorResource: 391 return &ResourceChangeLog_FieldTerminalPathArrayOfValues{ResourceChangeLog_FieldTerminalPath: *fp, values: values.([]*ResourceChangeLog_ResourceChange)} 392 case ResourceChangeLog_FieldPathSelectorTransaction: 393 return &ResourceChangeLog_FieldTerminalPathArrayOfValues{ResourceChangeLog_FieldTerminalPath: *fp, values: values.([]*ResourceChangeLog_TransactionInfo)} 394 default: 395 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fp.selector)) 396 } 397 return fpaov 398 } 399 400 func (fp *ResourceChangeLog_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 401 return fp.WithIArrayOfValues(values) 402 } 403 404 func (fp *ResourceChangeLog_FieldTerminalPath) WithIArrayItemValue(value interface{}) ResourceChangeLog_FieldPathArrayItemValue { 405 switch fp.selector { 406 default: 407 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fp.selector)) 408 } 409 } 410 411 func (fp *ResourceChangeLog_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 412 return fp.WithIArrayItemValue(value) 413 } 414 415 type ResourceChangeLog_FieldSubPath struct { 416 selector ResourceChangeLog_FieldPathSelector 417 subPath gotenobject.FieldPath 418 } 419 420 var _ ResourceChangeLog_FieldPath = (*ResourceChangeLog_FieldSubPath)(nil) 421 422 func (fps *ResourceChangeLog_FieldSubPath) Selector() ResourceChangeLog_FieldPathSelector { 423 return fps.selector 424 } 425 func (fps *ResourceChangeLog_FieldSubPath) AsAuthenticationSubPath() (common.Authentication_FieldPath, bool) { 426 res, ok := fps.subPath.(common.Authentication_FieldPath) 427 return res, ok 428 } 429 func (fps *ResourceChangeLog_FieldSubPath) AsServiceSubPath() (common.ServiceData_FieldPath, bool) { 430 res, ok := fps.subPath.(common.ServiceData_FieldPath) 431 return res, ok 432 } 433 func (fps *ResourceChangeLog_FieldSubPath) AsResourceSubPath() (ResourceChangeLogResourceChange_FieldPath, bool) { 434 res, ok := fps.subPath.(ResourceChangeLogResourceChange_FieldPath) 435 return res, ok 436 } 437 func (fps *ResourceChangeLog_FieldSubPath) AsTransactionSubPath() (ResourceChangeLogTransactionInfo_FieldPath, bool) { 438 res, ok := fps.subPath.(ResourceChangeLogTransactionInfo_FieldPath) 439 return res, ok 440 } 441 442 // String returns path representation in proto convention 443 func (fps *ResourceChangeLog_FieldSubPath) String() string { 444 return fps.selector.String() + "." + fps.subPath.String() 445 } 446 447 // JSONString returns path representation is JSON convention 448 func (fps *ResourceChangeLog_FieldSubPath) JSONString() string { 449 return strcase.ToLowerCamel(fps.selector.String()) + "." + fps.subPath.JSONString() 450 } 451 452 // Get returns all values pointed by selected field from source ResourceChangeLog 453 func (fps *ResourceChangeLog_FieldSubPath) Get(source *ResourceChangeLog) (values []interface{}) { 454 switch fps.selector { 455 case ResourceChangeLog_FieldPathSelectorAuthentication: 456 values = append(values, fps.subPath.GetRaw(source.GetAuthentication())...) 457 case ResourceChangeLog_FieldPathSelectorService: 458 values = append(values, fps.subPath.GetRaw(source.GetService())...) 459 case ResourceChangeLog_FieldPathSelectorResource: 460 values = append(values, fps.subPath.GetRaw(source.GetResource())...) 461 case ResourceChangeLog_FieldPathSelectorTransaction: 462 values = append(values, fps.subPath.GetRaw(source.GetTransaction())...) 463 default: 464 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fps.selector)) 465 } 466 return 467 } 468 469 func (fps *ResourceChangeLog_FieldSubPath) GetRaw(source proto.Message) []interface{} { 470 return fps.Get(source.(*ResourceChangeLog)) 471 } 472 473 // GetSingle returns value of selected field from source ResourceChangeLog 474 func (fps *ResourceChangeLog_FieldSubPath) GetSingle(source *ResourceChangeLog) (interface{}, bool) { 475 switch fps.selector { 476 case ResourceChangeLog_FieldPathSelectorAuthentication: 477 if source.GetAuthentication() == nil { 478 return nil, false 479 } 480 return fps.subPath.GetSingleRaw(source.GetAuthentication()) 481 case ResourceChangeLog_FieldPathSelectorService: 482 if source.GetService() == nil { 483 return nil, false 484 } 485 return fps.subPath.GetSingleRaw(source.GetService()) 486 case ResourceChangeLog_FieldPathSelectorResource: 487 if source.GetResource() == nil { 488 return nil, false 489 } 490 return fps.subPath.GetSingleRaw(source.GetResource()) 491 case ResourceChangeLog_FieldPathSelectorTransaction: 492 if source.GetTransaction() == nil { 493 return nil, false 494 } 495 return fps.subPath.GetSingleRaw(source.GetTransaction()) 496 default: 497 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fps.selector)) 498 } 499 } 500 501 func (fps *ResourceChangeLog_FieldSubPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 502 return fps.GetSingle(source.(*ResourceChangeLog)) 503 } 504 505 // GetDefault returns a default value of the field type 506 func (fps *ResourceChangeLog_FieldSubPath) GetDefault() interface{} { 507 return fps.subPath.GetDefault() 508 } 509 510 func (fps *ResourceChangeLog_FieldSubPath) ClearValue(item *ResourceChangeLog) { 511 if item != nil { 512 switch fps.selector { 513 case ResourceChangeLog_FieldPathSelectorAuthentication: 514 fps.subPath.ClearValueRaw(item.Authentication) 515 case ResourceChangeLog_FieldPathSelectorService: 516 fps.subPath.ClearValueRaw(item.Service) 517 case ResourceChangeLog_FieldPathSelectorResource: 518 fps.subPath.ClearValueRaw(item.Resource) 519 case ResourceChangeLog_FieldPathSelectorTransaction: 520 fps.subPath.ClearValueRaw(item.Transaction) 521 default: 522 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fps.selector)) 523 } 524 } 525 } 526 527 func (fps *ResourceChangeLog_FieldSubPath) ClearValueRaw(item proto.Message) { 528 fps.ClearValue(item.(*ResourceChangeLog)) 529 } 530 531 // IsLeaf - whether field path is holds simple value 532 func (fps *ResourceChangeLog_FieldSubPath) IsLeaf() bool { 533 return fps.subPath.IsLeaf() 534 } 535 536 func (fps *ResourceChangeLog_FieldSubPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 537 iPaths := []gotenobject.FieldPath{&ResourceChangeLog_FieldTerminalPath{selector: fps.selector}} 538 iPaths = append(iPaths, fps.subPath.SplitIntoTerminalIPaths()...) 539 return iPaths 540 } 541 542 func (fps *ResourceChangeLog_FieldSubPath) WithIValue(value interface{}) ResourceChangeLog_FieldPathValue { 543 return &ResourceChangeLog_FieldSubPathValue{fps, fps.subPath.WithRawIValue(value)} 544 } 545 546 func (fps *ResourceChangeLog_FieldSubPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 547 return fps.WithIValue(value) 548 } 549 550 func (fps *ResourceChangeLog_FieldSubPath) WithIArrayOfValues(values interface{}) ResourceChangeLog_FieldPathArrayOfValues { 551 return &ResourceChangeLog_FieldSubPathArrayOfValues{fps, fps.subPath.WithRawIArrayOfValues(values)} 552 } 553 554 func (fps *ResourceChangeLog_FieldSubPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 555 return fps.WithIArrayOfValues(values) 556 } 557 558 func (fps *ResourceChangeLog_FieldSubPath) WithIArrayItemValue(value interface{}) ResourceChangeLog_FieldPathArrayItemValue { 559 return &ResourceChangeLog_FieldSubPathArrayItemValue{fps, fps.subPath.WithRawIArrayItemValue(value)} 560 } 561 562 func (fps *ResourceChangeLog_FieldSubPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 563 return fps.WithIArrayItemValue(value) 564 } 565 566 // ResourceChangeLog_FieldPathValue allows storing values for ResourceChangeLog fields according to their type 567 type ResourceChangeLog_FieldPathValue interface { 568 ResourceChangeLog_FieldPath 569 gotenobject.FieldPathValue 570 SetTo(target **ResourceChangeLog) 571 CompareWith(*ResourceChangeLog) (cmp int, comparable bool) 572 } 573 574 func ParseResourceChangeLog_FieldPathValue(pathStr, valueStr string) (ResourceChangeLog_FieldPathValue, error) { 575 fp, err := ParseResourceChangeLog_FieldPath(pathStr) 576 if err != nil { 577 return nil, err 578 } 579 fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr) 580 if err != nil { 581 return nil, status.Errorf(codes.InvalidArgument, "error parsing ResourceChangeLog field path value from %s: %v", valueStr, err) 582 } 583 return fpv.(ResourceChangeLog_FieldPathValue), nil 584 } 585 586 func MustParseResourceChangeLog_FieldPathValue(pathStr, valueStr string) ResourceChangeLog_FieldPathValue { 587 fpv, err := ParseResourceChangeLog_FieldPathValue(pathStr, valueStr) 588 if err != nil { 589 panic(err) 590 } 591 return fpv 592 } 593 594 type ResourceChangeLog_FieldTerminalPathValue struct { 595 ResourceChangeLog_FieldTerminalPath 596 value interface{} 597 } 598 599 var _ ResourceChangeLog_FieldPathValue = (*ResourceChangeLog_FieldTerminalPathValue)(nil) 600 601 // GetRawValue returns raw value stored under selected path for 'ResourceChangeLog' as interface{} 602 func (fpv *ResourceChangeLog_FieldTerminalPathValue) GetRawValue() interface{} { 603 return fpv.value 604 } 605 func (fpv *ResourceChangeLog_FieldTerminalPathValue) AsNameValue() (*Name, bool) { 606 res, ok := fpv.value.(*Name) 607 return res, ok 608 } 609 func (fpv *ResourceChangeLog_FieldTerminalPathValue) AsScopeValue() (string, bool) { 610 res, ok := fpv.value.(string) 611 return res, ok 612 } 613 func (fpv *ResourceChangeLog_FieldTerminalPathValue) AsRequestIdValue() (uint64, bool) { 614 res, ok := fpv.value.(uint64) 615 return res, ok 616 } 617 func (fpv *ResourceChangeLog_FieldTerminalPathValue) AsTimestampValue() (*timestamppb.Timestamp, bool) { 618 res, ok := fpv.value.(*timestamppb.Timestamp) 619 return res, ok 620 } 621 func (fpv *ResourceChangeLog_FieldTerminalPathValue) AsAuthenticationValue() (*common.Authentication, bool) { 622 res, ok := fpv.value.(*common.Authentication) 623 return res, ok 624 } 625 func (fpv *ResourceChangeLog_FieldTerminalPathValue) AsServiceValue() (*common.ServiceData, bool) { 626 res, ok := fpv.value.(*common.ServiceData) 627 return res, ok 628 } 629 func (fpv *ResourceChangeLog_FieldTerminalPathValue) AsResourceValue() (*ResourceChangeLog_ResourceChange, bool) { 630 res, ok := fpv.value.(*ResourceChangeLog_ResourceChange) 631 return res, ok 632 } 633 func (fpv *ResourceChangeLog_FieldTerminalPathValue) AsTransactionValue() (*ResourceChangeLog_TransactionInfo, bool) { 634 res, ok := fpv.value.(*ResourceChangeLog_TransactionInfo) 635 return res, ok 636 } 637 638 // SetTo stores value for selected field for object ResourceChangeLog 639 func (fpv *ResourceChangeLog_FieldTerminalPathValue) SetTo(target **ResourceChangeLog) { 640 if *target == nil { 641 *target = new(ResourceChangeLog) 642 } 643 switch fpv.selector { 644 case ResourceChangeLog_FieldPathSelectorName: 645 (*target).Name = fpv.value.(*Name) 646 case ResourceChangeLog_FieldPathSelectorScope: 647 (*target).Scope = fpv.value.(string) 648 case ResourceChangeLog_FieldPathSelectorRequestId: 649 (*target).RequestId = fpv.value.(uint64) 650 case ResourceChangeLog_FieldPathSelectorTimestamp: 651 (*target).Timestamp = fpv.value.(*timestamppb.Timestamp) 652 case ResourceChangeLog_FieldPathSelectorAuthentication: 653 (*target).Authentication = fpv.value.(*common.Authentication) 654 case ResourceChangeLog_FieldPathSelectorService: 655 (*target).Service = fpv.value.(*common.ServiceData) 656 case ResourceChangeLog_FieldPathSelectorResource: 657 (*target).Resource = fpv.value.(*ResourceChangeLog_ResourceChange) 658 case ResourceChangeLog_FieldPathSelectorTransaction: 659 (*target).Transaction = fpv.value.(*ResourceChangeLog_TransactionInfo) 660 default: 661 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fpv.selector)) 662 } 663 } 664 665 func (fpv *ResourceChangeLog_FieldTerminalPathValue) SetToRaw(target proto.Message) { 666 typedObject := target.(*ResourceChangeLog) 667 fpv.SetTo(&typedObject) 668 } 669 670 // CompareWith compares value in the 'ResourceChangeLog_FieldTerminalPathValue' with the value under path in 'ResourceChangeLog'. 671 func (fpv *ResourceChangeLog_FieldTerminalPathValue) CompareWith(source *ResourceChangeLog) (int, bool) { 672 switch fpv.selector { 673 case ResourceChangeLog_FieldPathSelectorName: 674 leftValue := fpv.value.(*Name) 675 rightValue := source.GetName() 676 if leftValue == nil { 677 if rightValue != nil { 678 return -1, true 679 } 680 return 0, true 681 } 682 if rightValue == nil { 683 return 1, true 684 } 685 if leftValue.String() == rightValue.String() { 686 return 0, true 687 } else if leftValue.String() < rightValue.String() { 688 return -1, true 689 } else { 690 return 1, true 691 } 692 case ResourceChangeLog_FieldPathSelectorScope: 693 leftValue := fpv.value.(string) 694 rightValue := source.GetScope() 695 if (leftValue) == (rightValue) { 696 return 0, true 697 } else if (leftValue) < (rightValue) { 698 return -1, true 699 } else { 700 return 1, true 701 } 702 case ResourceChangeLog_FieldPathSelectorRequestId: 703 leftValue := fpv.value.(uint64) 704 rightValue := source.GetRequestId() 705 if (leftValue) == (rightValue) { 706 return 0, true 707 } else if (leftValue) < (rightValue) { 708 return -1, true 709 } else { 710 return 1, true 711 } 712 case ResourceChangeLog_FieldPathSelectorTimestamp: 713 leftValue := fpv.value.(*timestamppb.Timestamp) 714 rightValue := source.GetTimestamp() 715 if leftValue == nil { 716 if rightValue != nil { 717 return -1, true 718 } 719 return 0, true 720 } 721 if rightValue == nil { 722 return 1, true 723 } 724 if leftValue.AsTime().Equal(rightValue.AsTime()) { 725 return 0, true 726 } else if leftValue.AsTime().Before(rightValue.AsTime()) { 727 return -1, true 728 } else { 729 return 1, true 730 } 731 case ResourceChangeLog_FieldPathSelectorAuthentication: 732 return 0, false 733 case ResourceChangeLog_FieldPathSelectorService: 734 return 0, false 735 case ResourceChangeLog_FieldPathSelectorResource: 736 return 0, false 737 case ResourceChangeLog_FieldPathSelectorTransaction: 738 return 0, false 739 default: 740 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fpv.selector)) 741 } 742 } 743 744 func (fpv *ResourceChangeLog_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) { 745 return fpv.CompareWith(source.(*ResourceChangeLog)) 746 } 747 748 type ResourceChangeLog_FieldSubPathValue struct { 749 ResourceChangeLog_FieldPath 750 subPathValue gotenobject.FieldPathValue 751 } 752 753 var _ ResourceChangeLog_FieldPathValue = (*ResourceChangeLog_FieldSubPathValue)(nil) 754 755 func (fpvs *ResourceChangeLog_FieldSubPathValue) AsAuthenticationPathValue() (common.Authentication_FieldPathValue, bool) { 756 res, ok := fpvs.subPathValue.(common.Authentication_FieldPathValue) 757 return res, ok 758 } 759 func (fpvs *ResourceChangeLog_FieldSubPathValue) AsServicePathValue() (common.ServiceData_FieldPathValue, bool) { 760 res, ok := fpvs.subPathValue.(common.ServiceData_FieldPathValue) 761 return res, ok 762 } 763 func (fpvs *ResourceChangeLog_FieldSubPathValue) AsResourcePathValue() (ResourceChangeLogResourceChange_FieldPathValue, bool) { 764 res, ok := fpvs.subPathValue.(ResourceChangeLogResourceChange_FieldPathValue) 765 return res, ok 766 } 767 func (fpvs *ResourceChangeLog_FieldSubPathValue) AsTransactionPathValue() (ResourceChangeLogTransactionInfo_FieldPathValue, bool) { 768 res, ok := fpvs.subPathValue.(ResourceChangeLogTransactionInfo_FieldPathValue) 769 return res, ok 770 } 771 772 func (fpvs *ResourceChangeLog_FieldSubPathValue) SetTo(target **ResourceChangeLog) { 773 if *target == nil { 774 *target = new(ResourceChangeLog) 775 } 776 switch fpvs.Selector() { 777 case ResourceChangeLog_FieldPathSelectorAuthentication: 778 fpvs.subPathValue.(common.Authentication_FieldPathValue).SetTo(&(*target).Authentication) 779 case ResourceChangeLog_FieldPathSelectorService: 780 fpvs.subPathValue.(common.ServiceData_FieldPathValue).SetTo(&(*target).Service) 781 case ResourceChangeLog_FieldPathSelectorResource: 782 fpvs.subPathValue.(ResourceChangeLogResourceChange_FieldPathValue).SetTo(&(*target).Resource) 783 case ResourceChangeLog_FieldPathSelectorTransaction: 784 fpvs.subPathValue.(ResourceChangeLogTransactionInfo_FieldPathValue).SetTo(&(*target).Transaction) 785 default: 786 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fpvs.Selector())) 787 } 788 } 789 790 func (fpvs *ResourceChangeLog_FieldSubPathValue) SetToRaw(target proto.Message) { 791 typedObject := target.(*ResourceChangeLog) 792 fpvs.SetTo(&typedObject) 793 } 794 795 func (fpvs *ResourceChangeLog_FieldSubPathValue) GetRawValue() interface{} { 796 return fpvs.subPathValue.GetRawValue() 797 } 798 799 func (fpvs *ResourceChangeLog_FieldSubPathValue) CompareWith(source *ResourceChangeLog) (int, bool) { 800 switch fpvs.Selector() { 801 case ResourceChangeLog_FieldPathSelectorAuthentication: 802 return fpvs.subPathValue.(common.Authentication_FieldPathValue).CompareWith(source.GetAuthentication()) 803 case ResourceChangeLog_FieldPathSelectorService: 804 return fpvs.subPathValue.(common.ServiceData_FieldPathValue).CompareWith(source.GetService()) 805 case ResourceChangeLog_FieldPathSelectorResource: 806 return fpvs.subPathValue.(ResourceChangeLogResourceChange_FieldPathValue).CompareWith(source.GetResource()) 807 case ResourceChangeLog_FieldPathSelectorTransaction: 808 return fpvs.subPathValue.(ResourceChangeLogTransactionInfo_FieldPathValue).CompareWith(source.GetTransaction()) 809 default: 810 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fpvs.Selector())) 811 } 812 } 813 814 func (fpvs *ResourceChangeLog_FieldSubPathValue) CompareWithRaw(source proto.Message) (int, bool) { 815 return fpvs.CompareWith(source.(*ResourceChangeLog)) 816 } 817 818 // ResourceChangeLog_FieldPathArrayItemValue allows storing single item in Path-specific values for ResourceChangeLog according to their type 819 // Present only for array (repeated) types. 820 type ResourceChangeLog_FieldPathArrayItemValue interface { 821 gotenobject.FieldPathArrayItemValue 822 ResourceChangeLog_FieldPath 823 ContainsValue(*ResourceChangeLog) bool 824 } 825 826 // ParseResourceChangeLog_FieldPathArrayItemValue parses string and JSON-encoded value to its Value 827 func ParseResourceChangeLog_FieldPathArrayItemValue(pathStr, valueStr string) (ResourceChangeLog_FieldPathArrayItemValue, error) { 828 fp, err := ParseResourceChangeLog_FieldPath(pathStr) 829 if err != nil { 830 return nil, err 831 } 832 fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr) 833 if err != nil { 834 return nil, status.Errorf(codes.InvalidArgument, "error parsing ResourceChangeLog field path array item value from %s: %v", valueStr, err) 835 } 836 return fpaiv.(ResourceChangeLog_FieldPathArrayItemValue), nil 837 } 838 839 func MustParseResourceChangeLog_FieldPathArrayItemValue(pathStr, valueStr string) ResourceChangeLog_FieldPathArrayItemValue { 840 fpaiv, err := ParseResourceChangeLog_FieldPathArrayItemValue(pathStr, valueStr) 841 if err != nil { 842 panic(err) 843 } 844 return fpaiv 845 } 846 847 type ResourceChangeLog_FieldTerminalPathArrayItemValue struct { 848 ResourceChangeLog_FieldTerminalPath 849 value interface{} 850 } 851 852 var _ ResourceChangeLog_FieldPathArrayItemValue = (*ResourceChangeLog_FieldTerminalPathArrayItemValue)(nil) 853 854 // GetRawValue returns stored element value for array in object ResourceChangeLog as interface{} 855 func (fpaiv *ResourceChangeLog_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} { 856 return fpaiv.value 857 } 858 859 func (fpaiv *ResourceChangeLog_FieldTerminalPathArrayItemValue) GetSingle(source *ResourceChangeLog) (interface{}, bool) { 860 return nil, false 861 } 862 863 func (fpaiv *ResourceChangeLog_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) { 864 return fpaiv.GetSingle(source.(*ResourceChangeLog)) 865 } 866 867 // Contains returns a boolean indicating if value that is being held is present in given 'ResourceChangeLog' 868 func (fpaiv *ResourceChangeLog_FieldTerminalPathArrayItemValue) ContainsValue(source *ResourceChangeLog) bool { 869 slice := fpaiv.ResourceChangeLog_FieldTerminalPath.Get(source) 870 for _, v := range slice { 871 if asProtoMsg, ok := fpaiv.value.(proto.Message); ok { 872 if proto.Equal(asProtoMsg, v.(proto.Message)) { 873 return true 874 } 875 } else if reflect.DeepEqual(v, fpaiv.value) { 876 return true 877 } 878 } 879 return false 880 } 881 882 type ResourceChangeLog_FieldSubPathArrayItemValue struct { 883 ResourceChangeLog_FieldPath 884 subPathItemValue gotenobject.FieldPathArrayItemValue 885 } 886 887 // GetRawValue returns stored array item value 888 func (fpaivs *ResourceChangeLog_FieldSubPathArrayItemValue) GetRawItemValue() interface{} { 889 return fpaivs.subPathItemValue.GetRawItemValue() 890 } 891 func (fpaivs *ResourceChangeLog_FieldSubPathArrayItemValue) AsAuthenticationPathItemValue() (common.Authentication_FieldPathArrayItemValue, bool) { 892 res, ok := fpaivs.subPathItemValue.(common.Authentication_FieldPathArrayItemValue) 893 return res, ok 894 } 895 func (fpaivs *ResourceChangeLog_FieldSubPathArrayItemValue) AsServicePathItemValue() (common.ServiceData_FieldPathArrayItemValue, bool) { 896 res, ok := fpaivs.subPathItemValue.(common.ServiceData_FieldPathArrayItemValue) 897 return res, ok 898 } 899 func (fpaivs *ResourceChangeLog_FieldSubPathArrayItemValue) AsResourcePathItemValue() (ResourceChangeLogResourceChange_FieldPathArrayItemValue, bool) { 900 res, ok := fpaivs.subPathItemValue.(ResourceChangeLogResourceChange_FieldPathArrayItemValue) 901 return res, ok 902 } 903 func (fpaivs *ResourceChangeLog_FieldSubPathArrayItemValue) AsTransactionPathItemValue() (ResourceChangeLogTransactionInfo_FieldPathArrayItemValue, bool) { 904 res, ok := fpaivs.subPathItemValue.(ResourceChangeLogTransactionInfo_FieldPathArrayItemValue) 905 return res, ok 906 } 907 908 // Contains returns a boolean indicating if value that is being held is present in given 'ResourceChangeLog' 909 func (fpaivs *ResourceChangeLog_FieldSubPathArrayItemValue) ContainsValue(source *ResourceChangeLog) bool { 910 switch fpaivs.Selector() { 911 case ResourceChangeLog_FieldPathSelectorAuthentication: 912 return fpaivs.subPathItemValue.(common.Authentication_FieldPathArrayItemValue).ContainsValue(source.GetAuthentication()) 913 case ResourceChangeLog_FieldPathSelectorService: 914 return fpaivs.subPathItemValue.(common.ServiceData_FieldPathArrayItemValue).ContainsValue(source.GetService()) 915 case ResourceChangeLog_FieldPathSelectorResource: 916 return fpaivs.subPathItemValue.(ResourceChangeLogResourceChange_FieldPathArrayItemValue).ContainsValue(source.GetResource()) 917 case ResourceChangeLog_FieldPathSelectorTransaction: 918 return fpaivs.subPathItemValue.(ResourceChangeLogTransactionInfo_FieldPathArrayItemValue).ContainsValue(source.GetTransaction()) 919 default: 920 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog: %d", fpaivs.Selector())) 921 } 922 } 923 924 // ResourceChangeLog_FieldPathArrayOfValues allows storing slice of values for ResourceChangeLog fields according to their type 925 type ResourceChangeLog_FieldPathArrayOfValues interface { 926 gotenobject.FieldPathArrayOfValues 927 ResourceChangeLog_FieldPath 928 } 929 930 func ParseResourceChangeLog_FieldPathArrayOfValues(pathStr, valuesStr string) (ResourceChangeLog_FieldPathArrayOfValues, error) { 931 fp, err := ParseResourceChangeLog_FieldPath(pathStr) 932 if err != nil { 933 return nil, err 934 } 935 fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr) 936 if err != nil { 937 return nil, status.Errorf(codes.InvalidArgument, "error parsing ResourceChangeLog field path array of values from %s: %v", valuesStr, err) 938 } 939 return fpaov.(ResourceChangeLog_FieldPathArrayOfValues), nil 940 } 941 942 func MustParseResourceChangeLog_FieldPathArrayOfValues(pathStr, valuesStr string) ResourceChangeLog_FieldPathArrayOfValues { 943 fpaov, err := ParseResourceChangeLog_FieldPathArrayOfValues(pathStr, valuesStr) 944 if err != nil { 945 panic(err) 946 } 947 return fpaov 948 } 949 950 type ResourceChangeLog_FieldTerminalPathArrayOfValues struct { 951 ResourceChangeLog_FieldTerminalPath 952 values interface{} 953 } 954 955 var _ ResourceChangeLog_FieldPathArrayOfValues = (*ResourceChangeLog_FieldTerminalPathArrayOfValues)(nil) 956 957 func (fpaov *ResourceChangeLog_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) { 958 switch fpaov.selector { 959 case ResourceChangeLog_FieldPathSelectorName: 960 for _, v := range fpaov.values.([]*Name) { 961 values = append(values, v) 962 } 963 case ResourceChangeLog_FieldPathSelectorScope: 964 for _, v := range fpaov.values.([]string) { 965 values = append(values, v) 966 } 967 case ResourceChangeLog_FieldPathSelectorRequestId: 968 for _, v := range fpaov.values.([]uint64) { 969 values = append(values, v) 970 } 971 case ResourceChangeLog_FieldPathSelectorTimestamp: 972 for _, v := range fpaov.values.([]*timestamppb.Timestamp) { 973 values = append(values, v) 974 } 975 case ResourceChangeLog_FieldPathSelectorAuthentication: 976 for _, v := range fpaov.values.([]*common.Authentication) { 977 values = append(values, v) 978 } 979 case ResourceChangeLog_FieldPathSelectorService: 980 for _, v := range fpaov.values.([]*common.ServiceData) { 981 values = append(values, v) 982 } 983 case ResourceChangeLog_FieldPathSelectorResource: 984 for _, v := range fpaov.values.([]*ResourceChangeLog_ResourceChange) { 985 values = append(values, v) 986 } 987 case ResourceChangeLog_FieldPathSelectorTransaction: 988 for _, v := range fpaov.values.([]*ResourceChangeLog_TransactionInfo) { 989 values = append(values, v) 990 } 991 } 992 return 993 } 994 func (fpaov *ResourceChangeLog_FieldTerminalPathArrayOfValues) AsNameArrayOfValues() ([]*Name, bool) { 995 res, ok := fpaov.values.([]*Name) 996 return res, ok 997 } 998 func (fpaov *ResourceChangeLog_FieldTerminalPathArrayOfValues) AsScopeArrayOfValues() ([]string, bool) { 999 res, ok := fpaov.values.([]string) 1000 return res, ok 1001 } 1002 func (fpaov *ResourceChangeLog_FieldTerminalPathArrayOfValues) AsRequestIdArrayOfValues() ([]uint64, bool) { 1003 res, ok := fpaov.values.([]uint64) 1004 return res, ok 1005 } 1006 func (fpaov *ResourceChangeLog_FieldTerminalPathArrayOfValues) AsTimestampArrayOfValues() ([]*timestamppb.Timestamp, bool) { 1007 res, ok := fpaov.values.([]*timestamppb.Timestamp) 1008 return res, ok 1009 } 1010 func (fpaov *ResourceChangeLog_FieldTerminalPathArrayOfValues) AsAuthenticationArrayOfValues() ([]*common.Authentication, bool) { 1011 res, ok := fpaov.values.([]*common.Authentication) 1012 return res, ok 1013 } 1014 func (fpaov *ResourceChangeLog_FieldTerminalPathArrayOfValues) AsServiceArrayOfValues() ([]*common.ServiceData, bool) { 1015 res, ok := fpaov.values.([]*common.ServiceData) 1016 return res, ok 1017 } 1018 func (fpaov *ResourceChangeLog_FieldTerminalPathArrayOfValues) AsResourceArrayOfValues() ([]*ResourceChangeLog_ResourceChange, bool) { 1019 res, ok := fpaov.values.([]*ResourceChangeLog_ResourceChange) 1020 return res, ok 1021 } 1022 func (fpaov *ResourceChangeLog_FieldTerminalPathArrayOfValues) AsTransactionArrayOfValues() ([]*ResourceChangeLog_TransactionInfo, bool) { 1023 res, ok := fpaov.values.([]*ResourceChangeLog_TransactionInfo) 1024 return res, ok 1025 } 1026 1027 type ResourceChangeLog_FieldSubPathArrayOfValues struct { 1028 ResourceChangeLog_FieldPath 1029 subPathArrayOfValues gotenobject.FieldPathArrayOfValues 1030 } 1031 1032 var _ ResourceChangeLog_FieldPathArrayOfValues = (*ResourceChangeLog_FieldSubPathArrayOfValues)(nil) 1033 1034 func (fpsaov *ResourceChangeLog_FieldSubPathArrayOfValues) GetRawValues() []interface{} { 1035 return fpsaov.subPathArrayOfValues.GetRawValues() 1036 } 1037 func (fpsaov *ResourceChangeLog_FieldSubPathArrayOfValues) AsAuthenticationPathArrayOfValues() (common.Authentication_FieldPathArrayOfValues, bool) { 1038 res, ok := fpsaov.subPathArrayOfValues.(common.Authentication_FieldPathArrayOfValues) 1039 return res, ok 1040 } 1041 func (fpsaov *ResourceChangeLog_FieldSubPathArrayOfValues) AsServicePathArrayOfValues() (common.ServiceData_FieldPathArrayOfValues, bool) { 1042 res, ok := fpsaov.subPathArrayOfValues.(common.ServiceData_FieldPathArrayOfValues) 1043 return res, ok 1044 } 1045 func (fpsaov *ResourceChangeLog_FieldSubPathArrayOfValues) AsResourcePathArrayOfValues() (ResourceChangeLogResourceChange_FieldPathArrayOfValues, bool) { 1046 res, ok := fpsaov.subPathArrayOfValues.(ResourceChangeLogResourceChange_FieldPathArrayOfValues) 1047 return res, ok 1048 } 1049 func (fpsaov *ResourceChangeLog_FieldSubPathArrayOfValues) AsTransactionPathArrayOfValues() (ResourceChangeLogTransactionInfo_FieldPathArrayOfValues, bool) { 1050 res, ok := fpsaov.subPathArrayOfValues.(ResourceChangeLogTransactionInfo_FieldPathArrayOfValues) 1051 return res, ok 1052 } 1053 1054 // FieldPath provides implementation to handle 1055 // https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto 1056 type ResourceChangeLogResourceChange_FieldPath interface { 1057 gotenobject.FieldPath 1058 Selector() ResourceChangeLogResourceChange_FieldPathSelector 1059 Get(source *ResourceChangeLog_ResourceChange) []interface{} 1060 GetSingle(source *ResourceChangeLog_ResourceChange) (interface{}, bool) 1061 ClearValue(item *ResourceChangeLog_ResourceChange) 1062 1063 // Those methods build corresponding ResourceChangeLogResourceChange_FieldPathValue 1064 // (or array of values) and holds passed value. Panics if injected type is incorrect. 1065 WithIValue(value interface{}) ResourceChangeLogResourceChange_FieldPathValue 1066 WithIArrayOfValues(values interface{}) ResourceChangeLogResourceChange_FieldPathArrayOfValues 1067 WithIArrayItemValue(value interface{}) ResourceChangeLogResourceChange_FieldPathArrayItemValue 1068 } 1069 1070 type ResourceChangeLogResourceChange_FieldPathSelector int32 1071 1072 const ( 1073 ResourceChangeLogResourceChange_FieldPathSelectorName ResourceChangeLogResourceChange_FieldPathSelector = 0 1074 ResourceChangeLogResourceChange_FieldPathSelectorType ResourceChangeLogResourceChange_FieldPathSelector = 1 1075 ResourceChangeLogResourceChange_FieldPathSelectorAction ResourceChangeLogResourceChange_FieldPathSelector = 2 1076 ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields ResourceChangeLogResourceChange_FieldPathSelector = 3 1077 ResourceChangeLogResourceChange_FieldPathSelectorPrevious ResourceChangeLogResourceChange_FieldPathSelector = 4 1078 ResourceChangeLogResourceChange_FieldPathSelectorCurrent ResourceChangeLogResourceChange_FieldPathSelector = 5 1079 ResourceChangeLogResourceChange_FieldPathSelectorLabels ResourceChangeLogResourceChange_FieldPathSelector = 6 1080 ResourceChangeLogResourceChange_FieldPathSelectorPre ResourceChangeLogResourceChange_FieldPathSelector = 7 1081 ResourceChangeLogResourceChange_FieldPathSelectorPost ResourceChangeLogResourceChange_FieldPathSelector = 8 1082 ) 1083 1084 func (s ResourceChangeLogResourceChange_FieldPathSelector) String() string { 1085 switch s { 1086 case ResourceChangeLogResourceChange_FieldPathSelectorName: 1087 return "name" 1088 case ResourceChangeLogResourceChange_FieldPathSelectorType: 1089 return "type" 1090 case ResourceChangeLogResourceChange_FieldPathSelectorAction: 1091 return "action" 1092 case ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields: 1093 return "updated_fields" 1094 case ResourceChangeLogResourceChange_FieldPathSelectorPrevious: 1095 return "previous" 1096 case ResourceChangeLogResourceChange_FieldPathSelectorCurrent: 1097 return "current" 1098 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1099 return "labels" 1100 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1101 return "pre" 1102 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1103 return "post" 1104 default: 1105 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", s)) 1106 } 1107 } 1108 1109 func BuildResourceChangeLogResourceChange_FieldPath(fp gotenobject.RawFieldPath) (ResourceChangeLogResourceChange_FieldPath, error) { 1110 if len(fp) == 0 { 1111 return nil, status.Error(codes.InvalidArgument, "empty field path for object ResourceChangeLog_ResourceChange") 1112 } 1113 if len(fp) == 1 { 1114 switch fp[0] { 1115 case "name": 1116 return &ResourceChangeLogResourceChange_FieldTerminalPath{selector: ResourceChangeLogResourceChange_FieldPathSelectorName}, nil 1117 case "type": 1118 return &ResourceChangeLogResourceChange_FieldTerminalPath{selector: ResourceChangeLogResourceChange_FieldPathSelectorType}, nil 1119 case "action": 1120 return &ResourceChangeLogResourceChange_FieldTerminalPath{selector: ResourceChangeLogResourceChange_FieldPathSelectorAction}, nil 1121 case "updated_fields", "updatedFields", "updated-fields": 1122 return &ResourceChangeLogResourceChange_FieldTerminalPath{selector: ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields}, nil 1123 case "previous": 1124 return &ResourceChangeLogResourceChange_FieldTerminalPath{selector: ResourceChangeLogResourceChange_FieldPathSelectorPrevious}, nil 1125 case "current": 1126 return &ResourceChangeLogResourceChange_FieldTerminalPath{selector: ResourceChangeLogResourceChange_FieldPathSelectorCurrent}, nil 1127 case "labels": 1128 return &ResourceChangeLogResourceChange_FieldTerminalPath{selector: ResourceChangeLogResourceChange_FieldPathSelectorLabels}, nil 1129 case "pre": 1130 return &ResourceChangeLogResourceChange_FieldTerminalPath{selector: ResourceChangeLogResourceChange_FieldPathSelectorPre}, nil 1131 case "post": 1132 return &ResourceChangeLogResourceChange_FieldTerminalPath{selector: ResourceChangeLogResourceChange_FieldPathSelectorPost}, nil 1133 } 1134 } else { 1135 switch fp[0] { 1136 case "pre": 1137 if subpath, err := common.BuildObjectState_FieldPath(fp[1:]); err != nil { 1138 return nil, err 1139 } else { 1140 return &ResourceChangeLogResourceChange_FieldSubPath{selector: ResourceChangeLogResourceChange_FieldPathSelectorPre, subPath: subpath}, nil 1141 } 1142 case "post": 1143 if subpath, err := common.BuildObjectState_FieldPath(fp[1:]); err != nil { 1144 return nil, err 1145 } else { 1146 return &ResourceChangeLogResourceChange_FieldSubPath{selector: ResourceChangeLogResourceChange_FieldPathSelectorPost, subPath: subpath}, nil 1147 } 1148 case "labels": 1149 if len(fp) > 2 { 1150 return nil, status.Errorf(codes.InvalidArgument, "sub path for maps ('%s') are not supported (object ResourceChangeLog_ResourceChange)", fp) 1151 } 1152 return &ResourceChangeLogResourceChange_FieldPathMap{selector: ResourceChangeLogResourceChange_FieldPathSelectorLabels, key: fp[1]}, nil 1153 } 1154 } 1155 return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object ResourceChangeLog_ResourceChange", fp) 1156 } 1157 1158 func ParseResourceChangeLogResourceChange_FieldPath(rawField string) (ResourceChangeLogResourceChange_FieldPath, error) { 1159 fp, err := gotenobject.ParseRawFieldPath(rawField) 1160 if err != nil { 1161 return nil, err 1162 } 1163 return BuildResourceChangeLogResourceChange_FieldPath(fp) 1164 } 1165 1166 func MustParseResourceChangeLogResourceChange_FieldPath(rawField string) ResourceChangeLogResourceChange_FieldPath { 1167 fp, err := ParseResourceChangeLogResourceChange_FieldPath(rawField) 1168 if err != nil { 1169 panic(err) 1170 } 1171 return fp 1172 } 1173 1174 type ResourceChangeLogResourceChange_FieldTerminalPath struct { 1175 selector ResourceChangeLogResourceChange_FieldPathSelector 1176 } 1177 1178 var _ ResourceChangeLogResourceChange_FieldPath = (*ResourceChangeLogResourceChange_FieldTerminalPath)(nil) 1179 1180 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) Selector() ResourceChangeLogResourceChange_FieldPathSelector { 1181 return fp.selector 1182 } 1183 1184 // String returns path representation in proto convention 1185 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) String() string { 1186 return fp.selector.String() 1187 } 1188 1189 // JSONString returns path representation is JSON convention 1190 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) JSONString() string { 1191 return strcase.ToLowerCamel(fp.String()) 1192 } 1193 1194 // Get returns all values pointed by specific field from source ResourceChangeLog_ResourceChange 1195 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) Get(source *ResourceChangeLog_ResourceChange) (values []interface{}) { 1196 if source != nil { 1197 switch fp.selector { 1198 case ResourceChangeLogResourceChange_FieldPathSelectorName: 1199 values = append(values, source.Name) 1200 case ResourceChangeLogResourceChange_FieldPathSelectorType: 1201 values = append(values, source.Type) 1202 case ResourceChangeLogResourceChange_FieldPathSelectorAction: 1203 values = append(values, source.Action) 1204 case ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields: 1205 if source.UpdatedFields != nil { 1206 values = append(values, source.UpdatedFields) 1207 } 1208 case ResourceChangeLogResourceChange_FieldPathSelectorPrevious: 1209 if source.Previous != nil { 1210 values = append(values, source.Previous) 1211 } 1212 case ResourceChangeLogResourceChange_FieldPathSelectorCurrent: 1213 if source.Current != nil { 1214 values = append(values, source.Current) 1215 } 1216 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1217 values = append(values, source.Labels) 1218 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1219 if source.Pre != nil { 1220 values = append(values, source.Pre) 1221 } 1222 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1223 if source.Post != nil { 1224 values = append(values, source.Post) 1225 } 1226 default: 1227 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fp.selector)) 1228 } 1229 } 1230 return 1231 } 1232 1233 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) GetRaw(source proto.Message) []interface{} { 1234 return fp.Get(source.(*ResourceChangeLog_ResourceChange)) 1235 } 1236 1237 // GetSingle returns value pointed by specific field of from source ResourceChangeLog_ResourceChange 1238 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) GetSingle(source *ResourceChangeLog_ResourceChange) (interface{}, bool) { 1239 switch fp.selector { 1240 case ResourceChangeLogResourceChange_FieldPathSelectorName: 1241 return source.GetName(), source != nil 1242 case ResourceChangeLogResourceChange_FieldPathSelectorType: 1243 return source.GetType(), source != nil 1244 case ResourceChangeLogResourceChange_FieldPathSelectorAction: 1245 return source.GetAction(), source != nil 1246 case ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields: 1247 res := source.GetUpdatedFields() 1248 return res, res != nil 1249 case ResourceChangeLogResourceChange_FieldPathSelectorPrevious: 1250 res := source.GetPrevious() 1251 return res, res != nil 1252 case ResourceChangeLogResourceChange_FieldPathSelectorCurrent: 1253 res := source.GetCurrent() 1254 return res, res != nil 1255 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1256 res := source.GetLabels() 1257 return res, res != nil 1258 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1259 res := source.GetPre() 1260 return res, res != nil 1261 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1262 res := source.GetPost() 1263 return res, res != nil 1264 default: 1265 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fp.selector)) 1266 } 1267 } 1268 1269 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 1270 return fp.GetSingle(source.(*ResourceChangeLog_ResourceChange)) 1271 } 1272 1273 // GetDefault returns a default value of the field type 1274 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) GetDefault() interface{} { 1275 switch fp.selector { 1276 case ResourceChangeLogResourceChange_FieldPathSelectorName: 1277 return "" 1278 case ResourceChangeLogResourceChange_FieldPathSelectorType: 1279 return "" 1280 case ResourceChangeLogResourceChange_FieldPathSelectorAction: 1281 return ResourceChangeLog_ResourceChange_UNDEFINED 1282 case ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields: 1283 return (*fieldmaskpb.FieldMask)(nil) 1284 case ResourceChangeLogResourceChange_FieldPathSelectorPrevious: 1285 return (*anypb.Any)(nil) 1286 case ResourceChangeLogResourceChange_FieldPathSelectorCurrent: 1287 return (*anypb.Any)(nil) 1288 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1289 return (map[string]string)(nil) 1290 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1291 return (*common.ObjectState)(nil) 1292 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1293 return (*common.ObjectState)(nil) 1294 default: 1295 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fp.selector)) 1296 } 1297 } 1298 1299 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) ClearValue(item *ResourceChangeLog_ResourceChange) { 1300 if item != nil { 1301 switch fp.selector { 1302 case ResourceChangeLogResourceChange_FieldPathSelectorName: 1303 item.Name = "" 1304 case ResourceChangeLogResourceChange_FieldPathSelectorType: 1305 item.Type = "" 1306 case ResourceChangeLogResourceChange_FieldPathSelectorAction: 1307 item.Action = ResourceChangeLog_ResourceChange_UNDEFINED 1308 case ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields: 1309 item.UpdatedFields = nil 1310 case ResourceChangeLogResourceChange_FieldPathSelectorPrevious: 1311 item.Previous = nil 1312 case ResourceChangeLogResourceChange_FieldPathSelectorCurrent: 1313 item.Current = nil 1314 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1315 item.Labels = nil 1316 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1317 item.Pre = nil 1318 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1319 item.Post = nil 1320 default: 1321 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fp.selector)) 1322 } 1323 } 1324 } 1325 1326 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) ClearValueRaw(item proto.Message) { 1327 fp.ClearValue(item.(*ResourceChangeLog_ResourceChange)) 1328 } 1329 1330 // IsLeaf - whether field path is holds simple value 1331 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) IsLeaf() bool { 1332 return fp.selector == ResourceChangeLogResourceChange_FieldPathSelectorName || 1333 fp.selector == ResourceChangeLogResourceChange_FieldPathSelectorType || 1334 fp.selector == ResourceChangeLogResourceChange_FieldPathSelectorAction || 1335 fp.selector == ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields || 1336 fp.selector == ResourceChangeLogResourceChange_FieldPathSelectorPrevious || 1337 fp.selector == ResourceChangeLogResourceChange_FieldPathSelectorCurrent || 1338 fp.selector == ResourceChangeLogResourceChange_FieldPathSelectorLabels 1339 } 1340 1341 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 1342 return []gotenobject.FieldPath{fp} 1343 } 1344 1345 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) WithIValue(value interface{}) ResourceChangeLogResourceChange_FieldPathValue { 1346 switch fp.selector { 1347 case ResourceChangeLogResourceChange_FieldPathSelectorName: 1348 return &ResourceChangeLogResourceChange_FieldTerminalPathValue{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, value: value.(string)} 1349 case ResourceChangeLogResourceChange_FieldPathSelectorType: 1350 return &ResourceChangeLogResourceChange_FieldTerminalPathValue{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, value: value.(string)} 1351 case ResourceChangeLogResourceChange_FieldPathSelectorAction: 1352 return &ResourceChangeLogResourceChange_FieldTerminalPathValue{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, value: value.(ResourceChangeLog_ResourceChange_Action)} 1353 case ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields: 1354 return &ResourceChangeLogResourceChange_FieldTerminalPathValue{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, value: value.(*fieldmaskpb.FieldMask)} 1355 case ResourceChangeLogResourceChange_FieldPathSelectorPrevious: 1356 return &ResourceChangeLogResourceChange_FieldTerminalPathValue{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, value: value.(*anypb.Any)} 1357 case ResourceChangeLogResourceChange_FieldPathSelectorCurrent: 1358 return &ResourceChangeLogResourceChange_FieldTerminalPathValue{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, value: value.(*anypb.Any)} 1359 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1360 return &ResourceChangeLogResourceChange_FieldTerminalPathValue{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, value: value.(map[string]string)} 1361 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1362 return &ResourceChangeLogResourceChange_FieldTerminalPathValue{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, value: value.(*common.ObjectState)} 1363 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1364 return &ResourceChangeLogResourceChange_FieldTerminalPathValue{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, value: value.(*common.ObjectState)} 1365 default: 1366 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fp.selector)) 1367 } 1368 } 1369 1370 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 1371 return fp.WithIValue(value) 1372 } 1373 1374 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) WithIArrayOfValues(values interface{}) ResourceChangeLogResourceChange_FieldPathArrayOfValues { 1375 fpaov := &ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues{ResourceChangeLogResourceChange_FieldTerminalPath: *fp} 1376 switch fp.selector { 1377 case ResourceChangeLogResourceChange_FieldPathSelectorName: 1378 return &ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, values: values.([]string)} 1379 case ResourceChangeLogResourceChange_FieldPathSelectorType: 1380 return &ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, values: values.([]string)} 1381 case ResourceChangeLogResourceChange_FieldPathSelectorAction: 1382 return &ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, values: values.([]ResourceChangeLog_ResourceChange_Action)} 1383 case ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields: 1384 return &ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, values: values.([]*fieldmaskpb.FieldMask)} 1385 case ResourceChangeLogResourceChange_FieldPathSelectorPrevious: 1386 return &ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, values: values.([]*anypb.Any)} 1387 case ResourceChangeLogResourceChange_FieldPathSelectorCurrent: 1388 return &ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, values: values.([]*anypb.Any)} 1389 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1390 return &ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, values: values.([]map[string]string)} 1391 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1392 return &ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, values: values.([]*common.ObjectState)} 1393 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1394 return &ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues{ResourceChangeLogResourceChange_FieldTerminalPath: *fp, values: values.([]*common.ObjectState)} 1395 default: 1396 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fp.selector)) 1397 } 1398 return fpaov 1399 } 1400 1401 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 1402 return fp.WithIArrayOfValues(values) 1403 } 1404 1405 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) WithIArrayItemValue(value interface{}) ResourceChangeLogResourceChange_FieldPathArrayItemValue { 1406 switch fp.selector { 1407 default: 1408 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fp.selector)) 1409 } 1410 } 1411 1412 func (fp *ResourceChangeLogResourceChange_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 1413 return fp.WithIArrayItemValue(value) 1414 } 1415 1416 // FieldPath for map type with additional Key information 1417 type ResourceChangeLogResourceChange_FieldPathMap struct { 1418 key string 1419 selector ResourceChangeLogResourceChange_FieldPathSelector 1420 } 1421 1422 var _ ResourceChangeLogResourceChange_FieldPath = (*ResourceChangeLogResourceChange_FieldPathMap)(nil) 1423 1424 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) Selector() ResourceChangeLogResourceChange_FieldPathSelector { 1425 return fpm.selector 1426 } 1427 1428 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) Key() string { 1429 return fpm.key 1430 } 1431 1432 // String returns path representation in proto convention 1433 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) String() string { 1434 return fpm.selector.String() + "." + fpm.key 1435 } 1436 1437 // JSONString returns path representation is JSON convention. Note that map keys are not transformed 1438 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) JSONString() string { 1439 return strcase.ToLowerCamel(fpm.selector.String()) + "." + fpm.key 1440 } 1441 1442 // Get returns all values pointed by selected field map key from source ResourceChangeLog_ResourceChange 1443 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) Get(source *ResourceChangeLog_ResourceChange) (values []interface{}) { 1444 switch fpm.selector { 1445 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1446 if value, ok := source.GetLabels()[fpm.key]; ok { 1447 values = append(values, value) 1448 } 1449 default: 1450 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpm.selector)) 1451 } 1452 return 1453 } 1454 1455 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) GetRaw(source proto.Message) []interface{} { 1456 return fpm.Get(source.(*ResourceChangeLog_ResourceChange)) 1457 } 1458 1459 // GetSingle returns value by selected field map key from source ResourceChangeLog_ResourceChange 1460 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) GetSingle(source *ResourceChangeLog_ResourceChange) (interface{}, bool) { 1461 switch fpm.selector { 1462 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1463 res, ok := source.GetLabels()[fpm.key] 1464 return res, ok 1465 default: 1466 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpm.selector)) 1467 } 1468 } 1469 1470 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) GetSingleRaw(source proto.Message) (interface{}, bool) { 1471 return fpm.GetSingle(source.(*ResourceChangeLog_ResourceChange)) 1472 } 1473 1474 // GetDefault returns a default value of the field type 1475 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) GetDefault() interface{} { 1476 switch fpm.selector { 1477 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1478 var v string 1479 return v 1480 default: 1481 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpm.selector)) 1482 } 1483 } 1484 1485 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) ClearValue(item *ResourceChangeLog_ResourceChange) { 1486 if item != nil { 1487 switch fpm.selector { 1488 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1489 delete(item.Labels, fpm.key) 1490 default: 1491 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpm.selector)) 1492 } 1493 } 1494 } 1495 1496 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) ClearValueRaw(item proto.Message) { 1497 fpm.ClearValue(item.(*ResourceChangeLog_ResourceChange)) 1498 } 1499 1500 // IsLeaf - whether field path is holds simple value 1501 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) IsLeaf() bool { 1502 switch fpm.selector { 1503 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1504 return true 1505 default: 1506 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpm.selector)) 1507 } 1508 } 1509 1510 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 1511 return []gotenobject.FieldPath{fpm} 1512 } 1513 1514 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) WithIValue(value interface{}) ResourceChangeLogResourceChange_FieldPathValue { 1515 switch fpm.selector { 1516 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1517 return &ResourceChangeLogResourceChange_FieldPathMapValue{ResourceChangeLogResourceChange_FieldPathMap: *fpm, value: value.(string)} 1518 default: 1519 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpm.selector)) 1520 } 1521 } 1522 1523 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 1524 return fpm.WithIValue(value) 1525 } 1526 1527 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) WithIArrayOfValues(values interface{}) ResourceChangeLogResourceChange_FieldPathArrayOfValues { 1528 switch fpm.selector { 1529 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1530 return &ResourceChangeLogResourceChange_FieldPathMapArrayOfValues{ResourceChangeLogResourceChange_FieldPathMap: *fpm, values: values.([]string)} 1531 default: 1532 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpm.selector)) 1533 } 1534 } 1535 1536 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 1537 return fpm.WithIArrayOfValues(values) 1538 } 1539 1540 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) WithIArrayItemValue(value interface{}) ResourceChangeLogResourceChange_FieldPathArrayItemValue { 1541 panic("Cannot create array item value from map fieldpath") 1542 } 1543 1544 func (fpm *ResourceChangeLogResourceChange_FieldPathMap) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 1545 return fpm.WithIArrayItemValue(value) 1546 } 1547 1548 type ResourceChangeLogResourceChange_FieldSubPath struct { 1549 selector ResourceChangeLogResourceChange_FieldPathSelector 1550 subPath gotenobject.FieldPath 1551 } 1552 1553 var _ ResourceChangeLogResourceChange_FieldPath = (*ResourceChangeLogResourceChange_FieldSubPath)(nil) 1554 1555 func (fps *ResourceChangeLogResourceChange_FieldSubPath) Selector() ResourceChangeLogResourceChange_FieldPathSelector { 1556 return fps.selector 1557 } 1558 func (fps *ResourceChangeLogResourceChange_FieldSubPath) AsPreSubPath() (common.ObjectState_FieldPath, bool) { 1559 res, ok := fps.subPath.(common.ObjectState_FieldPath) 1560 return res, ok 1561 } 1562 func (fps *ResourceChangeLogResourceChange_FieldSubPath) AsPostSubPath() (common.ObjectState_FieldPath, bool) { 1563 res, ok := fps.subPath.(common.ObjectState_FieldPath) 1564 return res, ok 1565 } 1566 1567 // String returns path representation in proto convention 1568 func (fps *ResourceChangeLogResourceChange_FieldSubPath) String() string { 1569 return fps.selector.String() + "." + fps.subPath.String() 1570 } 1571 1572 // JSONString returns path representation is JSON convention 1573 func (fps *ResourceChangeLogResourceChange_FieldSubPath) JSONString() string { 1574 return strcase.ToLowerCamel(fps.selector.String()) + "." + fps.subPath.JSONString() 1575 } 1576 1577 // Get returns all values pointed by selected field from source ResourceChangeLog_ResourceChange 1578 func (fps *ResourceChangeLogResourceChange_FieldSubPath) Get(source *ResourceChangeLog_ResourceChange) (values []interface{}) { 1579 switch fps.selector { 1580 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1581 values = append(values, fps.subPath.GetRaw(source.GetPre())...) 1582 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1583 values = append(values, fps.subPath.GetRaw(source.GetPost())...) 1584 default: 1585 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fps.selector)) 1586 } 1587 return 1588 } 1589 1590 func (fps *ResourceChangeLogResourceChange_FieldSubPath) GetRaw(source proto.Message) []interface{} { 1591 return fps.Get(source.(*ResourceChangeLog_ResourceChange)) 1592 } 1593 1594 // GetSingle returns value of selected field from source ResourceChangeLog_ResourceChange 1595 func (fps *ResourceChangeLogResourceChange_FieldSubPath) GetSingle(source *ResourceChangeLog_ResourceChange) (interface{}, bool) { 1596 switch fps.selector { 1597 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1598 if source.GetPre() == nil { 1599 return nil, false 1600 } 1601 return fps.subPath.GetSingleRaw(source.GetPre()) 1602 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1603 if source.GetPost() == nil { 1604 return nil, false 1605 } 1606 return fps.subPath.GetSingleRaw(source.GetPost()) 1607 default: 1608 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fps.selector)) 1609 } 1610 } 1611 1612 func (fps *ResourceChangeLogResourceChange_FieldSubPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 1613 return fps.GetSingle(source.(*ResourceChangeLog_ResourceChange)) 1614 } 1615 1616 // GetDefault returns a default value of the field type 1617 func (fps *ResourceChangeLogResourceChange_FieldSubPath) GetDefault() interface{} { 1618 return fps.subPath.GetDefault() 1619 } 1620 1621 func (fps *ResourceChangeLogResourceChange_FieldSubPath) ClearValue(item *ResourceChangeLog_ResourceChange) { 1622 if item != nil { 1623 switch fps.selector { 1624 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1625 fps.subPath.ClearValueRaw(item.Pre) 1626 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1627 fps.subPath.ClearValueRaw(item.Post) 1628 default: 1629 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fps.selector)) 1630 } 1631 } 1632 } 1633 1634 func (fps *ResourceChangeLogResourceChange_FieldSubPath) ClearValueRaw(item proto.Message) { 1635 fps.ClearValue(item.(*ResourceChangeLog_ResourceChange)) 1636 } 1637 1638 // IsLeaf - whether field path is holds simple value 1639 func (fps *ResourceChangeLogResourceChange_FieldSubPath) IsLeaf() bool { 1640 return fps.subPath.IsLeaf() 1641 } 1642 1643 func (fps *ResourceChangeLogResourceChange_FieldSubPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 1644 iPaths := []gotenobject.FieldPath{&ResourceChangeLogResourceChange_FieldTerminalPath{selector: fps.selector}} 1645 iPaths = append(iPaths, fps.subPath.SplitIntoTerminalIPaths()...) 1646 return iPaths 1647 } 1648 1649 func (fps *ResourceChangeLogResourceChange_FieldSubPath) WithIValue(value interface{}) ResourceChangeLogResourceChange_FieldPathValue { 1650 return &ResourceChangeLogResourceChange_FieldSubPathValue{fps, fps.subPath.WithRawIValue(value)} 1651 } 1652 1653 func (fps *ResourceChangeLogResourceChange_FieldSubPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 1654 return fps.WithIValue(value) 1655 } 1656 1657 func (fps *ResourceChangeLogResourceChange_FieldSubPath) WithIArrayOfValues(values interface{}) ResourceChangeLogResourceChange_FieldPathArrayOfValues { 1658 return &ResourceChangeLogResourceChange_FieldSubPathArrayOfValues{fps, fps.subPath.WithRawIArrayOfValues(values)} 1659 } 1660 1661 func (fps *ResourceChangeLogResourceChange_FieldSubPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 1662 return fps.WithIArrayOfValues(values) 1663 } 1664 1665 func (fps *ResourceChangeLogResourceChange_FieldSubPath) WithIArrayItemValue(value interface{}) ResourceChangeLogResourceChange_FieldPathArrayItemValue { 1666 return &ResourceChangeLogResourceChange_FieldSubPathArrayItemValue{fps, fps.subPath.WithRawIArrayItemValue(value)} 1667 } 1668 1669 func (fps *ResourceChangeLogResourceChange_FieldSubPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 1670 return fps.WithIArrayItemValue(value) 1671 } 1672 1673 // ResourceChangeLogResourceChange_FieldPathValue allows storing values for ResourceChange fields according to their type 1674 type ResourceChangeLogResourceChange_FieldPathValue interface { 1675 ResourceChangeLogResourceChange_FieldPath 1676 gotenobject.FieldPathValue 1677 SetTo(target **ResourceChangeLog_ResourceChange) 1678 CompareWith(*ResourceChangeLog_ResourceChange) (cmp int, comparable bool) 1679 } 1680 1681 func ParseResourceChangeLogResourceChange_FieldPathValue(pathStr, valueStr string) (ResourceChangeLogResourceChange_FieldPathValue, error) { 1682 fp, err := ParseResourceChangeLogResourceChange_FieldPath(pathStr) 1683 if err != nil { 1684 return nil, err 1685 } 1686 fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr) 1687 if err != nil { 1688 return nil, status.Errorf(codes.InvalidArgument, "error parsing ResourceChange field path value from %s: %v", valueStr, err) 1689 } 1690 return fpv.(ResourceChangeLogResourceChange_FieldPathValue), nil 1691 } 1692 1693 func MustParseResourceChangeLogResourceChange_FieldPathValue(pathStr, valueStr string) ResourceChangeLogResourceChange_FieldPathValue { 1694 fpv, err := ParseResourceChangeLogResourceChange_FieldPathValue(pathStr, valueStr) 1695 if err != nil { 1696 panic(err) 1697 } 1698 return fpv 1699 } 1700 1701 type ResourceChangeLogResourceChange_FieldTerminalPathValue struct { 1702 ResourceChangeLogResourceChange_FieldTerminalPath 1703 value interface{} 1704 } 1705 1706 var _ ResourceChangeLogResourceChange_FieldPathValue = (*ResourceChangeLogResourceChange_FieldTerminalPathValue)(nil) 1707 1708 // GetRawValue returns raw value stored under selected path for 'ResourceChange' as interface{} 1709 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) GetRawValue() interface{} { 1710 return fpv.value 1711 } 1712 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) AsNameValue() (string, bool) { 1713 res, ok := fpv.value.(string) 1714 return res, ok 1715 } 1716 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) AsTypeValue() (string, bool) { 1717 res, ok := fpv.value.(string) 1718 return res, ok 1719 } 1720 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) AsActionValue() (ResourceChangeLog_ResourceChange_Action, bool) { 1721 res, ok := fpv.value.(ResourceChangeLog_ResourceChange_Action) 1722 return res, ok 1723 } 1724 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) AsUpdatedFieldsValue() (*fieldmaskpb.FieldMask, bool) { 1725 res, ok := fpv.value.(*fieldmaskpb.FieldMask) 1726 return res, ok 1727 } 1728 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) AsPreviousValue() (*anypb.Any, bool) { 1729 res, ok := fpv.value.(*anypb.Any) 1730 return res, ok 1731 } 1732 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) AsCurrentValue() (*anypb.Any, bool) { 1733 res, ok := fpv.value.(*anypb.Any) 1734 return res, ok 1735 } 1736 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) AsLabelsValue() (map[string]string, bool) { 1737 res, ok := fpv.value.(map[string]string) 1738 return res, ok 1739 } 1740 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) AsPreValue() (*common.ObjectState, bool) { 1741 res, ok := fpv.value.(*common.ObjectState) 1742 return res, ok 1743 } 1744 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) AsPostValue() (*common.ObjectState, bool) { 1745 res, ok := fpv.value.(*common.ObjectState) 1746 return res, ok 1747 } 1748 1749 // SetTo stores value for selected field for object ResourceChange 1750 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) SetTo(target **ResourceChangeLog_ResourceChange) { 1751 if *target == nil { 1752 *target = new(ResourceChangeLog_ResourceChange) 1753 } 1754 switch fpv.selector { 1755 case ResourceChangeLogResourceChange_FieldPathSelectorName: 1756 (*target).Name = fpv.value.(string) 1757 case ResourceChangeLogResourceChange_FieldPathSelectorType: 1758 (*target).Type = fpv.value.(string) 1759 case ResourceChangeLogResourceChange_FieldPathSelectorAction: 1760 (*target).Action = fpv.value.(ResourceChangeLog_ResourceChange_Action) 1761 case ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields: 1762 (*target).UpdatedFields = fpv.value.(*fieldmaskpb.FieldMask) 1763 case ResourceChangeLogResourceChange_FieldPathSelectorPrevious: 1764 (*target).Previous = fpv.value.(*anypb.Any) 1765 case ResourceChangeLogResourceChange_FieldPathSelectorCurrent: 1766 (*target).Current = fpv.value.(*anypb.Any) 1767 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1768 (*target).Labels = fpv.value.(map[string]string) 1769 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1770 (*target).Pre = fpv.value.(*common.ObjectState) 1771 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1772 (*target).Post = fpv.value.(*common.ObjectState) 1773 default: 1774 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpv.selector)) 1775 } 1776 } 1777 1778 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) SetToRaw(target proto.Message) { 1779 typedObject := target.(*ResourceChangeLog_ResourceChange) 1780 fpv.SetTo(&typedObject) 1781 } 1782 1783 // CompareWith compares value in the 'ResourceChangeLogResourceChange_FieldTerminalPathValue' with the value under path in 'ResourceChangeLog_ResourceChange'. 1784 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) CompareWith(source *ResourceChangeLog_ResourceChange) (int, bool) { 1785 switch fpv.selector { 1786 case ResourceChangeLogResourceChange_FieldPathSelectorName: 1787 leftValue := fpv.value.(string) 1788 rightValue := source.GetName() 1789 if (leftValue) == (rightValue) { 1790 return 0, true 1791 } else if (leftValue) < (rightValue) { 1792 return -1, true 1793 } else { 1794 return 1, true 1795 } 1796 case ResourceChangeLogResourceChange_FieldPathSelectorType: 1797 leftValue := fpv.value.(string) 1798 rightValue := source.GetType() 1799 if (leftValue) == (rightValue) { 1800 return 0, true 1801 } else if (leftValue) < (rightValue) { 1802 return -1, true 1803 } else { 1804 return 1, true 1805 } 1806 case ResourceChangeLogResourceChange_FieldPathSelectorAction: 1807 leftValue := fpv.value.(ResourceChangeLog_ResourceChange_Action) 1808 rightValue := source.GetAction() 1809 if (leftValue) == (rightValue) { 1810 return 0, true 1811 } else if (leftValue) < (rightValue) { 1812 return -1, true 1813 } else { 1814 return 1, true 1815 } 1816 case ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields: 1817 return 0, false 1818 case ResourceChangeLogResourceChange_FieldPathSelectorPrevious: 1819 return 0, false 1820 case ResourceChangeLogResourceChange_FieldPathSelectorCurrent: 1821 return 0, false 1822 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1823 return 0, false 1824 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1825 return 0, false 1826 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1827 return 0, false 1828 default: 1829 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpv.selector)) 1830 } 1831 } 1832 1833 func (fpv *ResourceChangeLogResourceChange_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) { 1834 return fpv.CompareWith(source.(*ResourceChangeLog_ResourceChange)) 1835 } 1836 1837 type ResourceChangeLogResourceChange_FieldPathMapValue struct { 1838 ResourceChangeLogResourceChange_FieldPathMap 1839 value interface{} 1840 } 1841 1842 var _ ResourceChangeLogResourceChange_FieldPathValue = (*ResourceChangeLogResourceChange_FieldPathMapValue)(nil) 1843 1844 // GetValue returns value stored under selected field in ResourceChange as interface{} 1845 func (fpmv *ResourceChangeLogResourceChange_FieldPathMapValue) GetRawValue() interface{} { 1846 return fpmv.value 1847 } 1848 func (fpmv *ResourceChangeLogResourceChange_FieldPathMapValue) AsLabelsElementValue() (string, bool) { 1849 res, ok := fpmv.value.(string) 1850 return res, ok 1851 } 1852 1853 // SetTo stores value for selected field in ResourceChange 1854 func (fpmv *ResourceChangeLogResourceChange_FieldPathMapValue) SetTo(target **ResourceChangeLog_ResourceChange) { 1855 if *target == nil { 1856 *target = new(ResourceChangeLog_ResourceChange) 1857 } 1858 switch fpmv.selector { 1859 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1860 if (*target).Labels == nil { 1861 (*target).Labels = make(map[string]string) 1862 } 1863 (*target).Labels[fpmv.key] = fpmv.value.(string) 1864 default: 1865 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpmv.selector)) 1866 } 1867 } 1868 1869 func (fpmv *ResourceChangeLogResourceChange_FieldPathMapValue) SetToRaw(target proto.Message) { 1870 typedObject := target.(*ResourceChangeLog_ResourceChange) 1871 fpmv.SetTo(&typedObject) 1872 } 1873 1874 // CompareWith compares value in the 'ResourceChangeLogResourceChange_FieldPathMapValue' with the value under path in 'ResourceChangeLog_ResourceChange'. 1875 func (fpmv *ResourceChangeLogResourceChange_FieldPathMapValue) CompareWith(source *ResourceChangeLog_ResourceChange) (int, bool) { 1876 switch fpmv.selector { 1877 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 1878 leftValue := fpmv.value.(string) 1879 rightValue := source.GetLabels()[fpmv.key] 1880 if (leftValue) == (rightValue) { 1881 return 0, true 1882 } else if (leftValue) < (rightValue) { 1883 return -1, true 1884 } else { 1885 return 1, true 1886 } 1887 default: 1888 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpmv.selector)) 1889 } 1890 } 1891 1892 func (fpmv *ResourceChangeLogResourceChange_FieldPathMapValue) CompareWithRaw(source proto.Message) (int, bool) { 1893 return fpmv.CompareWith(source.(*ResourceChangeLog_ResourceChange)) 1894 } 1895 1896 type ResourceChangeLogResourceChange_FieldSubPathValue struct { 1897 ResourceChangeLogResourceChange_FieldPath 1898 subPathValue gotenobject.FieldPathValue 1899 } 1900 1901 var _ ResourceChangeLogResourceChange_FieldPathValue = (*ResourceChangeLogResourceChange_FieldSubPathValue)(nil) 1902 1903 func (fpvs *ResourceChangeLogResourceChange_FieldSubPathValue) AsPrePathValue() (common.ObjectState_FieldPathValue, bool) { 1904 res, ok := fpvs.subPathValue.(common.ObjectState_FieldPathValue) 1905 return res, ok 1906 } 1907 func (fpvs *ResourceChangeLogResourceChange_FieldSubPathValue) AsPostPathValue() (common.ObjectState_FieldPathValue, bool) { 1908 res, ok := fpvs.subPathValue.(common.ObjectState_FieldPathValue) 1909 return res, ok 1910 } 1911 1912 func (fpvs *ResourceChangeLogResourceChange_FieldSubPathValue) SetTo(target **ResourceChangeLog_ResourceChange) { 1913 if *target == nil { 1914 *target = new(ResourceChangeLog_ResourceChange) 1915 } 1916 switch fpvs.Selector() { 1917 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1918 fpvs.subPathValue.(common.ObjectState_FieldPathValue).SetTo(&(*target).Pre) 1919 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1920 fpvs.subPathValue.(common.ObjectState_FieldPathValue).SetTo(&(*target).Post) 1921 default: 1922 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpvs.Selector())) 1923 } 1924 } 1925 1926 func (fpvs *ResourceChangeLogResourceChange_FieldSubPathValue) SetToRaw(target proto.Message) { 1927 typedObject := target.(*ResourceChangeLog_ResourceChange) 1928 fpvs.SetTo(&typedObject) 1929 } 1930 1931 func (fpvs *ResourceChangeLogResourceChange_FieldSubPathValue) GetRawValue() interface{} { 1932 return fpvs.subPathValue.GetRawValue() 1933 } 1934 1935 func (fpvs *ResourceChangeLogResourceChange_FieldSubPathValue) CompareWith(source *ResourceChangeLog_ResourceChange) (int, bool) { 1936 switch fpvs.Selector() { 1937 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 1938 return fpvs.subPathValue.(common.ObjectState_FieldPathValue).CompareWith(source.GetPre()) 1939 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 1940 return fpvs.subPathValue.(common.ObjectState_FieldPathValue).CompareWith(source.GetPost()) 1941 default: 1942 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpvs.Selector())) 1943 } 1944 } 1945 1946 func (fpvs *ResourceChangeLogResourceChange_FieldSubPathValue) CompareWithRaw(source proto.Message) (int, bool) { 1947 return fpvs.CompareWith(source.(*ResourceChangeLog_ResourceChange)) 1948 } 1949 1950 // ResourceChangeLogResourceChange_FieldPathArrayItemValue allows storing single item in Path-specific values for ResourceChange according to their type 1951 // Present only for array (repeated) types. 1952 type ResourceChangeLogResourceChange_FieldPathArrayItemValue interface { 1953 gotenobject.FieldPathArrayItemValue 1954 ResourceChangeLogResourceChange_FieldPath 1955 ContainsValue(*ResourceChangeLog_ResourceChange) bool 1956 } 1957 1958 // ParseResourceChangeLogResourceChange_FieldPathArrayItemValue parses string and JSON-encoded value to its Value 1959 func ParseResourceChangeLogResourceChange_FieldPathArrayItemValue(pathStr, valueStr string) (ResourceChangeLogResourceChange_FieldPathArrayItemValue, error) { 1960 fp, err := ParseResourceChangeLogResourceChange_FieldPath(pathStr) 1961 if err != nil { 1962 return nil, err 1963 } 1964 fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr) 1965 if err != nil { 1966 return nil, status.Errorf(codes.InvalidArgument, "error parsing ResourceChange field path array item value from %s: %v", valueStr, err) 1967 } 1968 return fpaiv.(ResourceChangeLogResourceChange_FieldPathArrayItemValue), nil 1969 } 1970 1971 func MustParseResourceChangeLogResourceChange_FieldPathArrayItemValue(pathStr, valueStr string) ResourceChangeLogResourceChange_FieldPathArrayItemValue { 1972 fpaiv, err := ParseResourceChangeLogResourceChange_FieldPathArrayItemValue(pathStr, valueStr) 1973 if err != nil { 1974 panic(err) 1975 } 1976 return fpaiv 1977 } 1978 1979 type ResourceChangeLogResourceChange_FieldTerminalPathArrayItemValue struct { 1980 ResourceChangeLogResourceChange_FieldTerminalPath 1981 value interface{} 1982 } 1983 1984 var _ ResourceChangeLogResourceChange_FieldPathArrayItemValue = (*ResourceChangeLogResourceChange_FieldTerminalPathArrayItemValue)(nil) 1985 1986 // GetRawValue returns stored element value for array in object ResourceChangeLog_ResourceChange as interface{} 1987 func (fpaiv *ResourceChangeLogResourceChange_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} { 1988 return fpaiv.value 1989 } 1990 1991 func (fpaiv *ResourceChangeLogResourceChange_FieldTerminalPathArrayItemValue) GetSingle(source *ResourceChangeLog_ResourceChange) (interface{}, bool) { 1992 return nil, false 1993 } 1994 1995 func (fpaiv *ResourceChangeLogResourceChange_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) { 1996 return fpaiv.GetSingle(source.(*ResourceChangeLog_ResourceChange)) 1997 } 1998 1999 // Contains returns a boolean indicating if value that is being held is present in given 'ResourceChange' 2000 func (fpaiv *ResourceChangeLogResourceChange_FieldTerminalPathArrayItemValue) ContainsValue(source *ResourceChangeLog_ResourceChange) bool { 2001 slice := fpaiv.ResourceChangeLogResourceChange_FieldTerminalPath.Get(source) 2002 for _, v := range slice { 2003 if asProtoMsg, ok := fpaiv.value.(proto.Message); ok { 2004 if proto.Equal(asProtoMsg, v.(proto.Message)) { 2005 return true 2006 } 2007 } else if reflect.DeepEqual(v, fpaiv.value) { 2008 return true 2009 } 2010 } 2011 return false 2012 } 2013 2014 type ResourceChangeLogResourceChange_FieldSubPathArrayItemValue struct { 2015 ResourceChangeLogResourceChange_FieldPath 2016 subPathItemValue gotenobject.FieldPathArrayItemValue 2017 } 2018 2019 // GetRawValue returns stored array item value 2020 func (fpaivs *ResourceChangeLogResourceChange_FieldSubPathArrayItemValue) GetRawItemValue() interface{} { 2021 return fpaivs.subPathItemValue.GetRawItemValue() 2022 } 2023 func (fpaivs *ResourceChangeLogResourceChange_FieldSubPathArrayItemValue) AsPrePathItemValue() (common.ObjectState_FieldPathArrayItemValue, bool) { 2024 res, ok := fpaivs.subPathItemValue.(common.ObjectState_FieldPathArrayItemValue) 2025 return res, ok 2026 } 2027 func (fpaivs *ResourceChangeLogResourceChange_FieldSubPathArrayItemValue) AsPostPathItemValue() (common.ObjectState_FieldPathArrayItemValue, bool) { 2028 res, ok := fpaivs.subPathItemValue.(common.ObjectState_FieldPathArrayItemValue) 2029 return res, ok 2030 } 2031 2032 // Contains returns a boolean indicating if value that is being held is present in given 'ResourceChange' 2033 func (fpaivs *ResourceChangeLogResourceChange_FieldSubPathArrayItemValue) ContainsValue(source *ResourceChangeLog_ResourceChange) bool { 2034 switch fpaivs.Selector() { 2035 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 2036 return fpaivs.subPathItemValue.(common.ObjectState_FieldPathArrayItemValue).ContainsValue(source.GetPre()) 2037 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 2038 return fpaivs.subPathItemValue.(common.ObjectState_FieldPathArrayItemValue).ContainsValue(source.GetPost()) 2039 default: 2040 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_ResourceChange: %d", fpaivs.Selector())) 2041 } 2042 } 2043 2044 // ResourceChangeLogResourceChange_FieldPathArrayOfValues allows storing slice of values for ResourceChange fields according to their type 2045 type ResourceChangeLogResourceChange_FieldPathArrayOfValues interface { 2046 gotenobject.FieldPathArrayOfValues 2047 ResourceChangeLogResourceChange_FieldPath 2048 } 2049 2050 func ParseResourceChangeLogResourceChange_FieldPathArrayOfValues(pathStr, valuesStr string) (ResourceChangeLogResourceChange_FieldPathArrayOfValues, error) { 2051 fp, err := ParseResourceChangeLogResourceChange_FieldPath(pathStr) 2052 if err != nil { 2053 return nil, err 2054 } 2055 fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr) 2056 if err != nil { 2057 return nil, status.Errorf(codes.InvalidArgument, "error parsing ResourceChange field path array of values from %s: %v", valuesStr, err) 2058 } 2059 return fpaov.(ResourceChangeLogResourceChange_FieldPathArrayOfValues), nil 2060 } 2061 2062 func MustParseResourceChangeLogResourceChange_FieldPathArrayOfValues(pathStr, valuesStr string) ResourceChangeLogResourceChange_FieldPathArrayOfValues { 2063 fpaov, err := ParseResourceChangeLogResourceChange_FieldPathArrayOfValues(pathStr, valuesStr) 2064 if err != nil { 2065 panic(err) 2066 } 2067 return fpaov 2068 } 2069 2070 type ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues struct { 2071 ResourceChangeLogResourceChange_FieldTerminalPath 2072 values interface{} 2073 } 2074 2075 var _ ResourceChangeLogResourceChange_FieldPathArrayOfValues = (*ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues)(nil) 2076 2077 func (fpaov *ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) { 2078 switch fpaov.selector { 2079 case ResourceChangeLogResourceChange_FieldPathSelectorName: 2080 for _, v := range fpaov.values.([]string) { 2081 values = append(values, v) 2082 } 2083 case ResourceChangeLogResourceChange_FieldPathSelectorType: 2084 for _, v := range fpaov.values.([]string) { 2085 values = append(values, v) 2086 } 2087 case ResourceChangeLogResourceChange_FieldPathSelectorAction: 2088 for _, v := range fpaov.values.([]ResourceChangeLog_ResourceChange_Action) { 2089 values = append(values, v) 2090 } 2091 case ResourceChangeLogResourceChange_FieldPathSelectorUpdatedFields: 2092 for _, v := range fpaov.values.([]*fieldmaskpb.FieldMask) { 2093 values = append(values, v) 2094 } 2095 case ResourceChangeLogResourceChange_FieldPathSelectorPrevious: 2096 for _, v := range fpaov.values.([]*anypb.Any) { 2097 values = append(values, v) 2098 } 2099 case ResourceChangeLogResourceChange_FieldPathSelectorCurrent: 2100 for _, v := range fpaov.values.([]*anypb.Any) { 2101 values = append(values, v) 2102 } 2103 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 2104 for _, v := range fpaov.values.([]map[string]string) { 2105 values = append(values, v) 2106 } 2107 case ResourceChangeLogResourceChange_FieldPathSelectorPre: 2108 for _, v := range fpaov.values.([]*common.ObjectState) { 2109 values = append(values, v) 2110 } 2111 case ResourceChangeLogResourceChange_FieldPathSelectorPost: 2112 for _, v := range fpaov.values.([]*common.ObjectState) { 2113 values = append(values, v) 2114 } 2115 } 2116 return 2117 } 2118 func (fpaov *ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues) AsNameArrayOfValues() ([]string, bool) { 2119 res, ok := fpaov.values.([]string) 2120 return res, ok 2121 } 2122 func (fpaov *ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues) AsTypeArrayOfValues() ([]string, bool) { 2123 res, ok := fpaov.values.([]string) 2124 return res, ok 2125 } 2126 func (fpaov *ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues) AsActionArrayOfValues() ([]ResourceChangeLog_ResourceChange_Action, bool) { 2127 res, ok := fpaov.values.([]ResourceChangeLog_ResourceChange_Action) 2128 return res, ok 2129 } 2130 func (fpaov *ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues) AsUpdatedFieldsArrayOfValues() ([]*fieldmaskpb.FieldMask, bool) { 2131 res, ok := fpaov.values.([]*fieldmaskpb.FieldMask) 2132 return res, ok 2133 } 2134 func (fpaov *ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues) AsPreviousArrayOfValues() ([]*anypb.Any, bool) { 2135 res, ok := fpaov.values.([]*anypb.Any) 2136 return res, ok 2137 } 2138 func (fpaov *ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues) AsCurrentArrayOfValues() ([]*anypb.Any, bool) { 2139 res, ok := fpaov.values.([]*anypb.Any) 2140 return res, ok 2141 } 2142 func (fpaov *ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues) AsLabelsArrayOfValues() ([]map[string]string, bool) { 2143 res, ok := fpaov.values.([]map[string]string) 2144 return res, ok 2145 } 2146 func (fpaov *ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues) AsPreArrayOfValues() ([]*common.ObjectState, bool) { 2147 res, ok := fpaov.values.([]*common.ObjectState) 2148 return res, ok 2149 } 2150 func (fpaov *ResourceChangeLogResourceChange_FieldTerminalPathArrayOfValues) AsPostArrayOfValues() ([]*common.ObjectState, bool) { 2151 res, ok := fpaov.values.([]*common.ObjectState) 2152 return res, ok 2153 } 2154 2155 type ResourceChangeLogResourceChange_FieldPathMapArrayOfValues struct { 2156 ResourceChangeLogResourceChange_FieldPathMap 2157 values interface{} 2158 } 2159 2160 var _ ResourceChangeLogResourceChange_FieldPathArrayOfValues = (*ResourceChangeLogResourceChange_FieldPathMapArrayOfValues)(nil) 2161 2162 func (fpmaov *ResourceChangeLogResourceChange_FieldPathMapArrayOfValues) GetRawValues() (values []interface{}) { 2163 switch fpmaov.selector { 2164 case ResourceChangeLogResourceChange_FieldPathSelectorLabels: 2165 for _, v := range fpmaov.values.([]string) { 2166 values = append(values, v) 2167 } 2168 } 2169 return 2170 } 2171 func (fpmaov *ResourceChangeLogResourceChange_FieldPathMapArrayOfValues) AsLabelsArrayOfElementValues() ([]string, bool) { 2172 res, ok := fpmaov.values.([]string) 2173 return res, ok 2174 } 2175 2176 type ResourceChangeLogResourceChange_FieldSubPathArrayOfValues struct { 2177 ResourceChangeLogResourceChange_FieldPath 2178 subPathArrayOfValues gotenobject.FieldPathArrayOfValues 2179 } 2180 2181 var _ ResourceChangeLogResourceChange_FieldPathArrayOfValues = (*ResourceChangeLogResourceChange_FieldSubPathArrayOfValues)(nil) 2182 2183 func (fpsaov *ResourceChangeLogResourceChange_FieldSubPathArrayOfValues) GetRawValues() []interface{} { 2184 return fpsaov.subPathArrayOfValues.GetRawValues() 2185 } 2186 func (fpsaov *ResourceChangeLogResourceChange_FieldSubPathArrayOfValues) AsPrePathArrayOfValues() (common.ObjectState_FieldPathArrayOfValues, bool) { 2187 res, ok := fpsaov.subPathArrayOfValues.(common.ObjectState_FieldPathArrayOfValues) 2188 return res, ok 2189 } 2190 func (fpsaov *ResourceChangeLogResourceChange_FieldSubPathArrayOfValues) AsPostPathArrayOfValues() (common.ObjectState_FieldPathArrayOfValues, bool) { 2191 res, ok := fpsaov.subPathArrayOfValues.(common.ObjectState_FieldPathArrayOfValues) 2192 return res, ok 2193 } 2194 2195 // FieldPath provides implementation to handle 2196 // https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto 2197 type ResourceChangeLogTransactionInfo_FieldPath interface { 2198 gotenobject.FieldPath 2199 Selector() ResourceChangeLogTransactionInfo_FieldPathSelector 2200 Get(source *ResourceChangeLog_TransactionInfo) []interface{} 2201 GetSingle(source *ResourceChangeLog_TransactionInfo) (interface{}, bool) 2202 ClearValue(item *ResourceChangeLog_TransactionInfo) 2203 2204 // Those methods build corresponding ResourceChangeLogTransactionInfo_FieldPathValue 2205 // (or array of values) and holds passed value. Panics if injected type is incorrect. 2206 WithIValue(value interface{}) ResourceChangeLogTransactionInfo_FieldPathValue 2207 WithIArrayOfValues(values interface{}) ResourceChangeLogTransactionInfo_FieldPathArrayOfValues 2208 WithIArrayItemValue(value interface{}) ResourceChangeLogTransactionInfo_FieldPathArrayItemValue 2209 } 2210 2211 type ResourceChangeLogTransactionInfo_FieldPathSelector int32 2212 2213 const ( 2214 ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier ResourceChangeLogTransactionInfo_FieldPathSelector = 0 2215 ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter ResourceChangeLogTransactionInfo_FieldPathSelector = 1 2216 ResourceChangeLogTransactionInfo_FieldPathSelectorState ResourceChangeLogTransactionInfo_FieldPathSelector = 2 2217 ) 2218 2219 func (s ResourceChangeLogTransactionInfo_FieldPathSelector) String() string { 2220 switch s { 2221 case ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier: 2222 return "identifier" 2223 case ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter: 2224 return "try_counter" 2225 case ResourceChangeLogTransactionInfo_FieldPathSelectorState: 2226 return "state" 2227 default: 2228 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_TransactionInfo: %d", s)) 2229 } 2230 } 2231 2232 func BuildResourceChangeLogTransactionInfo_FieldPath(fp gotenobject.RawFieldPath) (ResourceChangeLogTransactionInfo_FieldPath, error) { 2233 if len(fp) == 0 { 2234 return nil, status.Error(codes.InvalidArgument, "empty field path for object ResourceChangeLog_TransactionInfo") 2235 } 2236 if len(fp) == 1 { 2237 switch fp[0] { 2238 case "identifier": 2239 return &ResourceChangeLogTransactionInfo_FieldTerminalPath{selector: ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier}, nil 2240 case "try_counter", "tryCounter", "try-counter": 2241 return &ResourceChangeLogTransactionInfo_FieldTerminalPath{selector: ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter}, nil 2242 case "state": 2243 return &ResourceChangeLogTransactionInfo_FieldTerminalPath{selector: ResourceChangeLogTransactionInfo_FieldPathSelectorState}, nil 2244 } 2245 } 2246 return nil, status.Errorf(codes.InvalidArgument, "unknown field path '%s' for object ResourceChangeLog_TransactionInfo", fp) 2247 } 2248 2249 func ParseResourceChangeLogTransactionInfo_FieldPath(rawField string) (ResourceChangeLogTransactionInfo_FieldPath, error) { 2250 fp, err := gotenobject.ParseRawFieldPath(rawField) 2251 if err != nil { 2252 return nil, err 2253 } 2254 return BuildResourceChangeLogTransactionInfo_FieldPath(fp) 2255 } 2256 2257 func MustParseResourceChangeLogTransactionInfo_FieldPath(rawField string) ResourceChangeLogTransactionInfo_FieldPath { 2258 fp, err := ParseResourceChangeLogTransactionInfo_FieldPath(rawField) 2259 if err != nil { 2260 panic(err) 2261 } 2262 return fp 2263 } 2264 2265 type ResourceChangeLogTransactionInfo_FieldTerminalPath struct { 2266 selector ResourceChangeLogTransactionInfo_FieldPathSelector 2267 } 2268 2269 var _ ResourceChangeLogTransactionInfo_FieldPath = (*ResourceChangeLogTransactionInfo_FieldTerminalPath)(nil) 2270 2271 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) Selector() ResourceChangeLogTransactionInfo_FieldPathSelector { 2272 return fp.selector 2273 } 2274 2275 // String returns path representation in proto convention 2276 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) String() string { 2277 return fp.selector.String() 2278 } 2279 2280 // JSONString returns path representation is JSON convention 2281 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) JSONString() string { 2282 return strcase.ToLowerCamel(fp.String()) 2283 } 2284 2285 // Get returns all values pointed by specific field from source ResourceChangeLog_TransactionInfo 2286 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) Get(source *ResourceChangeLog_TransactionInfo) (values []interface{}) { 2287 if source != nil { 2288 switch fp.selector { 2289 case ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier: 2290 values = append(values, source.Identifier) 2291 case ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter: 2292 values = append(values, source.TryCounter) 2293 case ResourceChangeLogTransactionInfo_FieldPathSelectorState: 2294 values = append(values, source.State) 2295 default: 2296 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_TransactionInfo: %d", fp.selector)) 2297 } 2298 } 2299 return 2300 } 2301 2302 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) GetRaw(source proto.Message) []interface{} { 2303 return fp.Get(source.(*ResourceChangeLog_TransactionInfo)) 2304 } 2305 2306 // GetSingle returns value pointed by specific field of from source ResourceChangeLog_TransactionInfo 2307 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) GetSingle(source *ResourceChangeLog_TransactionInfo) (interface{}, bool) { 2308 switch fp.selector { 2309 case ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier: 2310 return source.GetIdentifier(), source != nil 2311 case ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter: 2312 return source.GetTryCounter(), source != nil 2313 case ResourceChangeLogTransactionInfo_FieldPathSelectorState: 2314 return source.GetState(), source != nil 2315 default: 2316 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_TransactionInfo: %d", fp.selector)) 2317 } 2318 } 2319 2320 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) GetSingleRaw(source proto.Message) (interface{}, bool) { 2321 return fp.GetSingle(source.(*ResourceChangeLog_TransactionInfo)) 2322 } 2323 2324 // GetDefault returns a default value of the field type 2325 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) GetDefault() interface{} { 2326 switch fp.selector { 2327 case ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier: 2328 return "" 2329 case ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter: 2330 return int32(0) 2331 case ResourceChangeLogTransactionInfo_FieldPathSelectorState: 2332 return ResourceChangeLog_TransactionInfo_UNDEFINED 2333 default: 2334 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_TransactionInfo: %d", fp.selector)) 2335 } 2336 } 2337 2338 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) ClearValue(item *ResourceChangeLog_TransactionInfo) { 2339 if item != nil { 2340 switch fp.selector { 2341 case ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier: 2342 item.Identifier = "" 2343 case ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter: 2344 item.TryCounter = int32(0) 2345 case ResourceChangeLogTransactionInfo_FieldPathSelectorState: 2346 item.State = ResourceChangeLog_TransactionInfo_UNDEFINED 2347 default: 2348 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_TransactionInfo: %d", fp.selector)) 2349 } 2350 } 2351 } 2352 2353 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) ClearValueRaw(item proto.Message) { 2354 fp.ClearValue(item.(*ResourceChangeLog_TransactionInfo)) 2355 } 2356 2357 // IsLeaf - whether field path is holds simple value 2358 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) IsLeaf() bool { 2359 return fp.selector == ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier || 2360 fp.selector == ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter || 2361 fp.selector == ResourceChangeLogTransactionInfo_FieldPathSelectorState 2362 } 2363 2364 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) SplitIntoTerminalIPaths() []gotenobject.FieldPath { 2365 return []gotenobject.FieldPath{fp} 2366 } 2367 2368 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) WithIValue(value interface{}) ResourceChangeLogTransactionInfo_FieldPathValue { 2369 switch fp.selector { 2370 case ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier: 2371 return &ResourceChangeLogTransactionInfo_FieldTerminalPathValue{ResourceChangeLogTransactionInfo_FieldTerminalPath: *fp, value: value.(string)} 2372 case ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter: 2373 return &ResourceChangeLogTransactionInfo_FieldTerminalPathValue{ResourceChangeLogTransactionInfo_FieldTerminalPath: *fp, value: value.(int32)} 2374 case ResourceChangeLogTransactionInfo_FieldPathSelectorState: 2375 return &ResourceChangeLogTransactionInfo_FieldTerminalPathValue{ResourceChangeLogTransactionInfo_FieldTerminalPath: *fp, value: value.(ResourceChangeLog_TransactionInfo_State)} 2376 default: 2377 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_TransactionInfo: %d", fp.selector)) 2378 } 2379 } 2380 2381 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) WithRawIValue(value interface{}) gotenobject.FieldPathValue { 2382 return fp.WithIValue(value) 2383 } 2384 2385 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) WithIArrayOfValues(values interface{}) ResourceChangeLogTransactionInfo_FieldPathArrayOfValues { 2386 fpaov := &ResourceChangeLogTransactionInfo_FieldTerminalPathArrayOfValues{ResourceChangeLogTransactionInfo_FieldTerminalPath: *fp} 2387 switch fp.selector { 2388 case ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier: 2389 return &ResourceChangeLogTransactionInfo_FieldTerminalPathArrayOfValues{ResourceChangeLogTransactionInfo_FieldTerminalPath: *fp, values: values.([]string)} 2390 case ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter: 2391 return &ResourceChangeLogTransactionInfo_FieldTerminalPathArrayOfValues{ResourceChangeLogTransactionInfo_FieldTerminalPath: *fp, values: values.([]int32)} 2392 case ResourceChangeLogTransactionInfo_FieldPathSelectorState: 2393 return &ResourceChangeLogTransactionInfo_FieldTerminalPathArrayOfValues{ResourceChangeLogTransactionInfo_FieldTerminalPath: *fp, values: values.([]ResourceChangeLog_TransactionInfo_State)} 2394 default: 2395 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_TransactionInfo: %d", fp.selector)) 2396 } 2397 return fpaov 2398 } 2399 2400 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) WithRawIArrayOfValues(values interface{}) gotenobject.FieldPathArrayOfValues { 2401 return fp.WithIArrayOfValues(values) 2402 } 2403 2404 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) WithIArrayItemValue(value interface{}) ResourceChangeLogTransactionInfo_FieldPathArrayItemValue { 2405 switch fp.selector { 2406 default: 2407 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_TransactionInfo: %d", fp.selector)) 2408 } 2409 } 2410 2411 func (fp *ResourceChangeLogTransactionInfo_FieldTerminalPath) WithRawIArrayItemValue(value interface{}) gotenobject.FieldPathArrayItemValue { 2412 return fp.WithIArrayItemValue(value) 2413 } 2414 2415 // ResourceChangeLogTransactionInfo_FieldPathValue allows storing values for TransactionInfo fields according to their type 2416 type ResourceChangeLogTransactionInfo_FieldPathValue interface { 2417 ResourceChangeLogTransactionInfo_FieldPath 2418 gotenobject.FieldPathValue 2419 SetTo(target **ResourceChangeLog_TransactionInfo) 2420 CompareWith(*ResourceChangeLog_TransactionInfo) (cmp int, comparable bool) 2421 } 2422 2423 func ParseResourceChangeLogTransactionInfo_FieldPathValue(pathStr, valueStr string) (ResourceChangeLogTransactionInfo_FieldPathValue, error) { 2424 fp, err := ParseResourceChangeLogTransactionInfo_FieldPath(pathStr) 2425 if err != nil { 2426 return nil, err 2427 } 2428 fpv, err := gotenobject.ParseFieldPathValue(fp, valueStr) 2429 if err != nil { 2430 return nil, status.Errorf(codes.InvalidArgument, "error parsing TransactionInfo field path value from %s: %v", valueStr, err) 2431 } 2432 return fpv.(ResourceChangeLogTransactionInfo_FieldPathValue), nil 2433 } 2434 2435 func MustParseResourceChangeLogTransactionInfo_FieldPathValue(pathStr, valueStr string) ResourceChangeLogTransactionInfo_FieldPathValue { 2436 fpv, err := ParseResourceChangeLogTransactionInfo_FieldPathValue(pathStr, valueStr) 2437 if err != nil { 2438 panic(err) 2439 } 2440 return fpv 2441 } 2442 2443 type ResourceChangeLogTransactionInfo_FieldTerminalPathValue struct { 2444 ResourceChangeLogTransactionInfo_FieldTerminalPath 2445 value interface{} 2446 } 2447 2448 var _ ResourceChangeLogTransactionInfo_FieldPathValue = (*ResourceChangeLogTransactionInfo_FieldTerminalPathValue)(nil) 2449 2450 // GetRawValue returns raw value stored under selected path for 'TransactionInfo' as interface{} 2451 func (fpv *ResourceChangeLogTransactionInfo_FieldTerminalPathValue) GetRawValue() interface{} { 2452 return fpv.value 2453 } 2454 func (fpv *ResourceChangeLogTransactionInfo_FieldTerminalPathValue) AsIdentifierValue() (string, bool) { 2455 res, ok := fpv.value.(string) 2456 return res, ok 2457 } 2458 func (fpv *ResourceChangeLogTransactionInfo_FieldTerminalPathValue) AsTryCounterValue() (int32, bool) { 2459 res, ok := fpv.value.(int32) 2460 return res, ok 2461 } 2462 func (fpv *ResourceChangeLogTransactionInfo_FieldTerminalPathValue) AsStateValue() (ResourceChangeLog_TransactionInfo_State, bool) { 2463 res, ok := fpv.value.(ResourceChangeLog_TransactionInfo_State) 2464 return res, ok 2465 } 2466 2467 // SetTo stores value for selected field for object TransactionInfo 2468 func (fpv *ResourceChangeLogTransactionInfo_FieldTerminalPathValue) SetTo(target **ResourceChangeLog_TransactionInfo) { 2469 if *target == nil { 2470 *target = new(ResourceChangeLog_TransactionInfo) 2471 } 2472 switch fpv.selector { 2473 case ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier: 2474 (*target).Identifier = fpv.value.(string) 2475 case ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter: 2476 (*target).TryCounter = fpv.value.(int32) 2477 case ResourceChangeLogTransactionInfo_FieldPathSelectorState: 2478 (*target).State = fpv.value.(ResourceChangeLog_TransactionInfo_State) 2479 default: 2480 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_TransactionInfo: %d", fpv.selector)) 2481 } 2482 } 2483 2484 func (fpv *ResourceChangeLogTransactionInfo_FieldTerminalPathValue) SetToRaw(target proto.Message) { 2485 typedObject := target.(*ResourceChangeLog_TransactionInfo) 2486 fpv.SetTo(&typedObject) 2487 } 2488 2489 // CompareWith compares value in the 'ResourceChangeLogTransactionInfo_FieldTerminalPathValue' with the value under path in 'ResourceChangeLog_TransactionInfo'. 2490 func (fpv *ResourceChangeLogTransactionInfo_FieldTerminalPathValue) CompareWith(source *ResourceChangeLog_TransactionInfo) (int, bool) { 2491 switch fpv.selector { 2492 case ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier: 2493 leftValue := fpv.value.(string) 2494 rightValue := source.GetIdentifier() 2495 if (leftValue) == (rightValue) { 2496 return 0, true 2497 } else if (leftValue) < (rightValue) { 2498 return -1, true 2499 } else { 2500 return 1, true 2501 } 2502 case ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter: 2503 leftValue := fpv.value.(int32) 2504 rightValue := source.GetTryCounter() 2505 if (leftValue) == (rightValue) { 2506 return 0, true 2507 } else if (leftValue) < (rightValue) { 2508 return -1, true 2509 } else { 2510 return 1, true 2511 } 2512 case ResourceChangeLogTransactionInfo_FieldPathSelectorState: 2513 leftValue := fpv.value.(ResourceChangeLog_TransactionInfo_State) 2514 rightValue := source.GetState() 2515 if (leftValue) == (rightValue) { 2516 return 0, true 2517 } else if (leftValue) < (rightValue) { 2518 return -1, true 2519 } else { 2520 return 1, true 2521 } 2522 default: 2523 panic(fmt.Sprintf("Invalid selector for ResourceChangeLog_TransactionInfo: %d", fpv.selector)) 2524 } 2525 } 2526 2527 func (fpv *ResourceChangeLogTransactionInfo_FieldTerminalPathValue) CompareWithRaw(source proto.Message) (int, bool) { 2528 return fpv.CompareWith(source.(*ResourceChangeLog_TransactionInfo)) 2529 } 2530 2531 // ResourceChangeLogTransactionInfo_FieldPathArrayItemValue allows storing single item in Path-specific values for TransactionInfo according to their type 2532 // Present only for array (repeated) types. 2533 type ResourceChangeLogTransactionInfo_FieldPathArrayItemValue interface { 2534 gotenobject.FieldPathArrayItemValue 2535 ResourceChangeLogTransactionInfo_FieldPath 2536 ContainsValue(*ResourceChangeLog_TransactionInfo) bool 2537 } 2538 2539 // ParseResourceChangeLogTransactionInfo_FieldPathArrayItemValue parses string and JSON-encoded value to its Value 2540 func ParseResourceChangeLogTransactionInfo_FieldPathArrayItemValue(pathStr, valueStr string) (ResourceChangeLogTransactionInfo_FieldPathArrayItemValue, error) { 2541 fp, err := ParseResourceChangeLogTransactionInfo_FieldPath(pathStr) 2542 if err != nil { 2543 return nil, err 2544 } 2545 fpaiv, err := gotenobject.ParseFieldPathArrayItemValue(fp, valueStr) 2546 if err != nil { 2547 return nil, status.Errorf(codes.InvalidArgument, "error parsing TransactionInfo field path array item value from %s: %v", valueStr, err) 2548 } 2549 return fpaiv.(ResourceChangeLogTransactionInfo_FieldPathArrayItemValue), nil 2550 } 2551 2552 func MustParseResourceChangeLogTransactionInfo_FieldPathArrayItemValue(pathStr, valueStr string) ResourceChangeLogTransactionInfo_FieldPathArrayItemValue { 2553 fpaiv, err := ParseResourceChangeLogTransactionInfo_FieldPathArrayItemValue(pathStr, valueStr) 2554 if err != nil { 2555 panic(err) 2556 } 2557 return fpaiv 2558 } 2559 2560 type ResourceChangeLogTransactionInfo_FieldTerminalPathArrayItemValue struct { 2561 ResourceChangeLogTransactionInfo_FieldTerminalPath 2562 value interface{} 2563 } 2564 2565 var _ ResourceChangeLogTransactionInfo_FieldPathArrayItemValue = (*ResourceChangeLogTransactionInfo_FieldTerminalPathArrayItemValue)(nil) 2566 2567 // GetRawValue returns stored element value for array in object ResourceChangeLog_TransactionInfo as interface{} 2568 func (fpaiv *ResourceChangeLogTransactionInfo_FieldTerminalPathArrayItemValue) GetRawItemValue() interface{} { 2569 return fpaiv.value 2570 } 2571 2572 func (fpaiv *ResourceChangeLogTransactionInfo_FieldTerminalPathArrayItemValue) GetSingle(source *ResourceChangeLog_TransactionInfo) (interface{}, bool) { 2573 return nil, false 2574 } 2575 2576 func (fpaiv *ResourceChangeLogTransactionInfo_FieldTerminalPathArrayItemValue) GetSingleRaw(source proto.Message) (interface{}, bool) { 2577 return fpaiv.GetSingle(source.(*ResourceChangeLog_TransactionInfo)) 2578 } 2579 2580 // Contains returns a boolean indicating if value that is being held is present in given 'TransactionInfo' 2581 func (fpaiv *ResourceChangeLogTransactionInfo_FieldTerminalPathArrayItemValue) ContainsValue(source *ResourceChangeLog_TransactionInfo) bool { 2582 slice := fpaiv.ResourceChangeLogTransactionInfo_FieldTerminalPath.Get(source) 2583 for _, v := range slice { 2584 if asProtoMsg, ok := fpaiv.value.(proto.Message); ok { 2585 if proto.Equal(asProtoMsg, v.(proto.Message)) { 2586 return true 2587 } 2588 } else if reflect.DeepEqual(v, fpaiv.value) { 2589 return true 2590 } 2591 } 2592 return false 2593 } 2594 2595 // ResourceChangeLogTransactionInfo_FieldPathArrayOfValues allows storing slice of values for TransactionInfo fields according to their type 2596 type ResourceChangeLogTransactionInfo_FieldPathArrayOfValues interface { 2597 gotenobject.FieldPathArrayOfValues 2598 ResourceChangeLogTransactionInfo_FieldPath 2599 } 2600 2601 func ParseResourceChangeLogTransactionInfo_FieldPathArrayOfValues(pathStr, valuesStr string) (ResourceChangeLogTransactionInfo_FieldPathArrayOfValues, error) { 2602 fp, err := ParseResourceChangeLogTransactionInfo_FieldPath(pathStr) 2603 if err != nil { 2604 return nil, err 2605 } 2606 fpaov, err := gotenobject.ParseFieldPathArrayOfValues(fp, valuesStr) 2607 if err != nil { 2608 return nil, status.Errorf(codes.InvalidArgument, "error parsing TransactionInfo field path array of values from %s: %v", valuesStr, err) 2609 } 2610 return fpaov.(ResourceChangeLogTransactionInfo_FieldPathArrayOfValues), nil 2611 } 2612 2613 func MustParseResourceChangeLogTransactionInfo_FieldPathArrayOfValues(pathStr, valuesStr string) ResourceChangeLogTransactionInfo_FieldPathArrayOfValues { 2614 fpaov, err := ParseResourceChangeLogTransactionInfo_FieldPathArrayOfValues(pathStr, valuesStr) 2615 if err != nil { 2616 panic(err) 2617 } 2618 return fpaov 2619 } 2620 2621 type ResourceChangeLogTransactionInfo_FieldTerminalPathArrayOfValues struct { 2622 ResourceChangeLogTransactionInfo_FieldTerminalPath 2623 values interface{} 2624 } 2625 2626 var _ ResourceChangeLogTransactionInfo_FieldPathArrayOfValues = (*ResourceChangeLogTransactionInfo_FieldTerminalPathArrayOfValues)(nil) 2627 2628 func (fpaov *ResourceChangeLogTransactionInfo_FieldTerminalPathArrayOfValues) GetRawValues() (values []interface{}) { 2629 switch fpaov.selector { 2630 case ResourceChangeLogTransactionInfo_FieldPathSelectorIdentifier: 2631 for _, v := range fpaov.values.([]string) { 2632 values = append(values, v) 2633 } 2634 case ResourceChangeLogTransactionInfo_FieldPathSelectorTryCounter: 2635 for _, v := range fpaov.values.([]int32) { 2636 values = append(values, v) 2637 } 2638 case ResourceChangeLogTransactionInfo_FieldPathSelectorState: 2639 for _, v := range fpaov.values.([]ResourceChangeLog_TransactionInfo_State) { 2640 values = append(values, v) 2641 } 2642 } 2643 return 2644 } 2645 func (fpaov *ResourceChangeLogTransactionInfo_FieldTerminalPathArrayOfValues) AsIdentifierArrayOfValues() ([]string, bool) { 2646 res, ok := fpaov.values.([]string) 2647 return res, ok 2648 } 2649 func (fpaov *ResourceChangeLogTransactionInfo_FieldTerminalPathArrayOfValues) AsTryCounterArrayOfValues() ([]int32, bool) { 2650 res, ok := fpaov.values.([]int32) 2651 return res, ok 2652 } 2653 func (fpaov *ResourceChangeLogTransactionInfo_FieldTerminalPathArrayOfValues) AsStateArrayOfValues() ([]ResourceChangeLog_TransactionInfo_State, bool) { 2654 res, ok := fpaov.values.([]ResourceChangeLog_TransactionInfo_State) 2655 return res, ok 2656 }