github.com/cloudwan/edgelq-sdk@v1.15.4/monitoring/resources/v3/common/common.pb.object_ext.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/monitoring/proto/v3/common.proto 3 // DO NOT EDIT!!! 4 5 package common 6 7 import ( 8 "fmt" 9 "sort" 10 11 "google.golang.org/protobuf/proto" 12 googlefieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 13 14 gotenobject "github.com/cloudwan/goten-sdk/runtime/object" 15 ) 16 17 // proto imports 18 import ( 19 durationpb "google.golang.org/protobuf/types/known/durationpb" 20 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 21 ) 22 23 // ensure the imports are used 24 var ( 25 _ = new(fmt.Stringer) 26 _ = new(sort.Interface) 27 28 _ = new(proto.Message) 29 _ = googlefieldmaskpb.FieldMask{} 30 31 _ = new(gotenobject.FieldPath) 32 ) 33 34 // make sure we're using proto imports 35 var ( 36 _ = &durationpb.Duration{} 37 _ = ×tamppb.Timestamp{} 38 ) 39 40 func (o *LabelDescriptor) GotenObjectExt() {} 41 42 func (o *LabelDescriptor) MakeFullFieldMask() *LabelDescriptor_FieldMask { 43 return FullLabelDescriptor_FieldMask() 44 } 45 46 func (o *LabelDescriptor) MakeRawFullFieldMask() gotenobject.FieldMask { 47 return FullLabelDescriptor_FieldMask() 48 } 49 50 func (o *LabelDescriptor) MakeDiffFieldMask(other *LabelDescriptor) *LabelDescriptor_FieldMask { 51 if o == nil && other == nil { 52 return &LabelDescriptor_FieldMask{} 53 } 54 if o == nil || other == nil { 55 return FullLabelDescriptor_FieldMask() 56 } 57 58 res := &LabelDescriptor_FieldMask{} 59 if o.GetKey() != other.GetKey() { 60 res.Paths = append(res.Paths, &LabelDescriptor_FieldTerminalPath{selector: LabelDescriptor_FieldPathSelectorKey}) 61 } 62 if o.GetValueType() != other.GetValueType() { 63 res.Paths = append(res.Paths, &LabelDescriptor_FieldTerminalPath{selector: LabelDescriptor_FieldPathSelectorValueType}) 64 } 65 if o.GetDescription() != other.GetDescription() { 66 res.Paths = append(res.Paths, &LabelDescriptor_FieldTerminalPath{selector: LabelDescriptor_FieldPathSelectorDescription}) 67 } 68 if o.GetDefaultValue() != other.GetDefaultValue() { 69 res.Paths = append(res.Paths, &LabelDescriptor_FieldTerminalPath{selector: LabelDescriptor_FieldPathSelectorDefaultValue}) 70 } 71 if o.GetDisabled() != other.GetDisabled() { 72 res.Paths = append(res.Paths, &LabelDescriptor_FieldTerminalPath{selector: LabelDescriptor_FieldPathSelectorDisabled}) 73 } 74 return res 75 } 76 77 func (o *LabelDescriptor) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 78 return o.MakeDiffFieldMask(other.(*LabelDescriptor)) 79 } 80 81 func (o *LabelDescriptor) Clone() *LabelDescriptor { 82 if o == nil { 83 return nil 84 } 85 result := &LabelDescriptor{} 86 result.Key = o.Key 87 result.ValueType = o.ValueType 88 result.Description = o.Description 89 result.DefaultValue = o.DefaultValue 90 result.Disabled = o.Disabled 91 return result 92 } 93 94 func (o *LabelDescriptor) CloneRaw() gotenobject.GotenObjectExt { 95 return o.Clone() 96 } 97 98 func (o *LabelDescriptor) Merge(source *LabelDescriptor) { 99 o.Key = source.GetKey() 100 o.ValueType = source.GetValueType() 101 o.Description = source.GetDescription() 102 o.DefaultValue = source.GetDefaultValue() 103 o.Disabled = source.GetDisabled() 104 } 105 106 func (o *LabelDescriptor) MergeRaw(source gotenobject.GotenObjectExt) { 107 o.Merge(source.(*LabelDescriptor)) 108 } 109 110 func (o *LabelKeySet) GotenObjectExt() {} 111 112 func (o *LabelKeySet) MakeFullFieldMask() *LabelKeySet_FieldMask { 113 return FullLabelKeySet_FieldMask() 114 } 115 116 func (o *LabelKeySet) MakeRawFullFieldMask() gotenobject.FieldMask { 117 return FullLabelKeySet_FieldMask() 118 } 119 120 func (o *LabelKeySet) MakeDiffFieldMask(other *LabelKeySet) *LabelKeySet_FieldMask { 121 if o == nil && other == nil { 122 return &LabelKeySet_FieldMask{} 123 } 124 if o == nil || other == nil { 125 return FullLabelKeySet_FieldMask() 126 } 127 128 res := &LabelKeySet_FieldMask{} 129 130 if len(o.GetLabelKeys()) == len(other.GetLabelKeys()) { 131 for i, lValue := range o.GetLabelKeys() { 132 rValue := other.GetLabelKeys()[i] 133 if lValue != rValue { 134 res.Paths = append(res.Paths, &LabelKeySet_FieldTerminalPath{selector: LabelKeySet_FieldPathSelectorLabelKeys}) 135 break 136 } 137 } 138 } else { 139 res.Paths = append(res.Paths, &LabelKeySet_FieldTerminalPath{selector: LabelKeySet_FieldPathSelectorLabelKeys}) 140 } 141 if o.GetWriteOnly() != other.GetWriteOnly() { 142 res.Paths = append(res.Paths, &LabelKeySet_FieldTerminalPath{selector: LabelKeySet_FieldPathSelectorWriteOnly}) 143 } 144 return res 145 } 146 147 func (o *LabelKeySet) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 148 return o.MakeDiffFieldMask(other.(*LabelKeySet)) 149 } 150 151 func (o *LabelKeySet) Clone() *LabelKeySet { 152 if o == nil { 153 return nil 154 } 155 result := &LabelKeySet{} 156 result.LabelKeys = make([]string, len(o.LabelKeys)) 157 for i, sourceValue := range o.LabelKeys { 158 result.LabelKeys[i] = sourceValue 159 } 160 result.WriteOnly = o.WriteOnly 161 return result 162 } 163 164 func (o *LabelKeySet) CloneRaw() gotenobject.GotenObjectExt { 165 return o.Clone() 166 } 167 168 func (o *LabelKeySet) Merge(source *LabelKeySet) { 169 for _, sourceValue := range source.GetLabelKeys() { 170 exists := false 171 for _, currentValue := range o.LabelKeys { 172 if currentValue == sourceValue { 173 exists = true 174 break 175 } 176 } 177 if !exists { 178 var newDstElement string 179 newDstElement = sourceValue 180 o.LabelKeys = append(o.LabelKeys, newDstElement) 181 } 182 } 183 184 o.WriteOnly = source.GetWriteOnly() 185 } 186 187 func (o *LabelKeySet) MergeRaw(source gotenobject.GotenObjectExt) { 188 o.Merge(source.(*LabelKeySet)) 189 } 190 191 func (o *Distribution) GotenObjectExt() {} 192 193 func (o *Distribution) MakeFullFieldMask() *Distribution_FieldMask { 194 return FullDistribution_FieldMask() 195 } 196 197 func (o *Distribution) MakeRawFullFieldMask() gotenobject.FieldMask { 198 return FullDistribution_FieldMask() 199 } 200 201 func (o *Distribution) MakeDiffFieldMask(other *Distribution) *Distribution_FieldMask { 202 if o == nil && other == nil { 203 return &Distribution_FieldMask{} 204 } 205 if o == nil || other == nil { 206 return FullDistribution_FieldMask() 207 } 208 209 res := &Distribution_FieldMask{} 210 if o.GetCount() != other.GetCount() { 211 res.Paths = append(res.Paths, &Distribution_FieldTerminalPath{selector: Distribution_FieldPathSelectorCount}) 212 } 213 if o.GetMean() != other.GetMean() { 214 res.Paths = append(res.Paths, &Distribution_FieldTerminalPath{selector: Distribution_FieldPathSelectorMean}) 215 } 216 if o.GetSumOfSquaredDeviation() != other.GetSumOfSquaredDeviation() { 217 res.Paths = append(res.Paths, &Distribution_FieldTerminalPath{selector: Distribution_FieldPathSelectorSumOfSquaredDeviation}) 218 } 219 { 220 subMask := o.GetRange().MakeDiffFieldMask(other.GetRange()) 221 if subMask.IsFull() { 222 res.Paths = append(res.Paths, &Distribution_FieldTerminalPath{selector: Distribution_FieldPathSelectorRange}) 223 } else { 224 for _, subpath := range subMask.Paths { 225 res.Paths = append(res.Paths, &Distribution_FieldSubPath{selector: Distribution_FieldPathSelectorRange, subPath: subpath}) 226 } 227 } 228 } 229 { 230 subMask := o.GetBucketOptions().MakeDiffFieldMask(other.GetBucketOptions()) 231 if subMask.IsFull() { 232 res.Paths = append(res.Paths, &Distribution_FieldTerminalPath{selector: Distribution_FieldPathSelectorBucketOptions}) 233 } else { 234 for _, subpath := range subMask.Paths { 235 res.Paths = append(res.Paths, &Distribution_FieldSubPath{selector: Distribution_FieldPathSelectorBucketOptions, subPath: subpath}) 236 } 237 } 238 } 239 240 if len(o.GetBucketCounts()) == len(other.GetBucketCounts()) { 241 for i, lValue := range o.GetBucketCounts() { 242 rValue := other.GetBucketCounts()[i] 243 if lValue != rValue { 244 res.Paths = append(res.Paths, &Distribution_FieldTerminalPath{selector: Distribution_FieldPathSelectorBucketCounts}) 245 break 246 } 247 } 248 } else { 249 res.Paths = append(res.Paths, &Distribution_FieldTerminalPath{selector: Distribution_FieldPathSelectorBucketCounts}) 250 } 251 return res 252 } 253 254 func (o *Distribution) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 255 return o.MakeDiffFieldMask(other.(*Distribution)) 256 } 257 258 func (o *Distribution) Clone() *Distribution { 259 if o == nil { 260 return nil 261 } 262 result := &Distribution{} 263 result.Count = o.Count 264 result.Mean = o.Mean 265 result.SumOfSquaredDeviation = o.SumOfSquaredDeviation 266 result.Range = o.Range.Clone() 267 result.BucketOptions = o.BucketOptions.Clone() 268 result.BucketCounts = make([]int64, len(o.BucketCounts)) 269 for i, sourceValue := range o.BucketCounts { 270 result.BucketCounts[i] = sourceValue 271 } 272 return result 273 } 274 275 func (o *Distribution) CloneRaw() gotenobject.GotenObjectExt { 276 return o.Clone() 277 } 278 279 func (o *Distribution) Merge(source *Distribution) { 280 o.Count = source.GetCount() 281 o.Mean = source.GetMean() 282 o.SumOfSquaredDeviation = source.GetSumOfSquaredDeviation() 283 if source.GetRange() != nil { 284 if o.Range == nil { 285 o.Range = new(Distribution_Range) 286 } 287 o.Range.Merge(source.GetRange()) 288 } 289 if source.GetBucketOptions() != nil { 290 if o.BucketOptions == nil { 291 o.BucketOptions = new(Distribution_BucketOptions) 292 } 293 o.BucketOptions.Merge(source.GetBucketOptions()) 294 } 295 for _, sourceValue := range source.GetBucketCounts() { 296 exists := false 297 for _, currentValue := range o.BucketCounts { 298 if currentValue == sourceValue { 299 exists = true 300 break 301 } 302 } 303 if !exists { 304 var newDstElement int64 305 newDstElement = sourceValue 306 o.BucketCounts = append(o.BucketCounts, newDstElement) 307 } 308 } 309 310 } 311 312 func (o *Distribution) MergeRaw(source gotenobject.GotenObjectExt) { 313 o.Merge(source.(*Distribution)) 314 } 315 316 func (o *Distribution_Range) GotenObjectExt() {} 317 318 func (o *Distribution_Range) MakeFullFieldMask() *Distribution_Range_FieldMask { 319 return FullDistribution_Range_FieldMask() 320 } 321 322 func (o *Distribution_Range) MakeRawFullFieldMask() gotenobject.FieldMask { 323 return FullDistribution_Range_FieldMask() 324 } 325 326 func (o *Distribution_Range) MakeDiffFieldMask(other *Distribution_Range) *Distribution_Range_FieldMask { 327 if o == nil && other == nil { 328 return &Distribution_Range_FieldMask{} 329 } 330 if o == nil || other == nil { 331 return FullDistribution_Range_FieldMask() 332 } 333 334 res := &Distribution_Range_FieldMask{} 335 if o.GetMin() != other.GetMin() { 336 res.Paths = append(res.Paths, &DistributionRange_FieldTerminalPath{selector: DistributionRange_FieldPathSelectorMin}) 337 } 338 if o.GetMax() != other.GetMax() { 339 res.Paths = append(res.Paths, &DistributionRange_FieldTerminalPath{selector: DistributionRange_FieldPathSelectorMax}) 340 } 341 return res 342 } 343 344 func (o *Distribution_Range) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 345 return o.MakeDiffFieldMask(other.(*Distribution_Range)) 346 } 347 348 func (o *Distribution_Range) Clone() *Distribution_Range { 349 if o == nil { 350 return nil 351 } 352 result := &Distribution_Range{} 353 result.Min = o.Min 354 result.Max = o.Max 355 return result 356 } 357 358 func (o *Distribution_Range) CloneRaw() gotenobject.GotenObjectExt { 359 return o.Clone() 360 } 361 362 func (o *Distribution_Range) Merge(source *Distribution_Range) { 363 o.Min = source.GetMin() 364 o.Max = source.GetMax() 365 } 366 367 func (o *Distribution_Range) MergeRaw(source gotenobject.GotenObjectExt) { 368 o.Merge(source.(*Distribution_Range)) 369 } 370 371 func (o *Distribution_BucketOptions) GotenObjectExt() {} 372 373 func (o *Distribution_BucketOptions) MakeFullFieldMask() *Distribution_BucketOptions_FieldMask { 374 return FullDistribution_BucketOptions_FieldMask() 375 } 376 377 func (o *Distribution_BucketOptions) MakeRawFullFieldMask() gotenobject.FieldMask { 378 return FullDistribution_BucketOptions_FieldMask() 379 } 380 381 func (o *Distribution_BucketOptions) MakeDiffFieldMask(other *Distribution_BucketOptions) *Distribution_BucketOptions_FieldMask { 382 if o == nil && other == nil { 383 return &Distribution_BucketOptions_FieldMask{} 384 } 385 if o == nil || other == nil { 386 return FullDistribution_BucketOptions_FieldMask() 387 } 388 389 res := &Distribution_BucketOptions_FieldMask{} 390 { 391 _, leftSelected := o.Options.(*Distribution_BucketOptions_LinearBuckets) 392 _, rightSelected := other.Options.(*Distribution_BucketOptions_LinearBuckets) 393 if leftSelected == rightSelected { 394 subMask := o.GetLinearBuckets().MakeDiffFieldMask(other.GetLinearBuckets()) 395 if subMask.IsFull() { 396 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldTerminalPath{selector: DistributionBucketOptions_FieldPathSelectorLinearBuckets}) 397 } else { 398 for _, subpath := range subMask.Paths { 399 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldSubPath{selector: DistributionBucketOptions_FieldPathSelectorLinearBuckets, subPath: subpath}) 400 } 401 } 402 } else { 403 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldTerminalPath{selector: DistributionBucketOptions_FieldPathSelectorLinearBuckets}) 404 } 405 } 406 { 407 _, leftSelected := o.Options.(*Distribution_BucketOptions_ExponentialBuckets) 408 _, rightSelected := other.Options.(*Distribution_BucketOptions_ExponentialBuckets) 409 if leftSelected == rightSelected { 410 subMask := o.GetExponentialBuckets().MakeDiffFieldMask(other.GetExponentialBuckets()) 411 if subMask.IsFull() { 412 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldTerminalPath{selector: DistributionBucketOptions_FieldPathSelectorExponentialBuckets}) 413 } else { 414 for _, subpath := range subMask.Paths { 415 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldSubPath{selector: DistributionBucketOptions_FieldPathSelectorExponentialBuckets, subPath: subpath}) 416 } 417 } 418 } else { 419 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldTerminalPath{selector: DistributionBucketOptions_FieldPathSelectorExponentialBuckets}) 420 } 421 } 422 { 423 _, leftSelected := o.Options.(*Distribution_BucketOptions_ExplicitBuckets) 424 _, rightSelected := other.Options.(*Distribution_BucketOptions_ExplicitBuckets) 425 if leftSelected == rightSelected { 426 subMask := o.GetExplicitBuckets().MakeDiffFieldMask(other.GetExplicitBuckets()) 427 if subMask.IsFull() { 428 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldTerminalPath{selector: DistributionBucketOptions_FieldPathSelectorExplicitBuckets}) 429 } else { 430 for _, subpath := range subMask.Paths { 431 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldSubPath{selector: DistributionBucketOptions_FieldPathSelectorExplicitBuckets, subPath: subpath}) 432 } 433 } 434 } else { 435 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldTerminalPath{selector: DistributionBucketOptions_FieldPathSelectorExplicitBuckets}) 436 } 437 } 438 { 439 _, leftSelected := o.Options.(*Distribution_BucketOptions_DynamicBuckets) 440 _, rightSelected := other.Options.(*Distribution_BucketOptions_DynamicBuckets) 441 if leftSelected == rightSelected { 442 subMask := o.GetDynamicBuckets().MakeDiffFieldMask(other.GetDynamicBuckets()) 443 if subMask.IsFull() { 444 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldTerminalPath{selector: DistributionBucketOptions_FieldPathSelectorDynamicBuckets}) 445 } else { 446 for _, subpath := range subMask.Paths { 447 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldSubPath{selector: DistributionBucketOptions_FieldPathSelectorDynamicBuckets, subPath: subpath}) 448 } 449 } 450 } else { 451 res.Paths = append(res.Paths, &DistributionBucketOptions_FieldTerminalPath{selector: DistributionBucketOptions_FieldPathSelectorDynamicBuckets}) 452 } 453 } 454 return res 455 } 456 457 func (o *Distribution_BucketOptions) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 458 return o.MakeDiffFieldMask(other.(*Distribution_BucketOptions)) 459 } 460 461 func (o *Distribution_BucketOptions) Clone() *Distribution_BucketOptions { 462 if o == nil { 463 return nil 464 } 465 result := &Distribution_BucketOptions{} 466 if o, ok := o.Options.(*Distribution_BucketOptions_LinearBuckets); ok { 467 result.Options = (*Distribution_BucketOptions_LinearBuckets)(nil) 468 if o != nil { 469 result.Options = &Distribution_BucketOptions_LinearBuckets{} 470 result := result.Options.(*Distribution_BucketOptions_LinearBuckets) 471 result.LinearBuckets = o.LinearBuckets.Clone() 472 } 473 } 474 if o, ok := o.Options.(*Distribution_BucketOptions_ExponentialBuckets); ok { 475 result.Options = (*Distribution_BucketOptions_ExponentialBuckets)(nil) 476 if o != nil { 477 result.Options = &Distribution_BucketOptions_ExponentialBuckets{} 478 result := result.Options.(*Distribution_BucketOptions_ExponentialBuckets) 479 result.ExponentialBuckets = o.ExponentialBuckets.Clone() 480 } 481 } 482 if o, ok := o.Options.(*Distribution_BucketOptions_ExplicitBuckets); ok { 483 result.Options = (*Distribution_BucketOptions_ExplicitBuckets)(nil) 484 if o != nil { 485 result.Options = &Distribution_BucketOptions_ExplicitBuckets{} 486 result := result.Options.(*Distribution_BucketOptions_ExplicitBuckets) 487 result.ExplicitBuckets = o.ExplicitBuckets.Clone() 488 } 489 } 490 if o, ok := o.Options.(*Distribution_BucketOptions_DynamicBuckets); ok { 491 result.Options = (*Distribution_BucketOptions_DynamicBuckets)(nil) 492 if o != nil { 493 result.Options = &Distribution_BucketOptions_DynamicBuckets{} 494 result := result.Options.(*Distribution_BucketOptions_DynamicBuckets) 495 result.DynamicBuckets = o.DynamicBuckets.Clone() 496 } 497 } 498 return result 499 } 500 501 func (o *Distribution_BucketOptions) CloneRaw() gotenobject.GotenObjectExt { 502 return o.Clone() 503 } 504 505 func (o *Distribution_BucketOptions) Merge(source *Distribution_BucketOptions) { 506 if source, ok := source.GetOptions().(*Distribution_BucketOptions_LinearBuckets); ok { 507 if dstOneOf, ok := o.Options.(*Distribution_BucketOptions_LinearBuckets); !ok || dstOneOf == nil { 508 o.Options = &Distribution_BucketOptions_LinearBuckets{} 509 } 510 if source != nil { 511 o := o.Options.(*Distribution_BucketOptions_LinearBuckets) 512 if source.LinearBuckets != nil { 513 if o.LinearBuckets == nil { 514 o.LinearBuckets = new(Distribution_BucketOptions_Linear) 515 } 516 o.LinearBuckets.Merge(source.LinearBuckets) 517 } 518 } 519 } 520 if source, ok := source.GetOptions().(*Distribution_BucketOptions_ExponentialBuckets); ok { 521 if dstOneOf, ok := o.Options.(*Distribution_BucketOptions_ExponentialBuckets); !ok || dstOneOf == nil { 522 o.Options = &Distribution_BucketOptions_ExponentialBuckets{} 523 } 524 if source != nil { 525 o := o.Options.(*Distribution_BucketOptions_ExponentialBuckets) 526 if source.ExponentialBuckets != nil { 527 if o.ExponentialBuckets == nil { 528 o.ExponentialBuckets = new(Distribution_BucketOptions_Exponential) 529 } 530 o.ExponentialBuckets.Merge(source.ExponentialBuckets) 531 } 532 } 533 } 534 if source, ok := source.GetOptions().(*Distribution_BucketOptions_ExplicitBuckets); ok { 535 if dstOneOf, ok := o.Options.(*Distribution_BucketOptions_ExplicitBuckets); !ok || dstOneOf == nil { 536 o.Options = &Distribution_BucketOptions_ExplicitBuckets{} 537 } 538 if source != nil { 539 o := o.Options.(*Distribution_BucketOptions_ExplicitBuckets) 540 if source.ExplicitBuckets != nil { 541 if o.ExplicitBuckets == nil { 542 o.ExplicitBuckets = new(Distribution_BucketOptions_Explicit) 543 } 544 o.ExplicitBuckets.Merge(source.ExplicitBuckets) 545 } 546 } 547 } 548 if source, ok := source.GetOptions().(*Distribution_BucketOptions_DynamicBuckets); ok { 549 if dstOneOf, ok := o.Options.(*Distribution_BucketOptions_DynamicBuckets); !ok || dstOneOf == nil { 550 o.Options = &Distribution_BucketOptions_DynamicBuckets{} 551 } 552 if source != nil { 553 o := o.Options.(*Distribution_BucketOptions_DynamicBuckets) 554 if source.DynamicBuckets != nil { 555 if o.DynamicBuckets == nil { 556 o.DynamicBuckets = new(Distribution_BucketOptions_Dynamic) 557 } 558 o.DynamicBuckets.Merge(source.DynamicBuckets) 559 } 560 } 561 } 562 } 563 564 func (o *Distribution_BucketOptions) MergeRaw(source gotenobject.GotenObjectExt) { 565 o.Merge(source.(*Distribution_BucketOptions)) 566 } 567 568 func (o *Distribution_BucketOptions_Linear) GotenObjectExt() {} 569 570 func (o *Distribution_BucketOptions_Linear) MakeFullFieldMask() *Distribution_BucketOptions_Linear_FieldMask { 571 return FullDistribution_BucketOptions_Linear_FieldMask() 572 } 573 574 func (o *Distribution_BucketOptions_Linear) MakeRawFullFieldMask() gotenobject.FieldMask { 575 return FullDistribution_BucketOptions_Linear_FieldMask() 576 } 577 578 func (o *Distribution_BucketOptions_Linear) MakeDiffFieldMask(other *Distribution_BucketOptions_Linear) *Distribution_BucketOptions_Linear_FieldMask { 579 if o == nil && other == nil { 580 return &Distribution_BucketOptions_Linear_FieldMask{} 581 } 582 if o == nil || other == nil { 583 return FullDistribution_BucketOptions_Linear_FieldMask() 584 } 585 586 res := &Distribution_BucketOptions_Linear_FieldMask{} 587 if o.GetNumFiniteBuckets() != other.GetNumFiniteBuckets() { 588 res.Paths = append(res.Paths, &DistributionBucketOptionsLinear_FieldTerminalPath{selector: DistributionBucketOptionsLinear_FieldPathSelectorNumFiniteBuckets}) 589 } 590 if o.GetWidth() != other.GetWidth() { 591 res.Paths = append(res.Paths, &DistributionBucketOptionsLinear_FieldTerminalPath{selector: DistributionBucketOptionsLinear_FieldPathSelectorWidth}) 592 } 593 if o.GetOffset() != other.GetOffset() { 594 res.Paths = append(res.Paths, &DistributionBucketOptionsLinear_FieldTerminalPath{selector: DistributionBucketOptionsLinear_FieldPathSelectorOffset}) 595 } 596 return res 597 } 598 599 func (o *Distribution_BucketOptions_Linear) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 600 return o.MakeDiffFieldMask(other.(*Distribution_BucketOptions_Linear)) 601 } 602 603 func (o *Distribution_BucketOptions_Linear) Clone() *Distribution_BucketOptions_Linear { 604 if o == nil { 605 return nil 606 } 607 result := &Distribution_BucketOptions_Linear{} 608 result.NumFiniteBuckets = o.NumFiniteBuckets 609 result.Width = o.Width 610 result.Offset = o.Offset 611 return result 612 } 613 614 func (o *Distribution_BucketOptions_Linear) CloneRaw() gotenobject.GotenObjectExt { 615 return o.Clone() 616 } 617 618 func (o *Distribution_BucketOptions_Linear) Merge(source *Distribution_BucketOptions_Linear) { 619 o.NumFiniteBuckets = source.GetNumFiniteBuckets() 620 o.Width = source.GetWidth() 621 o.Offset = source.GetOffset() 622 } 623 624 func (o *Distribution_BucketOptions_Linear) MergeRaw(source gotenobject.GotenObjectExt) { 625 o.Merge(source.(*Distribution_BucketOptions_Linear)) 626 } 627 628 func (o *Distribution_BucketOptions_Exponential) GotenObjectExt() {} 629 630 func (o *Distribution_BucketOptions_Exponential) MakeFullFieldMask() *Distribution_BucketOptions_Exponential_FieldMask { 631 return FullDistribution_BucketOptions_Exponential_FieldMask() 632 } 633 634 func (o *Distribution_BucketOptions_Exponential) MakeRawFullFieldMask() gotenobject.FieldMask { 635 return FullDistribution_BucketOptions_Exponential_FieldMask() 636 } 637 638 func (o *Distribution_BucketOptions_Exponential) MakeDiffFieldMask(other *Distribution_BucketOptions_Exponential) *Distribution_BucketOptions_Exponential_FieldMask { 639 if o == nil && other == nil { 640 return &Distribution_BucketOptions_Exponential_FieldMask{} 641 } 642 if o == nil || other == nil { 643 return FullDistribution_BucketOptions_Exponential_FieldMask() 644 } 645 646 res := &Distribution_BucketOptions_Exponential_FieldMask{} 647 if o.GetNumFiniteBuckets() != other.GetNumFiniteBuckets() { 648 res.Paths = append(res.Paths, &DistributionBucketOptionsExponential_FieldTerminalPath{selector: DistributionBucketOptionsExponential_FieldPathSelectorNumFiniteBuckets}) 649 } 650 if o.GetGrowthFactor() != other.GetGrowthFactor() { 651 res.Paths = append(res.Paths, &DistributionBucketOptionsExponential_FieldTerminalPath{selector: DistributionBucketOptionsExponential_FieldPathSelectorGrowthFactor}) 652 } 653 if o.GetScale() != other.GetScale() { 654 res.Paths = append(res.Paths, &DistributionBucketOptionsExponential_FieldTerminalPath{selector: DistributionBucketOptionsExponential_FieldPathSelectorScale}) 655 } 656 return res 657 } 658 659 func (o *Distribution_BucketOptions_Exponential) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 660 return o.MakeDiffFieldMask(other.(*Distribution_BucketOptions_Exponential)) 661 } 662 663 func (o *Distribution_BucketOptions_Exponential) Clone() *Distribution_BucketOptions_Exponential { 664 if o == nil { 665 return nil 666 } 667 result := &Distribution_BucketOptions_Exponential{} 668 result.NumFiniteBuckets = o.NumFiniteBuckets 669 result.GrowthFactor = o.GrowthFactor 670 result.Scale = o.Scale 671 return result 672 } 673 674 func (o *Distribution_BucketOptions_Exponential) CloneRaw() gotenobject.GotenObjectExt { 675 return o.Clone() 676 } 677 678 func (o *Distribution_BucketOptions_Exponential) Merge(source *Distribution_BucketOptions_Exponential) { 679 o.NumFiniteBuckets = source.GetNumFiniteBuckets() 680 o.GrowthFactor = source.GetGrowthFactor() 681 o.Scale = source.GetScale() 682 } 683 684 func (o *Distribution_BucketOptions_Exponential) MergeRaw(source gotenobject.GotenObjectExt) { 685 o.Merge(source.(*Distribution_BucketOptions_Exponential)) 686 } 687 688 func (o *Distribution_BucketOptions_Explicit) GotenObjectExt() {} 689 690 func (o *Distribution_BucketOptions_Explicit) MakeFullFieldMask() *Distribution_BucketOptions_Explicit_FieldMask { 691 return FullDistribution_BucketOptions_Explicit_FieldMask() 692 } 693 694 func (o *Distribution_BucketOptions_Explicit) MakeRawFullFieldMask() gotenobject.FieldMask { 695 return FullDistribution_BucketOptions_Explicit_FieldMask() 696 } 697 698 func (o *Distribution_BucketOptions_Explicit) MakeDiffFieldMask(other *Distribution_BucketOptions_Explicit) *Distribution_BucketOptions_Explicit_FieldMask { 699 if o == nil && other == nil { 700 return &Distribution_BucketOptions_Explicit_FieldMask{} 701 } 702 if o == nil || other == nil { 703 return FullDistribution_BucketOptions_Explicit_FieldMask() 704 } 705 706 res := &Distribution_BucketOptions_Explicit_FieldMask{} 707 708 if len(o.GetBounds()) == len(other.GetBounds()) { 709 for i, lValue := range o.GetBounds() { 710 rValue := other.GetBounds()[i] 711 if lValue != rValue { 712 res.Paths = append(res.Paths, &DistributionBucketOptionsExplicit_FieldTerminalPath{selector: DistributionBucketOptionsExplicit_FieldPathSelectorBounds}) 713 break 714 } 715 } 716 } else { 717 res.Paths = append(res.Paths, &DistributionBucketOptionsExplicit_FieldTerminalPath{selector: DistributionBucketOptionsExplicit_FieldPathSelectorBounds}) 718 } 719 return res 720 } 721 722 func (o *Distribution_BucketOptions_Explicit) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 723 return o.MakeDiffFieldMask(other.(*Distribution_BucketOptions_Explicit)) 724 } 725 726 func (o *Distribution_BucketOptions_Explicit) Clone() *Distribution_BucketOptions_Explicit { 727 if o == nil { 728 return nil 729 } 730 result := &Distribution_BucketOptions_Explicit{} 731 result.Bounds = make([]float64, len(o.Bounds)) 732 for i, sourceValue := range o.Bounds { 733 result.Bounds[i] = sourceValue 734 } 735 return result 736 } 737 738 func (o *Distribution_BucketOptions_Explicit) CloneRaw() gotenobject.GotenObjectExt { 739 return o.Clone() 740 } 741 742 func (o *Distribution_BucketOptions_Explicit) Merge(source *Distribution_BucketOptions_Explicit) { 743 for _, sourceValue := range source.GetBounds() { 744 exists := false 745 for _, currentValue := range o.Bounds { 746 if currentValue == sourceValue { 747 exists = true 748 break 749 } 750 } 751 if !exists { 752 var newDstElement float64 753 newDstElement = sourceValue 754 o.Bounds = append(o.Bounds, newDstElement) 755 } 756 } 757 758 } 759 760 func (o *Distribution_BucketOptions_Explicit) MergeRaw(source gotenobject.GotenObjectExt) { 761 o.Merge(source.(*Distribution_BucketOptions_Explicit)) 762 } 763 764 func (o *Distribution_BucketOptions_Dynamic) GotenObjectExt() {} 765 766 func (o *Distribution_BucketOptions_Dynamic) MakeFullFieldMask() *Distribution_BucketOptions_Dynamic_FieldMask { 767 return FullDistribution_BucketOptions_Dynamic_FieldMask() 768 } 769 770 func (o *Distribution_BucketOptions_Dynamic) MakeRawFullFieldMask() gotenobject.FieldMask { 771 return FullDistribution_BucketOptions_Dynamic_FieldMask() 772 } 773 774 func (o *Distribution_BucketOptions_Dynamic) MakeDiffFieldMask(other *Distribution_BucketOptions_Dynamic) *Distribution_BucketOptions_Dynamic_FieldMask { 775 if o == nil && other == nil { 776 return &Distribution_BucketOptions_Dynamic_FieldMask{} 777 } 778 if o == nil || other == nil { 779 return FullDistribution_BucketOptions_Dynamic_FieldMask() 780 } 781 782 res := &Distribution_BucketOptions_Dynamic_FieldMask{} 783 if o.GetCompression() != other.GetCompression() { 784 res.Paths = append(res.Paths, &DistributionBucketOptionsDynamic_FieldTerminalPath{selector: DistributionBucketOptionsDynamic_FieldPathSelectorCompression}) 785 } 786 787 if len(o.GetMeans()) == len(other.GetMeans()) { 788 for i, lValue := range o.GetMeans() { 789 rValue := other.GetMeans()[i] 790 if lValue != rValue { 791 res.Paths = append(res.Paths, &DistributionBucketOptionsDynamic_FieldTerminalPath{selector: DistributionBucketOptionsDynamic_FieldPathSelectorMeans}) 792 break 793 } 794 } 795 } else { 796 res.Paths = append(res.Paths, &DistributionBucketOptionsDynamic_FieldTerminalPath{selector: DistributionBucketOptionsDynamic_FieldPathSelectorMeans}) 797 } 798 return res 799 } 800 801 func (o *Distribution_BucketOptions_Dynamic) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 802 return o.MakeDiffFieldMask(other.(*Distribution_BucketOptions_Dynamic)) 803 } 804 805 func (o *Distribution_BucketOptions_Dynamic) Clone() *Distribution_BucketOptions_Dynamic { 806 if o == nil { 807 return nil 808 } 809 result := &Distribution_BucketOptions_Dynamic{} 810 result.Compression = o.Compression 811 result.Means = make([]float64, len(o.Means)) 812 for i, sourceValue := range o.Means { 813 result.Means[i] = sourceValue 814 } 815 return result 816 } 817 818 func (o *Distribution_BucketOptions_Dynamic) CloneRaw() gotenobject.GotenObjectExt { 819 return o.Clone() 820 } 821 822 func (o *Distribution_BucketOptions_Dynamic) Merge(source *Distribution_BucketOptions_Dynamic) { 823 o.Compression = source.GetCompression() 824 for _, sourceValue := range source.GetMeans() { 825 exists := false 826 for _, currentValue := range o.Means { 827 if currentValue == sourceValue { 828 exists = true 829 break 830 } 831 } 832 if !exists { 833 var newDstElement float64 834 newDstElement = sourceValue 835 o.Means = append(o.Means, newDstElement) 836 } 837 } 838 839 } 840 841 func (o *Distribution_BucketOptions_Dynamic) MergeRaw(source gotenobject.GotenObjectExt) { 842 o.Merge(source.(*Distribution_BucketOptions_Dynamic)) 843 } 844 845 func (o *TypedValue) GotenObjectExt() {} 846 847 func (o *TypedValue) MakeFullFieldMask() *TypedValue_FieldMask { 848 return FullTypedValue_FieldMask() 849 } 850 851 func (o *TypedValue) MakeRawFullFieldMask() gotenobject.FieldMask { 852 return FullTypedValue_FieldMask() 853 } 854 855 func (o *TypedValue) MakeDiffFieldMask(other *TypedValue) *TypedValue_FieldMask { 856 if o == nil && other == nil { 857 return &TypedValue_FieldMask{} 858 } 859 if o == nil || other == nil { 860 return FullTypedValue_FieldMask() 861 } 862 863 res := &TypedValue_FieldMask{} 864 { 865 _, leftSelected := o.Value.(*TypedValue_BoolValue) 866 _, rightSelected := other.Value.(*TypedValue_BoolValue) 867 if leftSelected == rightSelected { 868 if o.GetBoolValue() != other.GetBoolValue() { 869 res.Paths = append(res.Paths, &TypedValue_FieldTerminalPath{selector: TypedValue_FieldPathSelectorBoolValue}) 870 } 871 } else { 872 res.Paths = append(res.Paths, &TypedValue_FieldTerminalPath{selector: TypedValue_FieldPathSelectorBoolValue}) 873 } 874 } 875 { 876 _, leftSelected := o.Value.(*TypedValue_Int64Value) 877 _, rightSelected := other.Value.(*TypedValue_Int64Value) 878 if leftSelected == rightSelected { 879 if o.GetInt64Value() != other.GetInt64Value() { 880 res.Paths = append(res.Paths, &TypedValue_FieldTerminalPath{selector: TypedValue_FieldPathSelectorInt64Value}) 881 } 882 } else { 883 res.Paths = append(res.Paths, &TypedValue_FieldTerminalPath{selector: TypedValue_FieldPathSelectorInt64Value}) 884 } 885 } 886 { 887 _, leftSelected := o.Value.(*TypedValue_DoubleValue) 888 _, rightSelected := other.Value.(*TypedValue_DoubleValue) 889 if leftSelected == rightSelected { 890 if o.GetDoubleValue() != other.GetDoubleValue() { 891 res.Paths = append(res.Paths, &TypedValue_FieldTerminalPath{selector: TypedValue_FieldPathSelectorDoubleValue}) 892 } 893 } else { 894 res.Paths = append(res.Paths, &TypedValue_FieldTerminalPath{selector: TypedValue_FieldPathSelectorDoubleValue}) 895 } 896 } 897 { 898 _, leftSelected := o.Value.(*TypedValue_StringValue) 899 _, rightSelected := other.Value.(*TypedValue_StringValue) 900 if leftSelected == rightSelected { 901 if o.GetStringValue() != other.GetStringValue() { 902 res.Paths = append(res.Paths, &TypedValue_FieldTerminalPath{selector: TypedValue_FieldPathSelectorStringValue}) 903 } 904 } else { 905 res.Paths = append(res.Paths, &TypedValue_FieldTerminalPath{selector: TypedValue_FieldPathSelectorStringValue}) 906 } 907 } 908 { 909 _, leftSelected := o.Value.(*TypedValue_DistributionValue) 910 _, rightSelected := other.Value.(*TypedValue_DistributionValue) 911 if leftSelected == rightSelected { 912 subMask := o.GetDistributionValue().MakeDiffFieldMask(other.GetDistributionValue()) 913 if subMask.IsFull() { 914 res.Paths = append(res.Paths, &TypedValue_FieldTerminalPath{selector: TypedValue_FieldPathSelectorDistributionValue}) 915 } else { 916 for _, subpath := range subMask.Paths { 917 res.Paths = append(res.Paths, &TypedValue_FieldSubPath{selector: TypedValue_FieldPathSelectorDistributionValue, subPath: subpath}) 918 } 919 } 920 } else { 921 res.Paths = append(res.Paths, &TypedValue_FieldTerminalPath{selector: TypedValue_FieldPathSelectorDistributionValue}) 922 } 923 } 924 return res 925 } 926 927 func (o *TypedValue) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 928 return o.MakeDiffFieldMask(other.(*TypedValue)) 929 } 930 931 func (o *TypedValue) Clone() *TypedValue { 932 if o == nil { 933 return nil 934 } 935 result := &TypedValue{} 936 if o, ok := o.Value.(*TypedValue_BoolValue); ok { 937 result.Value = (*TypedValue_BoolValue)(nil) 938 if o != nil { 939 result.Value = &TypedValue_BoolValue{} 940 result := result.Value.(*TypedValue_BoolValue) 941 result.BoolValue = o.BoolValue 942 } 943 } 944 if o, ok := o.Value.(*TypedValue_Int64Value); ok { 945 result.Value = (*TypedValue_Int64Value)(nil) 946 if o != nil { 947 result.Value = &TypedValue_Int64Value{} 948 result := result.Value.(*TypedValue_Int64Value) 949 result.Int64Value = o.Int64Value 950 } 951 } 952 if o, ok := o.Value.(*TypedValue_DoubleValue); ok { 953 result.Value = (*TypedValue_DoubleValue)(nil) 954 if o != nil { 955 result.Value = &TypedValue_DoubleValue{} 956 result := result.Value.(*TypedValue_DoubleValue) 957 result.DoubleValue = o.DoubleValue 958 } 959 } 960 if o, ok := o.Value.(*TypedValue_StringValue); ok { 961 result.Value = (*TypedValue_StringValue)(nil) 962 if o != nil { 963 result.Value = &TypedValue_StringValue{} 964 result := result.Value.(*TypedValue_StringValue) 965 result.StringValue = o.StringValue 966 } 967 } 968 if o, ok := o.Value.(*TypedValue_DistributionValue); ok { 969 result.Value = (*TypedValue_DistributionValue)(nil) 970 if o != nil { 971 result.Value = &TypedValue_DistributionValue{} 972 result := result.Value.(*TypedValue_DistributionValue) 973 result.DistributionValue = o.DistributionValue.Clone() 974 } 975 } 976 return result 977 } 978 979 func (o *TypedValue) CloneRaw() gotenobject.GotenObjectExt { 980 return o.Clone() 981 } 982 983 func (o *TypedValue) Merge(source *TypedValue) { 984 if source, ok := source.GetValue().(*TypedValue_BoolValue); ok { 985 if dstOneOf, ok := o.Value.(*TypedValue_BoolValue); !ok || dstOneOf == nil { 986 o.Value = &TypedValue_BoolValue{} 987 } 988 if source != nil { 989 o := o.Value.(*TypedValue_BoolValue) 990 o.BoolValue = source.BoolValue 991 } 992 } 993 if source, ok := source.GetValue().(*TypedValue_Int64Value); ok { 994 if dstOneOf, ok := o.Value.(*TypedValue_Int64Value); !ok || dstOneOf == nil { 995 o.Value = &TypedValue_Int64Value{} 996 } 997 if source != nil { 998 o := o.Value.(*TypedValue_Int64Value) 999 o.Int64Value = source.Int64Value 1000 } 1001 } 1002 if source, ok := source.GetValue().(*TypedValue_DoubleValue); ok { 1003 if dstOneOf, ok := o.Value.(*TypedValue_DoubleValue); !ok || dstOneOf == nil { 1004 o.Value = &TypedValue_DoubleValue{} 1005 } 1006 if source != nil { 1007 o := o.Value.(*TypedValue_DoubleValue) 1008 o.DoubleValue = source.DoubleValue 1009 } 1010 } 1011 if source, ok := source.GetValue().(*TypedValue_StringValue); ok { 1012 if dstOneOf, ok := o.Value.(*TypedValue_StringValue); !ok || dstOneOf == nil { 1013 o.Value = &TypedValue_StringValue{} 1014 } 1015 if source != nil { 1016 o := o.Value.(*TypedValue_StringValue) 1017 o.StringValue = source.StringValue 1018 } 1019 } 1020 if source, ok := source.GetValue().(*TypedValue_DistributionValue); ok { 1021 if dstOneOf, ok := o.Value.(*TypedValue_DistributionValue); !ok || dstOneOf == nil { 1022 o.Value = &TypedValue_DistributionValue{} 1023 } 1024 if source != nil { 1025 o := o.Value.(*TypedValue_DistributionValue) 1026 if source.DistributionValue != nil { 1027 if o.DistributionValue == nil { 1028 o.DistributionValue = new(Distribution) 1029 } 1030 o.DistributionValue.Merge(source.DistributionValue) 1031 } 1032 } 1033 } 1034 } 1035 1036 func (o *TypedValue) MergeRaw(source gotenobject.GotenObjectExt) { 1037 o.Merge(source.(*TypedValue)) 1038 } 1039 1040 func (o *TimeInterval) GotenObjectExt() {} 1041 1042 func (o *TimeInterval) MakeFullFieldMask() *TimeInterval_FieldMask { 1043 return FullTimeInterval_FieldMask() 1044 } 1045 1046 func (o *TimeInterval) MakeRawFullFieldMask() gotenobject.FieldMask { 1047 return FullTimeInterval_FieldMask() 1048 } 1049 1050 func (o *TimeInterval) MakeDiffFieldMask(other *TimeInterval) *TimeInterval_FieldMask { 1051 if o == nil && other == nil { 1052 return &TimeInterval_FieldMask{} 1053 } 1054 if o == nil || other == nil { 1055 return FullTimeInterval_FieldMask() 1056 } 1057 1058 res := &TimeInterval_FieldMask{} 1059 if !proto.Equal(o.GetEndTime(), other.GetEndTime()) { 1060 res.Paths = append(res.Paths, &TimeInterval_FieldTerminalPath{selector: TimeInterval_FieldPathSelectorEndTime}) 1061 } 1062 if !proto.Equal(o.GetStartTime(), other.GetStartTime()) { 1063 res.Paths = append(res.Paths, &TimeInterval_FieldTerminalPath{selector: TimeInterval_FieldPathSelectorStartTime}) 1064 } 1065 return res 1066 } 1067 1068 func (o *TimeInterval) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 1069 return o.MakeDiffFieldMask(other.(*TimeInterval)) 1070 } 1071 1072 func (o *TimeInterval) Clone() *TimeInterval { 1073 if o == nil { 1074 return nil 1075 } 1076 result := &TimeInterval{} 1077 result.EndTime = proto.Clone(o.EndTime).(*timestamppb.Timestamp) 1078 result.StartTime = proto.Clone(o.StartTime).(*timestamppb.Timestamp) 1079 return result 1080 } 1081 1082 func (o *TimeInterval) CloneRaw() gotenobject.GotenObjectExt { 1083 return o.Clone() 1084 } 1085 1086 func (o *TimeInterval) Merge(source *TimeInterval) { 1087 if source.GetEndTime() != nil { 1088 if o.EndTime == nil { 1089 o.EndTime = new(timestamppb.Timestamp) 1090 } 1091 proto.Merge(o.EndTime, source.GetEndTime()) 1092 } 1093 if source.GetStartTime() != nil { 1094 if o.StartTime == nil { 1095 o.StartTime = new(timestamppb.Timestamp) 1096 } 1097 proto.Merge(o.StartTime, source.GetStartTime()) 1098 } 1099 } 1100 1101 func (o *TimeInterval) MergeRaw(source gotenobject.GotenObjectExt) { 1102 o.Merge(source.(*TimeInterval)) 1103 } 1104 1105 func (o *TimeRange) GotenObjectExt() {} 1106 1107 func (o *TimeRange) MakeFullFieldMask() *TimeRange_FieldMask { 1108 return FullTimeRange_FieldMask() 1109 } 1110 1111 func (o *TimeRange) MakeRawFullFieldMask() gotenobject.FieldMask { 1112 return FullTimeRange_FieldMask() 1113 } 1114 1115 func (o *TimeRange) MakeDiffFieldMask(other *TimeRange) *TimeRange_FieldMask { 1116 if o == nil && other == nil { 1117 return &TimeRange_FieldMask{} 1118 } 1119 if o == nil || other == nil { 1120 return FullTimeRange_FieldMask() 1121 } 1122 1123 res := &TimeRange_FieldMask{} 1124 if !proto.Equal(o.GetStartTime(), other.GetStartTime()) { 1125 res.Paths = append(res.Paths, &TimeRange_FieldTerminalPath{selector: TimeRange_FieldPathSelectorStartTime}) 1126 } 1127 if !proto.Equal(o.GetEndTime(), other.GetEndTime()) { 1128 res.Paths = append(res.Paths, &TimeRange_FieldTerminalPath{selector: TimeRange_FieldPathSelectorEndTime}) 1129 } 1130 return res 1131 } 1132 1133 func (o *TimeRange) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 1134 return o.MakeDiffFieldMask(other.(*TimeRange)) 1135 } 1136 1137 func (o *TimeRange) Clone() *TimeRange { 1138 if o == nil { 1139 return nil 1140 } 1141 result := &TimeRange{} 1142 result.StartTime = proto.Clone(o.StartTime).(*timestamppb.Timestamp) 1143 result.EndTime = proto.Clone(o.EndTime).(*timestamppb.Timestamp) 1144 return result 1145 } 1146 1147 func (o *TimeRange) CloneRaw() gotenobject.GotenObjectExt { 1148 return o.Clone() 1149 } 1150 1151 func (o *TimeRange) Merge(source *TimeRange) { 1152 if source.GetStartTime() != nil { 1153 if o.StartTime == nil { 1154 o.StartTime = new(timestamppb.Timestamp) 1155 } 1156 proto.Merge(o.StartTime, source.GetStartTime()) 1157 } 1158 if source.GetEndTime() != nil { 1159 if o.EndTime == nil { 1160 o.EndTime = new(timestamppb.Timestamp) 1161 } 1162 proto.Merge(o.EndTime, source.GetEndTime()) 1163 } 1164 } 1165 1166 func (o *TimeRange) MergeRaw(source gotenobject.GotenObjectExt) { 1167 o.Merge(source.(*TimeRange)) 1168 } 1169 1170 func (o *Aggregation) GotenObjectExt() {} 1171 1172 func (o *Aggregation) MakeFullFieldMask() *Aggregation_FieldMask { 1173 return FullAggregation_FieldMask() 1174 } 1175 1176 func (o *Aggregation) MakeRawFullFieldMask() gotenobject.FieldMask { 1177 return FullAggregation_FieldMask() 1178 } 1179 1180 func (o *Aggregation) MakeDiffFieldMask(other *Aggregation) *Aggregation_FieldMask { 1181 if o == nil && other == nil { 1182 return &Aggregation_FieldMask{} 1183 } 1184 if o == nil || other == nil { 1185 return FullAggregation_FieldMask() 1186 } 1187 1188 res := &Aggregation_FieldMask{} 1189 if !proto.Equal(o.GetAlignmentPeriod(), other.GetAlignmentPeriod()) { 1190 res.Paths = append(res.Paths, &Aggregation_FieldTerminalPath{selector: Aggregation_FieldPathSelectorAlignmentPeriod}) 1191 } 1192 if o.GetPerSeriesAligner() != other.GetPerSeriesAligner() { 1193 res.Paths = append(res.Paths, &Aggregation_FieldTerminalPath{selector: Aggregation_FieldPathSelectorPerSeriesAligner}) 1194 } 1195 if o.GetCrossSeriesReducer() != other.GetCrossSeriesReducer() { 1196 res.Paths = append(res.Paths, &Aggregation_FieldTerminalPath{selector: Aggregation_FieldPathSelectorCrossSeriesReducer}) 1197 } 1198 1199 if len(o.GetGroupByFields()) == len(other.GetGroupByFields()) { 1200 for i, lValue := range o.GetGroupByFields() { 1201 rValue := other.GetGroupByFields()[i] 1202 if lValue != rValue { 1203 res.Paths = append(res.Paths, &Aggregation_FieldTerminalPath{selector: Aggregation_FieldPathSelectorGroupByFields}) 1204 break 1205 } 1206 } 1207 } else { 1208 res.Paths = append(res.Paths, &Aggregation_FieldTerminalPath{selector: Aggregation_FieldPathSelectorGroupByFields}) 1209 } 1210 return res 1211 } 1212 1213 func (o *Aggregation) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 1214 return o.MakeDiffFieldMask(other.(*Aggregation)) 1215 } 1216 1217 func (o *Aggregation) Clone() *Aggregation { 1218 if o == nil { 1219 return nil 1220 } 1221 result := &Aggregation{} 1222 result.AlignmentPeriod = proto.Clone(o.AlignmentPeriod).(*durationpb.Duration) 1223 result.PerSeriesAligner = o.PerSeriesAligner 1224 result.CrossSeriesReducer = o.CrossSeriesReducer 1225 result.GroupByFields = make([]string, len(o.GroupByFields)) 1226 for i, sourceValue := range o.GroupByFields { 1227 result.GroupByFields[i] = sourceValue 1228 } 1229 return result 1230 } 1231 1232 func (o *Aggregation) CloneRaw() gotenobject.GotenObjectExt { 1233 return o.Clone() 1234 } 1235 1236 func (o *Aggregation) Merge(source *Aggregation) { 1237 if source.GetAlignmentPeriod() != nil { 1238 if o.AlignmentPeriod == nil { 1239 o.AlignmentPeriod = new(durationpb.Duration) 1240 } 1241 proto.Merge(o.AlignmentPeriod, source.GetAlignmentPeriod()) 1242 } 1243 o.PerSeriesAligner = source.GetPerSeriesAligner() 1244 o.CrossSeriesReducer = source.GetCrossSeriesReducer() 1245 for _, sourceValue := range source.GetGroupByFields() { 1246 exists := false 1247 for _, currentValue := range o.GroupByFields { 1248 if currentValue == sourceValue { 1249 exists = true 1250 break 1251 } 1252 } 1253 if !exists { 1254 var newDstElement string 1255 newDstElement = sourceValue 1256 o.GroupByFields = append(o.GroupByFields, newDstElement) 1257 } 1258 } 1259 1260 } 1261 1262 func (o *Aggregation) MergeRaw(source gotenobject.GotenObjectExt) { 1263 o.Merge(source.(*Aggregation)) 1264 } 1265 1266 func (o *Pagination) GotenObjectExt() {} 1267 1268 func (o *Pagination) MakeFullFieldMask() *Pagination_FieldMask { 1269 return FullPagination_FieldMask() 1270 } 1271 1272 func (o *Pagination) MakeRawFullFieldMask() gotenobject.FieldMask { 1273 return FullPagination_FieldMask() 1274 } 1275 1276 func (o *Pagination) MakeDiffFieldMask(other *Pagination) *Pagination_FieldMask { 1277 if o == nil && other == nil { 1278 return &Pagination_FieldMask{} 1279 } 1280 if o == nil || other == nil { 1281 return FullPagination_FieldMask() 1282 } 1283 1284 res := &Pagination_FieldMask{} 1285 if o.GetView() != other.GetView() { 1286 res.Paths = append(res.Paths, &Pagination_FieldTerminalPath{selector: Pagination_FieldPathSelectorView}) 1287 } 1288 if o.GetFunction() != other.GetFunction() { 1289 res.Paths = append(res.Paths, &Pagination_FieldTerminalPath{selector: Pagination_FieldPathSelectorFunction}) 1290 } 1291 if !proto.Equal(o.GetAlignmentPeriod(), other.GetAlignmentPeriod()) { 1292 res.Paths = append(res.Paths, &Pagination_FieldTerminalPath{selector: Pagination_FieldPathSelectorAlignmentPeriod}) 1293 } 1294 if o.GetLimit() != other.GetLimit() { 1295 res.Paths = append(res.Paths, &Pagination_FieldTerminalPath{selector: Pagination_FieldPathSelectorLimit}) 1296 } 1297 if o.GetOffset() != other.GetOffset() { 1298 res.Paths = append(res.Paths, &Pagination_FieldTerminalPath{selector: Pagination_FieldPathSelectorOffset}) 1299 } 1300 return res 1301 } 1302 1303 func (o *Pagination) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 1304 return o.MakeDiffFieldMask(other.(*Pagination)) 1305 } 1306 1307 func (o *Pagination) Clone() *Pagination { 1308 if o == nil { 1309 return nil 1310 } 1311 result := &Pagination{} 1312 result.View = o.View 1313 result.Function = o.Function 1314 result.AlignmentPeriod = proto.Clone(o.AlignmentPeriod).(*durationpb.Duration) 1315 result.Limit = o.Limit 1316 result.Offset = o.Offset 1317 return result 1318 } 1319 1320 func (o *Pagination) CloneRaw() gotenobject.GotenObjectExt { 1321 return o.Clone() 1322 } 1323 1324 func (o *Pagination) Merge(source *Pagination) { 1325 o.View = source.GetView() 1326 o.Function = source.GetFunction() 1327 if source.GetAlignmentPeriod() != nil { 1328 if o.AlignmentPeriod == nil { 1329 o.AlignmentPeriod = new(durationpb.Duration) 1330 } 1331 proto.Merge(o.AlignmentPeriod, source.GetAlignmentPeriod()) 1332 } 1333 o.Limit = source.GetLimit() 1334 o.Offset = source.GetOffset() 1335 } 1336 1337 func (o *Pagination) MergeRaw(source gotenobject.GotenObjectExt) { 1338 o.Merge(source.(*Pagination)) 1339 } 1340 1341 func (o *Metric) GotenObjectExt() {} 1342 1343 func (o *Metric) MakeFullFieldMask() *Metric_FieldMask { 1344 return FullMetric_FieldMask() 1345 } 1346 1347 func (o *Metric) MakeRawFullFieldMask() gotenobject.FieldMask { 1348 return FullMetric_FieldMask() 1349 } 1350 1351 func (o *Metric) MakeDiffFieldMask(other *Metric) *Metric_FieldMask { 1352 if o == nil && other == nil { 1353 return &Metric_FieldMask{} 1354 } 1355 if o == nil || other == nil { 1356 return FullMetric_FieldMask() 1357 } 1358 1359 res := &Metric_FieldMask{} 1360 if o.GetType() != other.GetType() { 1361 res.Paths = append(res.Paths, &Metric_FieldTerminalPath{selector: Metric_FieldPathSelectorType}) 1362 } 1363 1364 if len(o.GetLabels()) == len(other.GetLabels()) { 1365 for i, lValue := range o.GetLabels() { 1366 rValue := other.GetLabels()[i] 1367 if lValue != rValue { 1368 res.Paths = append(res.Paths, &Metric_FieldTerminalPath{selector: Metric_FieldPathSelectorLabels}) 1369 break 1370 } 1371 } 1372 } else { 1373 res.Paths = append(res.Paths, &Metric_FieldTerminalPath{selector: Metric_FieldPathSelectorLabels}) 1374 } 1375 1376 if len(o.GetReducedLabels()) == len(other.GetReducedLabels()) { 1377 for i, lValue := range o.GetReducedLabels() { 1378 rValue := other.GetReducedLabels()[i] 1379 if lValue != rValue { 1380 res.Paths = append(res.Paths, &Metric_FieldTerminalPath{selector: Metric_FieldPathSelectorReducedLabels}) 1381 break 1382 } 1383 } 1384 } else { 1385 res.Paths = append(res.Paths, &Metric_FieldTerminalPath{selector: Metric_FieldPathSelectorReducedLabels}) 1386 } 1387 return res 1388 } 1389 1390 func (o *Metric) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 1391 return o.MakeDiffFieldMask(other.(*Metric)) 1392 } 1393 1394 func (o *Metric) Clone() *Metric { 1395 if o == nil { 1396 return nil 1397 } 1398 result := &Metric{} 1399 result.Type = o.Type 1400 result.Labels = map[string]string{} 1401 for key, sourceValue := range o.Labels { 1402 result.Labels[key] = sourceValue 1403 } 1404 result.ReducedLabels = make([]string, len(o.ReducedLabels)) 1405 for i, sourceValue := range o.ReducedLabels { 1406 result.ReducedLabels[i] = sourceValue 1407 } 1408 return result 1409 } 1410 1411 func (o *Metric) CloneRaw() gotenobject.GotenObjectExt { 1412 return o.Clone() 1413 } 1414 1415 func (o *Metric) Merge(source *Metric) { 1416 o.Type = source.GetType() 1417 if source.GetLabels() != nil { 1418 if o.Labels == nil { 1419 o.Labels = make(map[string]string, len(source.GetLabels())) 1420 } 1421 for key, sourceValue := range source.GetLabels() { 1422 o.Labels[key] = sourceValue 1423 } 1424 } 1425 for _, sourceValue := range source.GetReducedLabels() { 1426 exists := false 1427 for _, currentValue := range o.ReducedLabels { 1428 if currentValue == sourceValue { 1429 exists = true 1430 break 1431 } 1432 } 1433 if !exists { 1434 var newDstElement string 1435 newDstElement = sourceValue 1436 o.ReducedLabels = append(o.ReducedLabels, newDstElement) 1437 } 1438 } 1439 1440 } 1441 1442 func (o *Metric) MergeRaw(source gotenobject.GotenObjectExt) { 1443 o.Merge(source.(*Metric)) 1444 } 1445 1446 func (o *MonitoredResource) GotenObjectExt() {} 1447 1448 func (o *MonitoredResource) MakeFullFieldMask() *MonitoredResource_FieldMask { 1449 return FullMonitoredResource_FieldMask() 1450 } 1451 1452 func (o *MonitoredResource) MakeRawFullFieldMask() gotenobject.FieldMask { 1453 return FullMonitoredResource_FieldMask() 1454 } 1455 1456 func (o *MonitoredResource) MakeDiffFieldMask(other *MonitoredResource) *MonitoredResource_FieldMask { 1457 if o == nil && other == nil { 1458 return &MonitoredResource_FieldMask{} 1459 } 1460 if o == nil || other == nil { 1461 return FullMonitoredResource_FieldMask() 1462 } 1463 1464 res := &MonitoredResource_FieldMask{} 1465 if o.GetType() != other.GetType() { 1466 res.Paths = append(res.Paths, &MonitoredResource_FieldTerminalPath{selector: MonitoredResource_FieldPathSelectorType}) 1467 } 1468 1469 if len(o.GetLabels()) == len(other.GetLabels()) { 1470 for i, lValue := range o.GetLabels() { 1471 rValue := other.GetLabels()[i] 1472 if lValue != rValue { 1473 res.Paths = append(res.Paths, &MonitoredResource_FieldTerminalPath{selector: MonitoredResource_FieldPathSelectorLabels}) 1474 break 1475 } 1476 } 1477 } else { 1478 res.Paths = append(res.Paths, &MonitoredResource_FieldTerminalPath{selector: MonitoredResource_FieldPathSelectorLabels}) 1479 } 1480 1481 if len(o.GetReducedLabels()) == len(other.GetReducedLabels()) { 1482 for i, lValue := range o.GetReducedLabels() { 1483 rValue := other.GetReducedLabels()[i] 1484 if lValue != rValue { 1485 res.Paths = append(res.Paths, &MonitoredResource_FieldTerminalPath{selector: MonitoredResource_FieldPathSelectorReducedLabels}) 1486 break 1487 } 1488 } 1489 } else { 1490 res.Paths = append(res.Paths, &MonitoredResource_FieldTerminalPath{selector: MonitoredResource_FieldPathSelectorReducedLabels}) 1491 } 1492 return res 1493 } 1494 1495 func (o *MonitoredResource) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 1496 return o.MakeDiffFieldMask(other.(*MonitoredResource)) 1497 } 1498 1499 func (o *MonitoredResource) Clone() *MonitoredResource { 1500 if o == nil { 1501 return nil 1502 } 1503 result := &MonitoredResource{} 1504 result.Type = o.Type 1505 result.Labels = map[string]string{} 1506 for key, sourceValue := range o.Labels { 1507 result.Labels[key] = sourceValue 1508 } 1509 result.ReducedLabels = make([]string, len(o.ReducedLabels)) 1510 for i, sourceValue := range o.ReducedLabels { 1511 result.ReducedLabels[i] = sourceValue 1512 } 1513 return result 1514 } 1515 1516 func (o *MonitoredResource) CloneRaw() gotenobject.GotenObjectExt { 1517 return o.Clone() 1518 } 1519 1520 func (o *MonitoredResource) Merge(source *MonitoredResource) { 1521 o.Type = source.GetType() 1522 if source.GetLabels() != nil { 1523 if o.Labels == nil { 1524 o.Labels = make(map[string]string, len(source.GetLabels())) 1525 } 1526 for key, sourceValue := range source.GetLabels() { 1527 o.Labels[key] = sourceValue 1528 } 1529 } 1530 for _, sourceValue := range source.GetReducedLabels() { 1531 exists := false 1532 for _, currentValue := range o.ReducedLabels { 1533 if currentValue == sourceValue { 1534 exists = true 1535 break 1536 } 1537 } 1538 if !exists { 1539 var newDstElement string 1540 newDstElement = sourceValue 1541 o.ReducedLabels = append(o.ReducedLabels, newDstElement) 1542 } 1543 } 1544 1545 } 1546 1547 func (o *MonitoredResource) MergeRaw(source gotenobject.GotenObjectExt) { 1548 o.Merge(source.(*MonitoredResource)) 1549 } 1550 1551 func (o *Strings) GotenObjectExt() {} 1552 1553 func (o *Strings) MakeFullFieldMask() *Strings_FieldMask { 1554 return FullStrings_FieldMask() 1555 } 1556 1557 func (o *Strings) MakeRawFullFieldMask() gotenobject.FieldMask { 1558 return FullStrings_FieldMask() 1559 } 1560 1561 func (o *Strings) MakeDiffFieldMask(other *Strings) *Strings_FieldMask { 1562 if o == nil && other == nil { 1563 return &Strings_FieldMask{} 1564 } 1565 if o == nil || other == nil { 1566 return FullStrings_FieldMask() 1567 } 1568 1569 res := &Strings_FieldMask{} 1570 1571 if len(o.GetValues()) == len(other.GetValues()) { 1572 for i, lValue := range o.GetValues() { 1573 rValue := other.GetValues()[i] 1574 if lValue != rValue { 1575 res.Paths = append(res.Paths, &Strings_FieldTerminalPath{selector: Strings_FieldPathSelectorValues}) 1576 break 1577 } 1578 } 1579 } else { 1580 res.Paths = append(res.Paths, &Strings_FieldTerminalPath{selector: Strings_FieldPathSelectorValues}) 1581 } 1582 return res 1583 } 1584 1585 func (o *Strings) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 1586 return o.MakeDiffFieldMask(other.(*Strings)) 1587 } 1588 1589 func (o *Strings) Clone() *Strings { 1590 if o == nil { 1591 return nil 1592 } 1593 result := &Strings{} 1594 result.Values = make([]string, len(o.Values)) 1595 for i, sourceValue := range o.Values { 1596 result.Values[i] = sourceValue 1597 } 1598 return result 1599 } 1600 1601 func (o *Strings) CloneRaw() gotenobject.GotenObjectExt { 1602 return o.Clone() 1603 } 1604 1605 func (o *Strings) Merge(source *Strings) { 1606 for _, sourceValue := range source.GetValues() { 1607 exists := false 1608 for _, currentValue := range o.Values { 1609 if currentValue == sourceValue { 1610 exists = true 1611 break 1612 } 1613 } 1614 if !exists { 1615 var newDstElement string 1616 newDstElement = sourceValue 1617 o.Values = append(o.Values, newDstElement) 1618 } 1619 } 1620 1621 } 1622 1623 func (o *Strings) MergeRaw(source gotenobject.GotenObjectExt) { 1624 o.Merge(source.(*Strings)) 1625 } 1626 1627 func (o *MonitoredResourceSelector) GotenObjectExt() {} 1628 1629 func (o *MonitoredResourceSelector) MakeFullFieldMask() *MonitoredResourceSelector_FieldMask { 1630 return FullMonitoredResourceSelector_FieldMask() 1631 } 1632 1633 func (o *MonitoredResourceSelector) MakeRawFullFieldMask() gotenobject.FieldMask { 1634 return FullMonitoredResourceSelector_FieldMask() 1635 } 1636 1637 func (o *MonitoredResourceSelector) MakeDiffFieldMask(other *MonitoredResourceSelector) *MonitoredResourceSelector_FieldMask { 1638 if o == nil && other == nil { 1639 return &MonitoredResourceSelector_FieldMask{} 1640 } 1641 if o == nil || other == nil { 1642 return FullMonitoredResourceSelector_FieldMask() 1643 } 1644 1645 res := &MonitoredResourceSelector_FieldMask{} 1646 1647 if len(o.GetTypes()) == len(other.GetTypes()) { 1648 for i, lValue := range o.GetTypes() { 1649 rValue := other.GetTypes()[i] 1650 if lValue != rValue { 1651 res.Paths = append(res.Paths, &MonitoredResourceSelector_FieldTerminalPath{selector: MonitoredResourceSelector_FieldPathSelectorTypes}) 1652 break 1653 } 1654 } 1655 } else { 1656 res.Paths = append(res.Paths, &MonitoredResourceSelector_FieldTerminalPath{selector: MonitoredResourceSelector_FieldPathSelectorTypes}) 1657 } 1658 1659 if len(o.GetLabels()) == len(other.GetLabels()) { 1660 for i, lValue := range o.GetLabels() { 1661 rValue := other.GetLabels()[i] 1662 if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 { 1663 res.Paths = append(res.Paths, &MonitoredResourceSelector_FieldTerminalPath{selector: MonitoredResourceSelector_FieldPathSelectorLabels}) 1664 break 1665 } 1666 } 1667 } else { 1668 res.Paths = append(res.Paths, &MonitoredResourceSelector_FieldTerminalPath{selector: MonitoredResourceSelector_FieldPathSelectorLabels}) 1669 } 1670 return res 1671 } 1672 1673 func (o *MonitoredResourceSelector) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 1674 return o.MakeDiffFieldMask(other.(*MonitoredResourceSelector)) 1675 } 1676 1677 func (o *MonitoredResourceSelector) Clone() *MonitoredResourceSelector { 1678 if o == nil { 1679 return nil 1680 } 1681 result := &MonitoredResourceSelector{} 1682 result.Types = make([]string, len(o.Types)) 1683 for i, sourceValue := range o.Types { 1684 result.Types[i] = sourceValue 1685 } 1686 result.Labels = map[string]*Strings{} 1687 for key, sourceValue := range o.Labels { 1688 result.Labels[key] = sourceValue.Clone() 1689 } 1690 return result 1691 } 1692 1693 func (o *MonitoredResourceSelector) CloneRaw() gotenobject.GotenObjectExt { 1694 return o.Clone() 1695 } 1696 1697 func (o *MonitoredResourceSelector) Merge(source *MonitoredResourceSelector) { 1698 for _, sourceValue := range source.GetTypes() { 1699 exists := false 1700 for _, currentValue := range o.Types { 1701 if currentValue == sourceValue { 1702 exists = true 1703 break 1704 } 1705 } 1706 if !exists { 1707 var newDstElement string 1708 newDstElement = sourceValue 1709 o.Types = append(o.Types, newDstElement) 1710 } 1711 } 1712 1713 if source.GetLabels() != nil { 1714 if o.Labels == nil { 1715 o.Labels = make(map[string]*Strings, len(source.GetLabels())) 1716 } 1717 for key, sourceValue := range source.GetLabels() { 1718 if sourceValue != nil { 1719 if o.Labels[key] == nil { 1720 o.Labels[key] = new(Strings) 1721 } 1722 o.Labels[key].Merge(sourceValue) 1723 } 1724 } 1725 } 1726 } 1727 1728 func (o *MonitoredResourceSelector) MergeRaw(source gotenobject.GotenObjectExt) { 1729 o.Merge(source.(*MonitoredResourceSelector)) 1730 } 1731 1732 func (o *MetricSelector) GotenObjectExt() {} 1733 1734 func (o *MetricSelector) MakeFullFieldMask() *MetricSelector_FieldMask { 1735 return FullMetricSelector_FieldMask() 1736 } 1737 1738 func (o *MetricSelector) MakeRawFullFieldMask() gotenobject.FieldMask { 1739 return FullMetricSelector_FieldMask() 1740 } 1741 1742 func (o *MetricSelector) MakeDiffFieldMask(other *MetricSelector) *MetricSelector_FieldMask { 1743 if o == nil && other == nil { 1744 return &MetricSelector_FieldMask{} 1745 } 1746 if o == nil || other == nil { 1747 return FullMetricSelector_FieldMask() 1748 } 1749 1750 res := &MetricSelector_FieldMask{} 1751 1752 if len(o.GetTypes()) == len(other.GetTypes()) { 1753 for i, lValue := range o.GetTypes() { 1754 rValue := other.GetTypes()[i] 1755 if lValue != rValue { 1756 res.Paths = append(res.Paths, &MetricSelector_FieldTerminalPath{selector: MetricSelector_FieldPathSelectorTypes}) 1757 break 1758 } 1759 } 1760 } else { 1761 res.Paths = append(res.Paths, &MetricSelector_FieldTerminalPath{selector: MetricSelector_FieldPathSelectorTypes}) 1762 } 1763 1764 if len(o.GetLabels()) == len(other.GetLabels()) { 1765 for i, lValue := range o.GetLabels() { 1766 rValue := other.GetLabels()[i] 1767 if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 { 1768 res.Paths = append(res.Paths, &MetricSelector_FieldTerminalPath{selector: MetricSelector_FieldPathSelectorLabels}) 1769 break 1770 } 1771 } 1772 } else { 1773 res.Paths = append(res.Paths, &MetricSelector_FieldTerminalPath{selector: MetricSelector_FieldPathSelectorLabels}) 1774 } 1775 return res 1776 } 1777 1778 func (o *MetricSelector) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 1779 return o.MakeDiffFieldMask(other.(*MetricSelector)) 1780 } 1781 1782 func (o *MetricSelector) Clone() *MetricSelector { 1783 if o == nil { 1784 return nil 1785 } 1786 result := &MetricSelector{} 1787 result.Types = make([]string, len(o.Types)) 1788 for i, sourceValue := range o.Types { 1789 result.Types[i] = sourceValue 1790 } 1791 result.Labels = map[string]*Strings{} 1792 for key, sourceValue := range o.Labels { 1793 result.Labels[key] = sourceValue.Clone() 1794 } 1795 return result 1796 } 1797 1798 func (o *MetricSelector) CloneRaw() gotenobject.GotenObjectExt { 1799 return o.Clone() 1800 } 1801 1802 func (o *MetricSelector) Merge(source *MetricSelector) { 1803 for _, sourceValue := range source.GetTypes() { 1804 exists := false 1805 for _, currentValue := range o.Types { 1806 if currentValue == sourceValue { 1807 exists = true 1808 break 1809 } 1810 } 1811 if !exists { 1812 var newDstElement string 1813 newDstElement = sourceValue 1814 o.Types = append(o.Types, newDstElement) 1815 } 1816 } 1817 1818 if source.GetLabels() != nil { 1819 if o.Labels == nil { 1820 o.Labels = make(map[string]*Strings, len(source.GetLabels())) 1821 } 1822 for key, sourceValue := range source.GetLabels() { 1823 if sourceValue != nil { 1824 if o.Labels[key] == nil { 1825 o.Labels[key] = new(Strings) 1826 } 1827 o.Labels[key].Merge(sourceValue) 1828 } 1829 } 1830 } 1831 } 1832 1833 func (o *MetricSelector) MergeRaw(source gotenobject.GotenObjectExt) { 1834 o.Merge(source.(*MetricSelector)) 1835 } 1836 1837 func (o *TimeSeriesSelector) GotenObjectExt() {} 1838 1839 func (o *TimeSeriesSelector) MakeFullFieldMask() *TimeSeriesSelector_FieldMask { 1840 return FullTimeSeriesSelector_FieldMask() 1841 } 1842 1843 func (o *TimeSeriesSelector) MakeRawFullFieldMask() gotenobject.FieldMask { 1844 return FullTimeSeriesSelector_FieldMask() 1845 } 1846 1847 func (o *TimeSeriesSelector) MakeDiffFieldMask(other *TimeSeriesSelector) *TimeSeriesSelector_FieldMask { 1848 if o == nil && other == nil { 1849 return &TimeSeriesSelector_FieldMask{} 1850 } 1851 if o == nil || other == nil { 1852 return FullTimeSeriesSelector_FieldMask() 1853 } 1854 1855 res := &TimeSeriesSelector_FieldMask{} 1856 { 1857 subMask := o.GetMetric().MakeDiffFieldMask(other.GetMetric()) 1858 if subMask.IsFull() { 1859 res.Paths = append(res.Paths, &TimeSeriesSelector_FieldTerminalPath{selector: TimeSeriesSelector_FieldPathSelectorMetric}) 1860 } else { 1861 for _, subpath := range subMask.Paths { 1862 res.Paths = append(res.Paths, &TimeSeriesSelector_FieldSubPath{selector: TimeSeriesSelector_FieldPathSelectorMetric, subPath: subpath}) 1863 } 1864 } 1865 } 1866 { 1867 subMask := o.GetResource().MakeDiffFieldMask(other.GetResource()) 1868 if subMask.IsFull() { 1869 res.Paths = append(res.Paths, &TimeSeriesSelector_FieldTerminalPath{selector: TimeSeriesSelector_FieldPathSelectorResource}) 1870 } else { 1871 for _, subpath := range subMask.Paths { 1872 res.Paths = append(res.Paths, &TimeSeriesSelector_FieldSubPath{selector: TimeSeriesSelector_FieldPathSelectorResource, subPath: subpath}) 1873 } 1874 } 1875 } 1876 return res 1877 } 1878 1879 func (o *TimeSeriesSelector) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 1880 return o.MakeDiffFieldMask(other.(*TimeSeriesSelector)) 1881 } 1882 1883 func (o *TimeSeriesSelector) Clone() *TimeSeriesSelector { 1884 if o == nil { 1885 return nil 1886 } 1887 result := &TimeSeriesSelector{} 1888 result.Metric = o.Metric.Clone() 1889 result.Resource = o.Resource.Clone() 1890 return result 1891 } 1892 1893 func (o *TimeSeriesSelector) CloneRaw() gotenobject.GotenObjectExt { 1894 return o.Clone() 1895 } 1896 1897 func (o *TimeSeriesSelector) Merge(source *TimeSeriesSelector) { 1898 if source.GetMetric() != nil { 1899 if o.Metric == nil { 1900 o.Metric = new(MetricSelector) 1901 } 1902 o.Metric.Merge(source.GetMetric()) 1903 } 1904 if source.GetResource() != nil { 1905 if o.Resource == nil { 1906 o.Resource = new(MonitoredResourceSelector) 1907 } 1908 o.Resource.Merge(source.GetResource()) 1909 } 1910 } 1911 1912 func (o *TimeSeriesSelector) MergeRaw(source gotenobject.GotenObjectExt) { 1913 o.Merge(source.(*TimeSeriesSelector)) 1914 }