github.com/cloudwan/edgelq-sdk@v1.15.4/logging/resources/v1/bucket/bucket.pb.object_ext.go (about)

     1  // Code generated by protoc-gen-goten-object
     2  // File: edgelq/logging/proto/v1/bucket.proto
     3  // DO NOT EDIT!!!
     4  
     5  package bucket
     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  	iam_organization "github.com/cloudwan/edgelq-sdk/iam/resources/v1/organization"
    20  	iam_project "github.com/cloudwan/edgelq-sdk/iam/resources/v1/project"
    21  	log_descriptor "github.com/cloudwan/edgelq-sdk/logging/resources/v1/log_descriptor"
    22  	meta_service "github.com/cloudwan/goten-sdk/meta-service/resources/v1/service"
    23  	meta "github.com/cloudwan/goten-sdk/types/meta"
    24  )
    25  
    26  // ensure the imports are used
    27  var (
    28  	_ = new(fmt.Stringer)
    29  	_ = new(sort.Interface)
    30  
    31  	_ = new(proto.Message)
    32  	_ = googlefieldmaskpb.FieldMask{}
    33  
    34  	_ = new(gotenobject.FieldPath)
    35  )
    36  
    37  // make sure we're using proto imports
    38  var (
    39  	_ = &iam_organization.Organization{}
    40  	_ = &iam_project.Project{}
    41  	_ = &log_descriptor.LogDescriptor{}
    42  	_ = &meta_service.Service{}
    43  	_ = &meta.Meta{}
    44  )
    45  
    46  func (o *Bucket) GotenObjectExt() {}
    47  
    48  func (o *Bucket) MakeFullFieldMask() *Bucket_FieldMask {
    49  	return FullBucket_FieldMask()
    50  }
    51  
    52  func (o *Bucket) MakeRawFullFieldMask() gotenobject.FieldMask {
    53  	return FullBucket_FieldMask()
    54  }
    55  
    56  func (o *Bucket) MakeDiffFieldMask(other *Bucket) *Bucket_FieldMask {
    57  	if o == nil && other == nil {
    58  		return &Bucket_FieldMask{}
    59  	}
    60  	if o == nil || other == nil {
    61  		return FullBucket_FieldMask()
    62  	}
    63  
    64  	res := &Bucket_FieldMask{}
    65  	if o.GetName().String() != other.GetName().String() {
    66  		res.Paths = append(res.Paths, &Bucket_FieldTerminalPath{selector: Bucket_FieldPathSelectorName})
    67  	}
    68  	{
    69  		subMask := o.GetMetadata().MakeDiffFieldMask(other.GetMetadata())
    70  		if subMask.IsFull() {
    71  			res.Paths = append(res.Paths, &Bucket_FieldTerminalPath{selector: Bucket_FieldPathSelectorMetadata})
    72  		} else {
    73  			for _, subpath := range subMask.Paths {
    74  				res.Paths = append(res.Paths, &Bucket_FieldSubPath{selector: Bucket_FieldPathSelectorMetadata, subPath: subpath})
    75  			}
    76  		}
    77  	}
    78  
    79  	if len(o.GetServices()) == len(other.GetServices()) {
    80  		for i, lValue := range o.GetServices() {
    81  			rValue := other.GetServices()[i]
    82  			if lValue != rValue {
    83  				res.Paths = append(res.Paths, &Bucket_FieldTerminalPath{selector: Bucket_FieldPathSelectorServices})
    84  				break
    85  			}
    86  		}
    87  	} else {
    88  		res.Paths = append(res.Paths, &Bucket_FieldTerminalPath{selector: Bucket_FieldPathSelectorServices})
    89  	}
    90  
    91  	if len(o.GetVersions()) == len(other.GetVersions()) {
    92  		for i, lValue := range o.GetVersions() {
    93  			rValue := other.GetVersions()[i]
    94  			if lValue != rValue {
    95  				res.Paths = append(res.Paths, &Bucket_FieldTerminalPath{selector: Bucket_FieldPathSelectorVersions})
    96  				break
    97  			}
    98  		}
    99  	} else {
   100  		res.Paths = append(res.Paths, &Bucket_FieldTerminalPath{selector: Bucket_FieldPathSelectorVersions})
   101  	}
   102  
   103  	if len(o.GetLogs()) == len(other.GetLogs()) {
   104  		for i, lValue := range o.GetLogs() {
   105  			rValue := other.GetLogs()[i]
   106  			if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 {
   107  				res.Paths = append(res.Paths, &Bucket_FieldTerminalPath{selector: Bucket_FieldPathSelectorLogs})
   108  				break
   109  			}
   110  		}
   111  	} else {
   112  		res.Paths = append(res.Paths, &Bucket_FieldTerminalPath{selector: Bucket_FieldPathSelectorLogs})
   113  	}
   114  
   115  	if len(o.GetRequiredAltKvs()) == len(other.GetRequiredAltKvs()) {
   116  		for i, lValue := range o.GetRequiredAltKvs() {
   117  			rValue := other.GetRequiredAltKvs()[i]
   118  			if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 {
   119  				res.Paths = append(res.Paths, &Bucket_FieldTerminalPath{selector: Bucket_FieldPathSelectorRequiredAltKvs})
   120  				break
   121  			}
   122  		}
   123  	} else {
   124  		res.Paths = append(res.Paths, &Bucket_FieldTerminalPath{selector: Bucket_FieldPathSelectorRequiredAltKvs})
   125  	}
   126  	return res
   127  }
   128  
   129  func (o *Bucket) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   130  	return o.MakeDiffFieldMask(other.(*Bucket))
   131  }
   132  
   133  func (o *Bucket) Clone() *Bucket {
   134  	if o == nil {
   135  		return nil
   136  	}
   137  	result := &Bucket{}
   138  	if o.Name == nil {
   139  		result.Name = nil
   140  	} else if data, err := o.Name.ProtoString(); err != nil {
   141  		panic(err)
   142  	} else {
   143  		result.Name = &Name{}
   144  		if err := result.Name.ParseProtoString(data); err != nil {
   145  			panic(err)
   146  		}
   147  	}
   148  	result.Metadata = o.Metadata.Clone()
   149  	result.Services = make([]string, len(o.Services))
   150  	for i, sourceValue := range o.Services {
   151  		result.Services[i] = sourceValue
   152  	}
   153  	result.Versions = make([]string, len(o.Versions))
   154  	for i, sourceValue := range o.Versions {
   155  		result.Versions[i] = sourceValue
   156  	}
   157  	result.Logs = make([]*Bucket_RequiredTypedLabels, len(o.Logs))
   158  	for i, sourceValue := range o.Logs {
   159  		result.Logs[i] = sourceValue.Clone()
   160  	}
   161  	result.RequiredAltKvs = make([]*Bucket_ResolvedKeysWithValues, len(o.RequiredAltKvs))
   162  	for i, sourceValue := range o.RequiredAltKvs {
   163  		result.RequiredAltKvs[i] = sourceValue.Clone()
   164  	}
   165  	return result
   166  }
   167  
   168  func (o *Bucket) CloneRaw() gotenobject.GotenObjectExt {
   169  	return o.Clone()
   170  }
   171  
   172  func (o *Bucket) Merge(source *Bucket) {
   173  	if source.GetName() != nil {
   174  		if data, err := source.GetName().ProtoString(); err != nil {
   175  			panic(err)
   176  		} else {
   177  			o.Name = &Name{}
   178  			if err := o.Name.ParseProtoString(data); err != nil {
   179  				panic(err)
   180  			}
   181  		}
   182  	} else {
   183  		o.Name = nil
   184  	}
   185  	if source.GetMetadata() != nil {
   186  		if o.Metadata == nil {
   187  			o.Metadata = new(meta.Meta)
   188  		}
   189  		o.Metadata.Merge(source.GetMetadata())
   190  	}
   191  	for _, sourceValue := range source.GetServices() {
   192  		exists := false
   193  		for _, currentValue := range o.Services {
   194  			if currentValue == sourceValue {
   195  				exists = true
   196  				break
   197  			}
   198  		}
   199  		if !exists {
   200  			var newDstElement string
   201  			newDstElement = sourceValue
   202  			o.Services = append(o.Services, newDstElement)
   203  		}
   204  	}
   205  
   206  	for _, sourceValue := range source.GetVersions() {
   207  		exists := false
   208  		for _, currentValue := range o.Versions {
   209  			if currentValue == sourceValue {
   210  				exists = true
   211  				break
   212  			}
   213  		}
   214  		if !exists {
   215  			var newDstElement string
   216  			newDstElement = sourceValue
   217  			o.Versions = append(o.Versions, newDstElement)
   218  		}
   219  	}
   220  
   221  	for _, sourceValue := range source.GetLogs() {
   222  		exists := false
   223  		for _, currentValue := range o.Logs {
   224  			if proto.Equal(sourceValue, currentValue) {
   225  				exists = true
   226  				break
   227  			}
   228  		}
   229  		if !exists {
   230  			var newDstElement *Bucket_RequiredTypedLabels
   231  			if sourceValue != nil {
   232  				newDstElement = new(Bucket_RequiredTypedLabels)
   233  				newDstElement.Merge(sourceValue)
   234  			}
   235  			o.Logs = append(o.Logs, newDstElement)
   236  		}
   237  	}
   238  
   239  	for _, sourceValue := range source.GetRequiredAltKvs() {
   240  		exists := false
   241  		for _, currentValue := range o.RequiredAltKvs {
   242  			if proto.Equal(sourceValue, currentValue) {
   243  				exists = true
   244  				break
   245  			}
   246  		}
   247  		if !exists {
   248  			var newDstElement *Bucket_ResolvedKeysWithValues
   249  			if sourceValue != nil {
   250  				newDstElement = new(Bucket_ResolvedKeysWithValues)
   251  				newDstElement.Merge(sourceValue)
   252  			}
   253  			o.RequiredAltKvs = append(o.RequiredAltKvs, newDstElement)
   254  		}
   255  	}
   256  
   257  }
   258  
   259  func (o *Bucket) MergeRaw(source gotenobject.GotenObjectExt) {
   260  	o.Merge(source.(*Bucket))
   261  }
   262  
   263  func (o *Bucket_ResolvedValues) GotenObjectExt() {}
   264  
   265  func (o *Bucket_ResolvedValues) MakeFullFieldMask() *Bucket_ResolvedValues_FieldMask {
   266  	return FullBucket_ResolvedValues_FieldMask()
   267  }
   268  
   269  func (o *Bucket_ResolvedValues) MakeRawFullFieldMask() gotenobject.FieldMask {
   270  	return FullBucket_ResolvedValues_FieldMask()
   271  }
   272  
   273  func (o *Bucket_ResolvedValues) MakeDiffFieldMask(other *Bucket_ResolvedValues) *Bucket_ResolvedValues_FieldMask {
   274  	if o == nil && other == nil {
   275  		return &Bucket_ResolvedValues_FieldMask{}
   276  	}
   277  	if o == nil || other == nil {
   278  		return FullBucket_ResolvedValues_FieldMask()
   279  	}
   280  
   281  	res := &Bucket_ResolvedValues_FieldMask{}
   282  	if o.GetKey() != other.GetKey() {
   283  		res.Paths = append(res.Paths, &BucketResolvedValues_FieldTerminalPath{selector: BucketResolvedValues_FieldPathSelectorKey})
   284  	}
   285  
   286  	if len(o.GetValues()) == len(other.GetValues()) {
   287  		for i, lValue := range o.GetValues() {
   288  			rValue := other.GetValues()[i]
   289  			if lValue != rValue {
   290  				res.Paths = append(res.Paths, &BucketResolvedValues_FieldTerminalPath{selector: BucketResolvedValues_FieldPathSelectorValues})
   291  				break
   292  			}
   293  		}
   294  	} else {
   295  		res.Paths = append(res.Paths, &BucketResolvedValues_FieldTerminalPath{selector: BucketResolvedValues_FieldPathSelectorValues})
   296  	}
   297  	return res
   298  }
   299  
   300  func (o *Bucket_ResolvedValues) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   301  	return o.MakeDiffFieldMask(other.(*Bucket_ResolvedValues))
   302  }
   303  
   304  func (o *Bucket_ResolvedValues) Clone() *Bucket_ResolvedValues {
   305  	if o == nil {
   306  		return nil
   307  	}
   308  	result := &Bucket_ResolvedValues{}
   309  	result.Key = o.Key
   310  	result.Values = make([]int64, len(o.Values))
   311  	for i, sourceValue := range o.Values {
   312  		result.Values[i] = sourceValue
   313  	}
   314  	return result
   315  }
   316  
   317  func (o *Bucket_ResolvedValues) CloneRaw() gotenobject.GotenObjectExt {
   318  	return o.Clone()
   319  }
   320  
   321  func (o *Bucket_ResolvedValues) Merge(source *Bucket_ResolvedValues) {
   322  	o.Key = source.GetKey()
   323  	for _, sourceValue := range source.GetValues() {
   324  		exists := false
   325  		for _, currentValue := range o.Values {
   326  			if currentValue == sourceValue {
   327  				exists = true
   328  				break
   329  			}
   330  		}
   331  		if !exists {
   332  			var newDstElement int64
   333  			newDstElement = sourceValue
   334  			o.Values = append(o.Values, newDstElement)
   335  		}
   336  	}
   337  
   338  }
   339  
   340  func (o *Bucket_ResolvedValues) MergeRaw(source gotenobject.GotenObjectExt) {
   341  	o.Merge(source.(*Bucket_ResolvedValues))
   342  }
   343  
   344  func (o *Bucket_ResolvedKeysWithValues) GotenObjectExt() {}
   345  
   346  func (o *Bucket_ResolvedKeysWithValues) MakeFullFieldMask() *Bucket_ResolvedKeysWithValues_FieldMask {
   347  	return FullBucket_ResolvedKeysWithValues_FieldMask()
   348  }
   349  
   350  func (o *Bucket_ResolvedKeysWithValues) MakeRawFullFieldMask() gotenobject.FieldMask {
   351  	return FullBucket_ResolvedKeysWithValues_FieldMask()
   352  }
   353  
   354  func (o *Bucket_ResolvedKeysWithValues) MakeDiffFieldMask(other *Bucket_ResolvedKeysWithValues) *Bucket_ResolvedKeysWithValues_FieldMask {
   355  	if o == nil && other == nil {
   356  		return &Bucket_ResolvedKeysWithValues_FieldMask{}
   357  	}
   358  	if o == nil || other == nil {
   359  		return FullBucket_ResolvedKeysWithValues_FieldMask()
   360  	}
   361  
   362  	res := &Bucket_ResolvedKeysWithValues_FieldMask{}
   363  
   364  	if len(o.GetResolvedKvs()) == len(other.GetResolvedKvs()) {
   365  		for i, lValue := range o.GetResolvedKvs() {
   366  			rValue := other.GetResolvedKvs()[i]
   367  			if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 {
   368  				res.Paths = append(res.Paths, &BucketResolvedKeysWithValues_FieldTerminalPath{selector: BucketResolvedKeysWithValues_FieldPathSelectorResolvedKvs})
   369  				break
   370  			}
   371  		}
   372  	} else {
   373  		res.Paths = append(res.Paths, &BucketResolvedKeysWithValues_FieldTerminalPath{selector: BucketResolvedKeysWithValues_FieldPathSelectorResolvedKvs})
   374  	}
   375  	return res
   376  }
   377  
   378  func (o *Bucket_ResolvedKeysWithValues) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   379  	return o.MakeDiffFieldMask(other.(*Bucket_ResolvedKeysWithValues))
   380  }
   381  
   382  func (o *Bucket_ResolvedKeysWithValues) Clone() *Bucket_ResolvedKeysWithValues {
   383  	if o == nil {
   384  		return nil
   385  	}
   386  	result := &Bucket_ResolvedKeysWithValues{}
   387  	result.ResolvedKvs = make([]*Bucket_ResolvedValues, len(o.ResolvedKvs))
   388  	for i, sourceValue := range o.ResolvedKvs {
   389  		result.ResolvedKvs[i] = sourceValue.Clone()
   390  	}
   391  	return result
   392  }
   393  
   394  func (o *Bucket_ResolvedKeysWithValues) CloneRaw() gotenobject.GotenObjectExt {
   395  	return o.Clone()
   396  }
   397  
   398  func (o *Bucket_ResolvedKeysWithValues) Merge(source *Bucket_ResolvedKeysWithValues) {
   399  	for _, sourceValue := range source.GetResolvedKvs() {
   400  		exists := false
   401  		for _, currentValue := range o.ResolvedKvs {
   402  			if proto.Equal(sourceValue, currentValue) {
   403  				exists = true
   404  				break
   405  			}
   406  		}
   407  		if !exists {
   408  			var newDstElement *Bucket_ResolvedValues
   409  			if sourceValue != nil {
   410  				newDstElement = new(Bucket_ResolvedValues)
   411  				newDstElement.Merge(sourceValue)
   412  			}
   413  			o.ResolvedKvs = append(o.ResolvedKvs, newDstElement)
   414  		}
   415  	}
   416  
   417  }
   418  
   419  func (o *Bucket_ResolvedKeysWithValues) MergeRaw(source gotenobject.GotenObjectExt) {
   420  	o.Merge(source.(*Bucket_ResolvedKeysWithValues))
   421  }
   422  
   423  func (o *Bucket_RequiredTypedLabels) GotenObjectExt() {}
   424  
   425  func (o *Bucket_RequiredTypedLabels) MakeFullFieldMask() *Bucket_RequiredTypedLabels_FieldMask {
   426  	return FullBucket_RequiredTypedLabels_FieldMask()
   427  }
   428  
   429  func (o *Bucket_RequiredTypedLabels) MakeRawFullFieldMask() gotenobject.FieldMask {
   430  	return FullBucket_RequiredTypedLabels_FieldMask()
   431  }
   432  
   433  func (o *Bucket_RequiredTypedLabels) MakeDiffFieldMask(other *Bucket_RequiredTypedLabels) *Bucket_RequiredTypedLabels_FieldMask {
   434  	if o == nil && other == nil {
   435  		return &Bucket_RequiredTypedLabels_FieldMask{}
   436  	}
   437  	if o == nil || other == nil {
   438  		return FullBucket_RequiredTypedLabels_FieldMask()
   439  	}
   440  
   441  	res := &Bucket_RequiredTypedLabels_FieldMask{}
   442  
   443  	if len(o.GetDescriptors()) == len(other.GetDescriptors()) {
   444  		for i, lValue := range o.GetDescriptors() {
   445  			rValue := other.GetDescriptors()[i]
   446  			if lValue.String() != rValue.String() {
   447  				res.Paths = append(res.Paths, &BucketRequiredTypedLabels_FieldTerminalPath{selector: BucketRequiredTypedLabels_FieldPathSelectorDescriptors})
   448  				break
   449  			}
   450  		}
   451  	} else {
   452  		res.Paths = append(res.Paths, &BucketRequiredTypedLabels_FieldTerminalPath{selector: BucketRequiredTypedLabels_FieldPathSelectorDescriptors})
   453  	}
   454  
   455  	if len(o.GetLabels()) == len(other.GetLabels()) {
   456  		for i, lValue := range o.GetLabels() {
   457  			rValue := other.GetLabels()[i]
   458  			if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 {
   459  				res.Paths = append(res.Paths, &BucketRequiredTypedLabels_FieldTerminalPath{selector: BucketRequiredTypedLabels_FieldPathSelectorLabels})
   460  				break
   461  			}
   462  		}
   463  	} else {
   464  		res.Paths = append(res.Paths, &BucketRequiredTypedLabels_FieldTerminalPath{selector: BucketRequiredTypedLabels_FieldPathSelectorLabels})
   465  	}
   466  	return res
   467  }
   468  
   469  func (o *Bucket_RequiredTypedLabels) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   470  	return o.MakeDiffFieldMask(other.(*Bucket_RequiredTypedLabels))
   471  }
   472  
   473  func (o *Bucket_RequiredTypedLabels) Clone() *Bucket_RequiredTypedLabels {
   474  	if o == nil {
   475  		return nil
   476  	}
   477  	result := &Bucket_RequiredTypedLabels{}
   478  	result.Descriptors = make([]*log_descriptor.Reference, len(o.Descriptors))
   479  	for i, sourceValue := range o.Descriptors {
   480  		if sourceValue == nil {
   481  			result.Descriptors[i] = nil
   482  		} else if data, err := sourceValue.ProtoString(); err != nil {
   483  			panic(err)
   484  		} else {
   485  			result.Descriptors[i] = &log_descriptor.Reference{}
   486  			if err := result.Descriptors[i].ParseProtoString(data); err != nil {
   487  				panic(err)
   488  			}
   489  		}
   490  	}
   491  	result.Labels = map[string]*Bucket_RequiredTypedLabels_Strings{}
   492  	for key, sourceValue := range o.Labels {
   493  		result.Labels[key] = sourceValue.Clone()
   494  	}
   495  	return result
   496  }
   497  
   498  func (o *Bucket_RequiredTypedLabels) CloneRaw() gotenobject.GotenObjectExt {
   499  	return o.Clone()
   500  }
   501  
   502  func (o *Bucket_RequiredTypedLabels) Merge(source *Bucket_RequiredTypedLabels) {
   503  	for _, sourceValue := range source.GetDescriptors() {
   504  		exists := false
   505  		for _, currentValue := range o.Descriptors {
   506  			leftProtoStr, _ := currentValue.ProtoString()
   507  			rightProtoStr, _ := sourceValue.ProtoString()
   508  			if leftProtoStr == rightProtoStr {
   509  				exists = true
   510  				break
   511  			}
   512  		}
   513  		if !exists {
   514  			var newDstElement *log_descriptor.Reference
   515  			if sourceValue != nil {
   516  				if data, err := sourceValue.ProtoString(); err != nil {
   517  					panic(err)
   518  				} else {
   519  					newDstElement = &log_descriptor.Reference{}
   520  					if err := newDstElement.ParseProtoString(data); err != nil {
   521  						panic(err)
   522  					}
   523  				}
   524  			}
   525  			o.Descriptors = append(o.Descriptors, newDstElement)
   526  		}
   527  	}
   528  
   529  	if source.GetLabels() != nil {
   530  		if o.Labels == nil {
   531  			o.Labels = make(map[string]*Bucket_RequiredTypedLabels_Strings, len(source.GetLabels()))
   532  		}
   533  		for key, sourceValue := range source.GetLabels() {
   534  			if sourceValue != nil {
   535  				if o.Labels[key] == nil {
   536  					o.Labels[key] = new(Bucket_RequiredTypedLabels_Strings)
   537  				}
   538  				o.Labels[key].Merge(sourceValue)
   539  			}
   540  		}
   541  	}
   542  }
   543  
   544  func (o *Bucket_RequiredTypedLabels) MergeRaw(source gotenobject.GotenObjectExt) {
   545  	o.Merge(source.(*Bucket_RequiredTypedLabels))
   546  }
   547  
   548  func (o *Bucket_RequiredTypedLabels_Strings) GotenObjectExt() {}
   549  
   550  func (o *Bucket_RequiredTypedLabels_Strings) MakeFullFieldMask() *Bucket_RequiredTypedLabels_Strings_FieldMask {
   551  	return FullBucket_RequiredTypedLabels_Strings_FieldMask()
   552  }
   553  
   554  func (o *Bucket_RequiredTypedLabels_Strings) MakeRawFullFieldMask() gotenobject.FieldMask {
   555  	return FullBucket_RequiredTypedLabels_Strings_FieldMask()
   556  }
   557  
   558  func (o *Bucket_RequiredTypedLabels_Strings) MakeDiffFieldMask(other *Bucket_RequiredTypedLabels_Strings) *Bucket_RequiredTypedLabels_Strings_FieldMask {
   559  	if o == nil && other == nil {
   560  		return &Bucket_RequiredTypedLabels_Strings_FieldMask{}
   561  	}
   562  	if o == nil || other == nil {
   563  		return FullBucket_RequiredTypedLabels_Strings_FieldMask()
   564  	}
   565  
   566  	res := &Bucket_RequiredTypedLabels_Strings_FieldMask{}
   567  
   568  	if len(o.GetStrings()) == len(other.GetStrings()) {
   569  		for i, lValue := range o.GetStrings() {
   570  			rValue := other.GetStrings()[i]
   571  			if lValue != rValue {
   572  				res.Paths = append(res.Paths, &BucketRequiredTypedLabelsStrings_FieldTerminalPath{selector: BucketRequiredTypedLabelsStrings_FieldPathSelectorStrings})
   573  				break
   574  			}
   575  		}
   576  	} else {
   577  		res.Paths = append(res.Paths, &BucketRequiredTypedLabelsStrings_FieldTerminalPath{selector: BucketRequiredTypedLabelsStrings_FieldPathSelectorStrings})
   578  	}
   579  	return res
   580  }
   581  
   582  func (o *Bucket_RequiredTypedLabels_Strings) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   583  	return o.MakeDiffFieldMask(other.(*Bucket_RequiredTypedLabels_Strings))
   584  }
   585  
   586  func (o *Bucket_RequiredTypedLabels_Strings) Clone() *Bucket_RequiredTypedLabels_Strings {
   587  	if o == nil {
   588  		return nil
   589  	}
   590  	result := &Bucket_RequiredTypedLabels_Strings{}
   591  	result.Strings = make([]string, len(o.Strings))
   592  	for i, sourceValue := range o.Strings {
   593  		result.Strings[i] = sourceValue
   594  	}
   595  	return result
   596  }
   597  
   598  func (o *Bucket_RequiredTypedLabels_Strings) CloneRaw() gotenobject.GotenObjectExt {
   599  	return o.Clone()
   600  }
   601  
   602  func (o *Bucket_RequiredTypedLabels_Strings) Merge(source *Bucket_RequiredTypedLabels_Strings) {
   603  	for _, sourceValue := range source.GetStrings() {
   604  		exists := false
   605  		for _, currentValue := range o.Strings {
   606  			if currentValue == sourceValue {
   607  				exists = true
   608  				break
   609  			}
   610  		}
   611  		if !exists {
   612  			var newDstElement string
   613  			newDstElement = sourceValue
   614  			o.Strings = append(o.Strings, newDstElement)
   615  		}
   616  	}
   617  
   618  }
   619  
   620  func (o *Bucket_RequiredTypedLabels_Strings) MergeRaw(source gotenobject.GotenObjectExt) {
   621  	o.Merge(source.(*Bucket_RequiredTypedLabels_Strings))
   622  }