github.com/cloudwan/edgelq-sdk@v1.15.4/monitoring/resources/v3/notification_channel/notification_channel.pb.object_ext.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/monitoring/proto/v3/notification_channel.proto 3 // DO NOT EDIT!!! 4 5 package notification_channel 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 project "github.com/cloudwan/edgelq-sdk/monitoring/resources/v3/project" 20 meta "github.com/cloudwan/goten-sdk/types/meta" 21 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 22 ) 23 24 // ensure the imports are used 25 var ( 26 _ = new(fmt.Stringer) 27 _ = new(sort.Interface) 28 29 _ = new(proto.Message) 30 _ = googlefieldmaskpb.FieldMask{} 31 32 _ = new(gotenobject.FieldPath) 33 ) 34 35 // make sure we're using proto imports 36 var ( 37 _ = &project.Project{} 38 _ = ×tamppb.Timestamp{} 39 _ = &meta.Meta{} 40 ) 41 42 func (o *NotificationChannel) GotenObjectExt() {} 43 44 func (o *NotificationChannel) MakeFullFieldMask() *NotificationChannel_FieldMask { 45 return FullNotificationChannel_FieldMask() 46 } 47 48 func (o *NotificationChannel) MakeRawFullFieldMask() gotenobject.FieldMask { 49 return FullNotificationChannel_FieldMask() 50 } 51 52 func (o *NotificationChannel) MakeDiffFieldMask(other *NotificationChannel) *NotificationChannel_FieldMask { 53 if o == nil && other == nil { 54 return &NotificationChannel_FieldMask{} 55 } 56 if o == nil || other == nil { 57 return FullNotificationChannel_FieldMask() 58 } 59 60 res := &NotificationChannel_FieldMask{} 61 if o.GetName().String() != other.GetName().String() { 62 res.Paths = append(res.Paths, &NotificationChannel_FieldTerminalPath{selector: NotificationChannel_FieldPathSelectorName}) 63 } 64 { 65 subMask := o.GetMetadata().MakeDiffFieldMask(other.GetMetadata()) 66 if subMask.IsFull() { 67 res.Paths = append(res.Paths, &NotificationChannel_FieldTerminalPath{selector: NotificationChannel_FieldPathSelectorMetadata}) 68 } else { 69 for _, subpath := range subMask.Paths { 70 res.Paths = append(res.Paths, &NotificationChannel_FieldSubPath{selector: NotificationChannel_FieldPathSelectorMetadata, subPath: subpath}) 71 } 72 } 73 } 74 if o.GetDisplayName() != other.GetDisplayName() { 75 res.Paths = append(res.Paths, &NotificationChannel_FieldTerminalPath{selector: NotificationChannel_FieldPathSelectorDisplayName}) 76 } 77 { 78 subMask := o.GetSpec().MakeDiffFieldMask(other.GetSpec()) 79 if subMask.IsFull() { 80 res.Paths = append(res.Paths, &NotificationChannel_FieldTerminalPath{selector: NotificationChannel_FieldPathSelectorSpec}) 81 } else { 82 for _, subpath := range subMask.Paths { 83 res.Paths = append(res.Paths, &NotificationChannel_FieldSubPath{selector: NotificationChannel_FieldPathSelectorSpec, subPath: subpath}) 84 } 85 } 86 } 87 { 88 subMask := o.GetState().MakeDiffFieldMask(other.GetState()) 89 if subMask.IsFull() { 90 res.Paths = append(res.Paths, &NotificationChannel_FieldTerminalPath{selector: NotificationChannel_FieldPathSelectorState}) 91 } else { 92 for _, subpath := range subMask.Paths { 93 res.Paths = append(res.Paths, &NotificationChannel_FieldSubPath{selector: NotificationChannel_FieldPathSelectorState, subPath: subpath}) 94 } 95 } 96 } 97 if o.GetDescription() != other.GetDescription() { 98 res.Paths = append(res.Paths, &NotificationChannel_FieldTerminalPath{selector: NotificationChannel_FieldPathSelectorDescription}) 99 } 100 return res 101 } 102 103 func (o *NotificationChannel) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 104 return o.MakeDiffFieldMask(other.(*NotificationChannel)) 105 } 106 107 func (o *NotificationChannel) Clone() *NotificationChannel { 108 if o == nil { 109 return nil 110 } 111 result := &NotificationChannel{} 112 if o.Name == nil { 113 result.Name = nil 114 } else if data, err := o.Name.ProtoString(); err != nil { 115 panic(err) 116 } else { 117 result.Name = &Name{} 118 if err := result.Name.ParseProtoString(data); err != nil { 119 panic(err) 120 } 121 } 122 result.Metadata = o.Metadata.Clone() 123 result.DisplayName = o.DisplayName 124 result.Spec = o.Spec.Clone() 125 result.State = o.State.Clone() 126 result.Description = o.Description 127 return result 128 } 129 130 func (o *NotificationChannel) CloneRaw() gotenobject.GotenObjectExt { 131 return o.Clone() 132 } 133 134 func (o *NotificationChannel) Merge(source *NotificationChannel) { 135 if source.GetName() != nil { 136 if data, err := source.GetName().ProtoString(); err != nil { 137 panic(err) 138 } else { 139 o.Name = &Name{} 140 if err := o.Name.ParseProtoString(data); err != nil { 141 panic(err) 142 } 143 } 144 } else { 145 o.Name = nil 146 } 147 if source.GetMetadata() != nil { 148 if o.Metadata == nil { 149 o.Metadata = new(meta.Meta) 150 } 151 o.Metadata.Merge(source.GetMetadata()) 152 } 153 o.DisplayName = source.GetDisplayName() 154 if source.GetSpec() != nil { 155 if o.Spec == nil { 156 o.Spec = new(NotificationChannel_Spec) 157 } 158 o.Spec.Merge(source.GetSpec()) 159 } 160 if source.GetState() != nil { 161 if o.State == nil { 162 o.State = new(NotificationChannel_State) 163 } 164 o.State.Merge(source.GetState()) 165 } 166 o.Description = source.GetDescription() 167 } 168 169 func (o *NotificationChannel) MergeRaw(source gotenobject.GotenObjectExt) { 170 o.Merge(source.(*NotificationChannel)) 171 } 172 173 func (o *NotificationChannel_Spec) GotenObjectExt() {} 174 175 func (o *NotificationChannel_Spec) MakeFullFieldMask() *NotificationChannel_Spec_FieldMask { 176 return FullNotificationChannel_Spec_FieldMask() 177 } 178 179 func (o *NotificationChannel_Spec) MakeRawFullFieldMask() gotenobject.FieldMask { 180 return FullNotificationChannel_Spec_FieldMask() 181 } 182 183 func (o *NotificationChannel_Spec) MakeDiffFieldMask(other *NotificationChannel_Spec) *NotificationChannel_Spec_FieldMask { 184 if o == nil && other == nil { 185 return &NotificationChannel_Spec_FieldMask{} 186 } 187 if o == nil || other == nil { 188 return FullNotificationChannel_Spec_FieldMask() 189 } 190 191 res := &NotificationChannel_Spec_FieldMask{} 192 if o.GetEnabled() != other.GetEnabled() { 193 res.Paths = append(res.Paths, &NotificationChannelSpec_FieldTerminalPath{selector: NotificationChannelSpec_FieldPathSelectorEnabled}) 194 } 195 if o.GetType() != other.GetType() { 196 res.Paths = append(res.Paths, &NotificationChannelSpec_FieldTerminalPath{selector: NotificationChannelSpec_FieldPathSelectorType}) 197 } 198 { 199 subMask := o.GetEmail().MakeDiffFieldMask(other.GetEmail()) 200 if subMask.IsFull() { 201 res.Paths = append(res.Paths, &NotificationChannelSpec_FieldTerminalPath{selector: NotificationChannelSpec_FieldPathSelectorEmail}) 202 } else { 203 for _, subpath := range subMask.Paths { 204 res.Paths = append(res.Paths, &NotificationChannelSpec_FieldSubPath{selector: NotificationChannelSpec_FieldPathSelectorEmail, subPath: subpath}) 205 } 206 } 207 } 208 { 209 subMask := o.GetSlack().MakeDiffFieldMask(other.GetSlack()) 210 if subMask.IsFull() { 211 res.Paths = append(res.Paths, &NotificationChannelSpec_FieldTerminalPath{selector: NotificationChannelSpec_FieldPathSelectorSlack}) 212 } else { 213 for _, subpath := range subMask.Paths { 214 res.Paths = append(res.Paths, &NotificationChannelSpec_FieldSubPath{selector: NotificationChannelSpec_FieldPathSelectorSlack, subPath: subpath}) 215 } 216 } 217 } 218 { 219 subMask := o.GetWebhook().MakeDiffFieldMask(other.GetWebhook()) 220 if subMask.IsFull() { 221 res.Paths = append(res.Paths, &NotificationChannelSpec_FieldTerminalPath{selector: NotificationChannelSpec_FieldPathSelectorWebhook}) 222 } else { 223 for _, subpath := range subMask.Paths { 224 res.Paths = append(res.Paths, &NotificationChannelSpec_FieldSubPath{selector: NotificationChannelSpec_FieldPathSelectorWebhook, subPath: subpath}) 225 } 226 } 227 } 228 if o.GetNotificationLanguageCode() != other.GetNotificationLanguageCode() { 229 res.Paths = append(res.Paths, &NotificationChannelSpec_FieldTerminalPath{selector: NotificationChannelSpec_FieldPathSelectorNotificationLanguageCode}) 230 } 231 return res 232 } 233 234 func (o *NotificationChannel_Spec) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 235 return o.MakeDiffFieldMask(other.(*NotificationChannel_Spec)) 236 } 237 238 func (o *NotificationChannel_Spec) Clone() *NotificationChannel_Spec { 239 if o == nil { 240 return nil 241 } 242 result := &NotificationChannel_Spec{} 243 result.Enabled = o.Enabled 244 result.Type = o.Type 245 result.Email = o.Email.Clone() 246 result.Slack = o.Slack.Clone() 247 result.Webhook = o.Webhook.Clone() 248 result.NotificationLanguageCode = o.NotificationLanguageCode 249 return result 250 } 251 252 func (o *NotificationChannel_Spec) CloneRaw() gotenobject.GotenObjectExt { 253 return o.Clone() 254 } 255 256 func (o *NotificationChannel_Spec) Merge(source *NotificationChannel_Spec) { 257 o.Enabled = source.GetEnabled() 258 o.Type = source.GetType() 259 if source.GetEmail() != nil { 260 if o.Email == nil { 261 o.Email = new(NotificationChannel_Spec_Email) 262 } 263 o.Email.Merge(source.GetEmail()) 264 } 265 if source.GetSlack() != nil { 266 if o.Slack == nil { 267 o.Slack = new(NotificationChannel_Spec_Slack) 268 } 269 o.Slack.Merge(source.GetSlack()) 270 } 271 if source.GetWebhook() != nil { 272 if o.Webhook == nil { 273 o.Webhook = new(NotificationChannel_Spec_Webhook) 274 } 275 o.Webhook.Merge(source.GetWebhook()) 276 } 277 o.NotificationLanguageCode = source.GetNotificationLanguageCode() 278 } 279 280 func (o *NotificationChannel_Spec) MergeRaw(source gotenobject.GotenObjectExt) { 281 o.Merge(source.(*NotificationChannel_Spec)) 282 } 283 284 func (o *NotificationChannel_State) GotenObjectExt() {} 285 286 func (o *NotificationChannel_State) MakeFullFieldMask() *NotificationChannel_State_FieldMask { 287 return FullNotificationChannel_State_FieldMask() 288 } 289 290 func (o *NotificationChannel_State) MakeRawFullFieldMask() gotenobject.FieldMask { 291 return FullNotificationChannel_State_FieldMask() 292 } 293 294 func (o *NotificationChannel_State) MakeDiffFieldMask(other *NotificationChannel_State) *NotificationChannel_State_FieldMask { 295 if o == nil && other == nil { 296 return &NotificationChannel_State_FieldMask{} 297 } 298 if o == nil || other == nil { 299 return FullNotificationChannel_State_FieldMask() 300 } 301 302 res := &NotificationChannel_State_FieldMask{} 303 if o.GetStatus() != other.GetStatus() { 304 res.Paths = append(res.Paths, &NotificationChannelState_FieldTerminalPath{selector: NotificationChannelState_FieldPathSelectorStatus}) 305 } 306 { 307 subMask := o.GetError().MakeDiffFieldMask(other.GetError()) 308 if subMask.IsFull() { 309 res.Paths = append(res.Paths, &NotificationChannelState_FieldTerminalPath{selector: NotificationChannelState_FieldPathSelectorError}) 310 } else { 311 for _, subpath := range subMask.Paths { 312 res.Paths = append(res.Paths, &NotificationChannelState_FieldSubPath{selector: NotificationChannelState_FieldPathSelectorError, subPath: subpath}) 313 } 314 } 315 } 316 return res 317 } 318 319 func (o *NotificationChannel_State) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 320 return o.MakeDiffFieldMask(other.(*NotificationChannel_State)) 321 } 322 323 func (o *NotificationChannel_State) Clone() *NotificationChannel_State { 324 if o == nil { 325 return nil 326 } 327 result := &NotificationChannel_State{} 328 result.Status = o.Status 329 result.Error = o.Error.Clone() 330 return result 331 } 332 333 func (o *NotificationChannel_State) CloneRaw() gotenobject.GotenObjectExt { 334 return o.Clone() 335 } 336 337 func (o *NotificationChannel_State) Merge(source *NotificationChannel_State) { 338 o.Status = source.GetStatus() 339 if source.GetError() != nil { 340 if o.Error == nil { 341 o.Error = new(NotificationChannel_State_Error) 342 } 343 o.Error.Merge(source.GetError()) 344 } 345 } 346 347 func (o *NotificationChannel_State) MergeRaw(source gotenobject.GotenObjectExt) { 348 o.Merge(source.(*NotificationChannel_State)) 349 } 350 351 func (o *NotificationChannel_Spec_Email) GotenObjectExt() {} 352 353 func (o *NotificationChannel_Spec_Email) MakeFullFieldMask() *NotificationChannel_Spec_Email_FieldMask { 354 return FullNotificationChannel_Spec_Email_FieldMask() 355 } 356 357 func (o *NotificationChannel_Spec_Email) MakeRawFullFieldMask() gotenobject.FieldMask { 358 return FullNotificationChannel_Spec_Email_FieldMask() 359 } 360 361 func (o *NotificationChannel_Spec_Email) MakeDiffFieldMask(other *NotificationChannel_Spec_Email) *NotificationChannel_Spec_Email_FieldMask { 362 if o == nil && other == nil { 363 return &NotificationChannel_Spec_Email_FieldMask{} 364 } 365 if o == nil || other == nil { 366 return FullNotificationChannel_Spec_Email_FieldMask() 367 } 368 369 res := &NotificationChannel_Spec_Email_FieldMask{} 370 371 if len(o.GetAddresses()) == len(other.GetAddresses()) { 372 for i, lValue := range o.GetAddresses() { 373 rValue := other.GetAddresses()[i] 374 if lValue != rValue { 375 res.Paths = append(res.Paths, &NotificationChannelSpecEmail_FieldTerminalPath{selector: NotificationChannelSpecEmail_FieldPathSelectorAddresses}) 376 break 377 } 378 } 379 } else { 380 res.Paths = append(res.Paths, &NotificationChannelSpecEmail_FieldTerminalPath{selector: NotificationChannelSpecEmail_FieldPathSelectorAddresses}) 381 } 382 return res 383 } 384 385 func (o *NotificationChannel_Spec_Email) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 386 return o.MakeDiffFieldMask(other.(*NotificationChannel_Spec_Email)) 387 } 388 389 func (o *NotificationChannel_Spec_Email) Clone() *NotificationChannel_Spec_Email { 390 if o == nil { 391 return nil 392 } 393 result := &NotificationChannel_Spec_Email{} 394 result.Addresses = make([]string, len(o.Addresses)) 395 for i, sourceValue := range o.Addresses { 396 result.Addresses[i] = sourceValue 397 } 398 return result 399 } 400 401 func (o *NotificationChannel_Spec_Email) CloneRaw() gotenobject.GotenObjectExt { 402 return o.Clone() 403 } 404 405 func (o *NotificationChannel_Spec_Email) Merge(source *NotificationChannel_Spec_Email) { 406 for _, sourceValue := range source.GetAddresses() { 407 exists := false 408 for _, currentValue := range o.Addresses { 409 if currentValue == sourceValue { 410 exists = true 411 break 412 } 413 } 414 if !exists { 415 var newDstElement string 416 newDstElement = sourceValue 417 o.Addresses = append(o.Addresses, newDstElement) 418 } 419 } 420 421 } 422 423 func (o *NotificationChannel_Spec_Email) MergeRaw(source gotenobject.GotenObjectExt) { 424 o.Merge(source.(*NotificationChannel_Spec_Email)) 425 } 426 427 func (o *NotificationChannel_Spec_Slack) GotenObjectExt() {} 428 429 func (o *NotificationChannel_Spec_Slack) MakeFullFieldMask() *NotificationChannel_Spec_Slack_FieldMask { 430 return FullNotificationChannel_Spec_Slack_FieldMask() 431 } 432 433 func (o *NotificationChannel_Spec_Slack) MakeRawFullFieldMask() gotenobject.FieldMask { 434 return FullNotificationChannel_Spec_Slack_FieldMask() 435 } 436 437 func (o *NotificationChannel_Spec_Slack) MakeDiffFieldMask(other *NotificationChannel_Spec_Slack) *NotificationChannel_Spec_Slack_FieldMask { 438 if o == nil && other == nil { 439 return &NotificationChannel_Spec_Slack_FieldMask{} 440 } 441 if o == nil || other == nil { 442 return FullNotificationChannel_Spec_Slack_FieldMask() 443 } 444 445 res := &NotificationChannel_Spec_Slack_FieldMask{} 446 if o.GetIncomingWebhook() != other.GetIncomingWebhook() { 447 res.Paths = append(res.Paths, &NotificationChannelSpecSlack_FieldTerminalPath{selector: NotificationChannelSpecSlack_FieldPathSelectorIncomingWebhook}) 448 } 449 return res 450 } 451 452 func (o *NotificationChannel_Spec_Slack) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 453 return o.MakeDiffFieldMask(other.(*NotificationChannel_Spec_Slack)) 454 } 455 456 func (o *NotificationChannel_Spec_Slack) Clone() *NotificationChannel_Spec_Slack { 457 if o == nil { 458 return nil 459 } 460 result := &NotificationChannel_Spec_Slack{} 461 result.IncomingWebhook = o.IncomingWebhook 462 return result 463 } 464 465 func (o *NotificationChannel_Spec_Slack) CloneRaw() gotenobject.GotenObjectExt { 466 return o.Clone() 467 } 468 469 func (o *NotificationChannel_Spec_Slack) Merge(source *NotificationChannel_Spec_Slack) { 470 o.IncomingWebhook = source.GetIncomingWebhook() 471 } 472 473 func (o *NotificationChannel_Spec_Slack) MergeRaw(source gotenobject.GotenObjectExt) { 474 o.Merge(source.(*NotificationChannel_Spec_Slack)) 475 } 476 477 func (o *NotificationChannel_Spec_PagerDuty) GotenObjectExt() {} 478 479 func (o *NotificationChannel_Spec_PagerDuty) MakeFullFieldMask() *NotificationChannel_Spec_PagerDuty_FieldMask { 480 return FullNotificationChannel_Spec_PagerDuty_FieldMask() 481 } 482 483 func (o *NotificationChannel_Spec_PagerDuty) MakeRawFullFieldMask() gotenobject.FieldMask { 484 return FullNotificationChannel_Spec_PagerDuty_FieldMask() 485 } 486 487 func (o *NotificationChannel_Spec_PagerDuty) MakeDiffFieldMask(other *NotificationChannel_Spec_PagerDuty) *NotificationChannel_Spec_PagerDuty_FieldMask { 488 if o == nil && other == nil { 489 return &NotificationChannel_Spec_PagerDuty_FieldMask{} 490 } 491 if o == nil || other == nil { 492 return FullNotificationChannel_Spec_PagerDuty_FieldMask() 493 } 494 495 res := &NotificationChannel_Spec_PagerDuty_FieldMask{} 496 if o.GetServiceKey() != other.GetServiceKey() { 497 res.Paths = append(res.Paths, &NotificationChannelSpecPagerDuty_FieldTerminalPath{selector: NotificationChannelSpecPagerDuty_FieldPathSelectorServiceKey}) 498 } 499 return res 500 } 501 502 func (o *NotificationChannel_Spec_PagerDuty) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 503 return o.MakeDiffFieldMask(other.(*NotificationChannel_Spec_PagerDuty)) 504 } 505 506 func (o *NotificationChannel_Spec_PagerDuty) Clone() *NotificationChannel_Spec_PagerDuty { 507 if o == nil { 508 return nil 509 } 510 result := &NotificationChannel_Spec_PagerDuty{} 511 result.ServiceKey = o.ServiceKey 512 return result 513 } 514 515 func (o *NotificationChannel_Spec_PagerDuty) CloneRaw() gotenobject.GotenObjectExt { 516 return o.Clone() 517 } 518 519 func (o *NotificationChannel_Spec_PagerDuty) Merge(source *NotificationChannel_Spec_PagerDuty) { 520 o.ServiceKey = source.GetServiceKey() 521 } 522 523 func (o *NotificationChannel_Spec_PagerDuty) MergeRaw(source gotenobject.GotenObjectExt) { 524 o.Merge(source.(*NotificationChannel_Spec_PagerDuty)) 525 } 526 527 func (o *NotificationChannel_Spec_Webhook) GotenObjectExt() {} 528 529 func (o *NotificationChannel_Spec_Webhook) MakeFullFieldMask() *NotificationChannel_Spec_Webhook_FieldMask { 530 return FullNotificationChannel_Spec_Webhook_FieldMask() 531 } 532 533 func (o *NotificationChannel_Spec_Webhook) MakeRawFullFieldMask() gotenobject.FieldMask { 534 return FullNotificationChannel_Spec_Webhook_FieldMask() 535 } 536 537 func (o *NotificationChannel_Spec_Webhook) MakeDiffFieldMask(other *NotificationChannel_Spec_Webhook) *NotificationChannel_Spec_Webhook_FieldMask { 538 if o == nil && other == nil { 539 return &NotificationChannel_Spec_Webhook_FieldMask{} 540 } 541 if o == nil || other == nil { 542 return FullNotificationChannel_Spec_Webhook_FieldMask() 543 } 544 545 res := &NotificationChannel_Spec_Webhook_FieldMask{} 546 if o.GetUrl() != other.GetUrl() { 547 res.Paths = append(res.Paths, &NotificationChannelSpecWebhook_FieldTerminalPath{selector: NotificationChannelSpecWebhook_FieldPathSelectorUrl}) 548 } 549 550 if len(o.GetHeaders()) == len(other.GetHeaders()) { 551 for i, lValue := range o.GetHeaders() { 552 rValue := other.GetHeaders()[i] 553 if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 { 554 res.Paths = append(res.Paths, &NotificationChannelSpecWebhook_FieldTerminalPath{selector: NotificationChannelSpecWebhook_FieldPathSelectorHeaders}) 555 break 556 } 557 } 558 } else { 559 res.Paths = append(res.Paths, &NotificationChannelSpecWebhook_FieldTerminalPath{selector: NotificationChannelSpecWebhook_FieldPathSelectorHeaders}) 560 } 561 return res 562 } 563 564 func (o *NotificationChannel_Spec_Webhook) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 565 return o.MakeDiffFieldMask(other.(*NotificationChannel_Spec_Webhook)) 566 } 567 568 func (o *NotificationChannel_Spec_Webhook) Clone() *NotificationChannel_Spec_Webhook { 569 if o == nil { 570 return nil 571 } 572 result := &NotificationChannel_Spec_Webhook{} 573 result.Url = o.Url 574 result.Headers = make([]*NotificationChannel_Spec_Webhook_Header, len(o.Headers)) 575 for i, sourceValue := range o.Headers { 576 result.Headers[i] = sourceValue.Clone() 577 } 578 return result 579 } 580 581 func (o *NotificationChannel_Spec_Webhook) CloneRaw() gotenobject.GotenObjectExt { 582 return o.Clone() 583 } 584 585 func (o *NotificationChannel_Spec_Webhook) Merge(source *NotificationChannel_Spec_Webhook) { 586 o.Url = source.GetUrl() 587 for _, sourceValue := range source.GetHeaders() { 588 exists := false 589 for _, currentValue := range o.Headers { 590 if proto.Equal(sourceValue, currentValue) { 591 exists = true 592 break 593 } 594 } 595 if !exists { 596 var newDstElement *NotificationChannel_Spec_Webhook_Header 597 if sourceValue != nil { 598 newDstElement = new(NotificationChannel_Spec_Webhook_Header) 599 newDstElement.Merge(sourceValue) 600 } 601 o.Headers = append(o.Headers, newDstElement) 602 } 603 } 604 605 } 606 607 func (o *NotificationChannel_Spec_Webhook) MergeRaw(source gotenobject.GotenObjectExt) { 608 o.Merge(source.(*NotificationChannel_Spec_Webhook)) 609 } 610 611 func (o *NotificationChannel_Spec_Webhook_Header) GotenObjectExt() {} 612 613 func (o *NotificationChannel_Spec_Webhook_Header) MakeFullFieldMask() *NotificationChannel_Spec_Webhook_Header_FieldMask { 614 return FullNotificationChannel_Spec_Webhook_Header_FieldMask() 615 } 616 617 func (o *NotificationChannel_Spec_Webhook_Header) MakeRawFullFieldMask() gotenobject.FieldMask { 618 return FullNotificationChannel_Spec_Webhook_Header_FieldMask() 619 } 620 621 func (o *NotificationChannel_Spec_Webhook_Header) MakeDiffFieldMask(other *NotificationChannel_Spec_Webhook_Header) *NotificationChannel_Spec_Webhook_Header_FieldMask { 622 if o == nil && other == nil { 623 return &NotificationChannel_Spec_Webhook_Header_FieldMask{} 624 } 625 if o == nil || other == nil { 626 return FullNotificationChannel_Spec_Webhook_Header_FieldMask() 627 } 628 629 res := &NotificationChannel_Spec_Webhook_Header_FieldMask{} 630 if o.GetKey() != other.GetKey() { 631 res.Paths = append(res.Paths, &NotificationChannelSpecWebhookHeader_FieldTerminalPath{selector: NotificationChannelSpecWebhookHeader_FieldPathSelectorKey}) 632 } 633 if o.GetValue() != other.GetValue() { 634 res.Paths = append(res.Paths, &NotificationChannelSpecWebhookHeader_FieldTerminalPath{selector: NotificationChannelSpecWebhookHeader_FieldPathSelectorValue}) 635 } 636 return res 637 } 638 639 func (o *NotificationChannel_Spec_Webhook_Header) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 640 return o.MakeDiffFieldMask(other.(*NotificationChannel_Spec_Webhook_Header)) 641 } 642 643 func (o *NotificationChannel_Spec_Webhook_Header) Clone() *NotificationChannel_Spec_Webhook_Header { 644 if o == nil { 645 return nil 646 } 647 result := &NotificationChannel_Spec_Webhook_Header{} 648 result.Key = o.Key 649 result.Value = o.Value 650 return result 651 } 652 653 func (o *NotificationChannel_Spec_Webhook_Header) CloneRaw() gotenobject.GotenObjectExt { 654 return o.Clone() 655 } 656 657 func (o *NotificationChannel_Spec_Webhook_Header) Merge(source *NotificationChannel_Spec_Webhook_Header) { 658 o.Key = source.GetKey() 659 o.Value = source.GetValue() 660 } 661 662 func (o *NotificationChannel_Spec_Webhook_Header) MergeRaw(source gotenobject.GotenObjectExt) { 663 o.Merge(source.(*NotificationChannel_Spec_Webhook_Header)) 664 } 665 666 func (o *NotificationChannel_State_Error) GotenObjectExt() {} 667 668 func (o *NotificationChannel_State_Error) MakeFullFieldMask() *NotificationChannel_State_Error_FieldMask { 669 return FullNotificationChannel_State_Error_FieldMask() 670 } 671 672 func (o *NotificationChannel_State_Error) MakeRawFullFieldMask() gotenobject.FieldMask { 673 return FullNotificationChannel_State_Error_FieldMask() 674 } 675 676 func (o *NotificationChannel_State_Error) MakeDiffFieldMask(other *NotificationChannel_State_Error) *NotificationChannel_State_Error_FieldMask { 677 if o == nil && other == nil { 678 return &NotificationChannel_State_Error_FieldMask{} 679 } 680 if o == nil || other == nil { 681 return FullNotificationChannel_State_Error_FieldMask() 682 } 683 684 res := &NotificationChannel_State_Error_FieldMask{} 685 if !proto.Equal(o.GetTime(), other.GetTime()) { 686 res.Paths = append(res.Paths, &NotificationChannelStateError_FieldTerminalPath{selector: NotificationChannelStateError_FieldPathSelectorTime}) 687 } 688 if o.GetMessage() != other.GetMessage() { 689 res.Paths = append(res.Paths, &NotificationChannelStateError_FieldTerminalPath{selector: NotificationChannelStateError_FieldPathSelectorMessage}) 690 } 691 return res 692 } 693 694 func (o *NotificationChannel_State_Error) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 695 return o.MakeDiffFieldMask(other.(*NotificationChannel_State_Error)) 696 } 697 698 func (o *NotificationChannel_State_Error) Clone() *NotificationChannel_State_Error { 699 if o == nil { 700 return nil 701 } 702 result := &NotificationChannel_State_Error{} 703 result.Time = proto.Clone(o.Time).(*timestamppb.Timestamp) 704 result.Message = o.Message 705 return result 706 } 707 708 func (o *NotificationChannel_State_Error) CloneRaw() gotenobject.GotenObjectExt { 709 return o.Clone() 710 } 711 712 func (o *NotificationChannel_State_Error) Merge(source *NotificationChannel_State_Error) { 713 if source.GetTime() != nil { 714 if o.Time == nil { 715 o.Time = new(timestamppb.Timestamp) 716 } 717 proto.Merge(o.Time, source.GetTime()) 718 } 719 o.Message = source.GetMessage() 720 } 721 722 func (o *NotificationChannel_State_Error) MergeRaw(source gotenobject.GotenObjectExt) { 723 o.Merge(source.(*NotificationChannel_State_Error)) 724 }