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  	_ = &timestamppb.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  }