github.com/cloudwan/edgelq-sdk@v1.15.4/limits/resources/v1alpha2/plan_assignment_request/plan_assignment_request.pb.object_ext.go (about)

     1  // Code generated by protoc-gen-goten-object
     2  // File: edgelq/limits/proto/v1alpha2/plan_assignment_request.proto
     3  // DO NOT EDIT!!!
     4  
     5  package plan_assignment_request
     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/v1alpha2/organization"
    20  	iam_project "github.com/cloudwan/edgelq-sdk/iam/resources/v1alpha2/project"
    21  	common "github.com/cloudwan/edgelq-sdk/limits/resources/v1alpha2/common"
    22  	plan "github.com/cloudwan/edgelq-sdk/limits/resources/v1alpha2/plan"
    23  	plan_assignment "github.com/cloudwan/edgelq-sdk/limits/resources/v1alpha2/plan_assignment"
    24  	meta_service "github.com/cloudwan/edgelq-sdk/meta/resources/v1alpha2/service"
    25  	meta "github.com/cloudwan/goten-sdk/types/meta"
    26  )
    27  
    28  // ensure the imports are used
    29  var (
    30  	_ = new(fmt.Stringer)
    31  	_ = new(sort.Interface)
    32  
    33  	_ = new(proto.Message)
    34  	_ = googlefieldmaskpb.FieldMask{}
    35  
    36  	_ = new(gotenobject.FieldPath)
    37  )
    38  
    39  // make sure we're using proto imports
    40  var (
    41  	_ = &iam_organization.Organization{}
    42  	_ = &iam_project.Project{}
    43  	_ = &common.Allowance{}
    44  	_ = &plan.Plan{}
    45  	_ = &plan_assignment.PlanAssignment{}
    46  	_ = &meta_service.Service{}
    47  	_ = &meta.Meta{}
    48  )
    49  
    50  func (o *PlanAssignmentRequest) GotenObjectExt() {}
    51  
    52  func (o *PlanAssignmentRequest) MakeFullFieldMask() *PlanAssignmentRequest_FieldMask {
    53  	return FullPlanAssignmentRequest_FieldMask()
    54  }
    55  
    56  func (o *PlanAssignmentRequest) MakeRawFullFieldMask() gotenobject.FieldMask {
    57  	return FullPlanAssignmentRequest_FieldMask()
    58  }
    59  
    60  func (o *PlanAssignmentRequest) MakeDiffFieldMask(other *PlanAssignmentRequest) *PlanAssignmentRequest_FieldMask {
    61  	if o == nil && other == nil {
    62  		return &PlanAssignmentRequest_FieldMask{}
    63  	}
    64  	if o == nil || other == nil {
    65  		return FullPlanAssignmentRequest_FieldMask()
    66  	}
    67  
    68  	res := &PlanAssignmentRequest_FieldMask{}
    69  	if o.GetName().String() != other.GetName().String() {
    70  		res.Paths = append(res.Paths, &PlanAssignmentRequest_FieldTerminalPath{selector: PlanAssignmentRequest_FieldPathSelectorName})
    71  	}
    72  	{
    73  		subMask := o.GetRequest().MakeDiffFieldMask(other.GetRequest())
    74  		if subMask.IsFull() {
    75  			res.Paths = append(res.Paths, &PlanAssignmentRequest_FieldTerminalPath{selector: PlanAssignmentRequest_FieldPathSelectorRequest})
    76  		} else {
    77  			for _, subpath := range subMask.Paths {
    78  				res.Paths = append(res.Paths, &PlanAssignmentRequest_FieldSubPath{selector: PlanAssignmentRequest_FieldPathSelectorRequest, subPath: subpath})
    79  			}
    80  		}
    81  	}
    82  	if o.GetService().String() != other.GetService().String() {
    83  		res.Paths = append(res.Paths, &PlanAssignmentRequest_FieldTerminalPath{selector: PlanAssignmentRequest_FieldPathSelectorService})
    84  	}
    85  	if o.GetApprover().String() != other.GetApprover().String() {
    86  		res.Paths = append(res.Paths, &PlanAssignmentRequest_FieldTerminalPath{selector: PlanAssignmentRequest_FieldPathSelectorApprover})
    87  	}
    88  	{
    89  		subMask := o.GetStatus().MakeDiffFieldMask(other.GetStatus())
    90  		if subMask.IsFull() {
    91  			res.Paths = append(res.Paths, &PlanAssignmentRequest_FieldTerminalPath{selector: PlanAssignmentRequest_FieldPathSelectorStatus})
    92  		} else {
    93  			for _, subpath := range subMask.Paths {
    94  				res.Paths = append(res.Paths, &PlanAssignmentRequest_FieldSubPath{selector: PlanAssignmentRequest_FieldPathSelectorStatus, subPath: subpath})
    95  			}
    96  		}
    97  	}
    98  	{
    99  		subMask := o.GetMetadata().MakeDiffFieldMask(other.GetMetadata())
   100  		if subMask.IsFull() {
   101  			res.Paths = append(res.Paths, &PlanAssignmentRequest_FieldTerminalPath{selector: PlanAssignmentRequest_FieldPathSelectorMetadata})
   102  		} else {
   103  			for _, subpath := range subMask.Paths {
   104  				res.Paths = append(res.Paths, &PlanAssignmentRequest_FieldSubPath{selector: PlanAssignmentRequest_FieldPathSelectorMetadata, subPath: subpath})
   105  			}
   106  		}
   107  	}
   108  	return res
   109  }
   110  
   111  func (o *PlanAssignmentRequest) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   112  	return o.MakeDiffFieldMask(other.(*PlanAssignmentRequest))
   113  }
   114  
   115  func (o *PlanAssignmentRequest) Clone() *PlanAssignmentRequest {
   116  	if o == nil {
   117  		return nil
   118  	}
   119  	result := &PlanAssignmentRequest{}
   120  	if o.Name == nil {
   121  		result.Name = nil
   122  	} else if data, err := o.Name.ProtoString(); err != nil {
   123  		panic(err)
   124  	} else {
   125  		result.Name = &Name{}
   126  		if err := result.Name.ParseProtoString(data); err != nil {
   127  			panic(err)
   128  		}
   129  	}
   130  	result.Request = o.Request.Clone()
   131  	if o.Service == nil {
   132  		result.Service = nil
   133  	} else if data, err := o.Service.ProtoString(); err != nil {
   134  		panic(err)
   135  	} else {
   136  		result.Service = &meta_service.Reference{}
   137  		if err := result.Service.ParseProtoString(data); err != nil {
   138  			panic(err)
   139  		}
   140  	}
   141  	if o.Approver == nil {
   142  		result.Approver = nil
   143  	} else if data, err := o.Approver.ProtoString(); err != nil {
   144  		panic(err)
   145  	} else {
   146  		result.Approver = &iam_organization.Reference{}
   147  		if err := result.Approver.ParseProtoString(data); err != nil {
   148  			panic(err)
   149  		}
   150  	}
   151  	result.Status = o.Status.Clone()
   152  	result.Metadata = o.Metadata.Clone()
   153  	return result
   154  }
   155  
   156  func (o *PlanAssignmentRequest) CloneRaw() gotenobject.GotenObjectExt {
   157  	return o.Clone()
   158  }
   159  
   160  func (o *PlanAssignmentRequest) Merge(source *PlanAssignmentRequest) {
   161  	if source.GetName() != nil {
   162  		if data, err := source.GetName().ProtoString(); err != nil {
   163  			panic(err)
   164  		} else {
   165  			o.Name = &Name{}
   166  			if err := o.Name.ParseProtoString(data); err != nil {
   167  				panic(err)
   168  			}
   169  		}
   170  	} else {
   171  		o.Name = nil
   172  	}
   173  	if source.GetRequest() != nil {
   174  		if o.Request == nil {
   175  			o.Request = new(PlanAssignmentRequest_RequestType)
   176  		}
   177  		o.Request.Merge(source.GetRequest())
   178  	}
   179  	if source.GetService() != nil {
   180  		if data, err := source.GetService().ProtoString(); err != nil {
   181  			panic(err)
   182  		} else {
   183  			o.Service = &meta_service.Reference{}
   184  			if err := o.Service.ParseProtoString(data); err != nil {
   185  				panic(err)
   186  			}
   187  		}
   188  	} else {
   189  		o.Service = nil
   190  	}
   191  	if source.GetApprover() != nil {
   192  		if data, err := source.GetApprover().ProtoString(); err != nil {
   193  			panic(err)
   194  		} else {
   195  			o.Approver = &iam_organization.Reference{}
   196  			if err := o.Approver.ParseProtoString(data); err != nil {
   197  				panic(err)
   198  			}
   199  		}
   200  	} else {
   201  		o.Approver = nil
   202  	}
   203  	if source.GetStatus() != nil {
   204  		if o.Status == nil {
   205  			o.Status = new(PlanAssignmentRequest_Status)
   206  		}
   207  		o.Status.Merge(source.GetStatus())
   208  	}
   209  	if source.GetMetadata() != nil {
   210  		if o.Metadata == nil {
   211  			o.Metadata = new(meta.Meta)
   212  		}
   213  		o.Metadata.Merge(source.GetMetadata())
   214  	}
   215  }
   216  
   217  func (o *PlanAssignmentRequest) MergeRaw(source gotenobject.GotenObjectExt) {
   218  	o.Merge(source.(*PlanAssignmentRequest))
   219  }
   220  
   221  func (o *PlanAssignmentRequest_Status) GotenObjectExt() {}
   222  
   223  func (o *PlanAssignmentRequest_Status) MakeFullFieldMask() *PlanAssignmentRequest_Status_FieldMask {
   224  	return FullPlanAssignmentRequest_Status_FieldMask()
   225  }
   226  
   227  func (o *PlanAssignmentRequest_Status) MakeRawFullFieldMask() gotenobject.FieldMask {
   228  	return FullPlanAssignmentRequest_Status_FieldMask()
   229  }
   230  
   231  func (o *PlanAssignmentRequest_Status) MakeDiffFieldMask(other *PlanAssignmentRequest_Status) *PlanAssignmentRequest_Status_FieldMask {
   232  	if o == nil && other == nil {
   233  		return &PlanAssignmentRequest_Status_FieldMask{}
   234  	}
   235  	if o == nil || other == nil {
   236  		return FullPlanAssignmentRequest_Status_FieldMask()
   237  	}
   238  
   239  	res := &PlanAssignmentRequest_Status_FieldMask{}
   240  	if o.GetConclusion() != other.GetConclusion() {
   241  		res.Paths = append(res.Paths, &PlanAssignmentRequestStatus_FieldTerminalPath{selector: PlanAssignmentRequestStatus_FieldPathSelectorConclusion})
   242  	}
   243  	if o.GetReason() != other.GetReason() {
   244  		res.Paths = append(res.Paths, &PlanAssignmentRequestStatus_FieldTerminalPath{selector: PlanAssignmentRequestStatus_FieldPathSelectorReason})
   245  	}
   246  	return res
   247  }
   248  
   249  func (o *PlanAssignmentRequest_Status) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   250  	return o.MakeDiffFieldMask(other.(*PlanAssignmentRequest_Status))
   251  }
   252  
   253  func (o *PlanAssignmentRequest_Status) Clone() *PlanAssignmentRequest_Status {
   254  	if o == nil {
   255  		return nil
   256  	}
   257  	result := &PlanAssignmentRequest_Status{}
   258  	result.Conclusion = o.Conclusion
   259  	result.Reason = o.Reason
   260  	return result
   261  }
   262  
   263  func (o *PlanAssignmentRequest_Status) CloneRaw() gotenobject.GotenObjectExt {
   264  	return o.Clone()
   265  }
   266  
   267  func (o *PlanAssignmentRequest_Status) Merge(source *PlanAssignmentRequest_Status) {
   268  	o.Conclusion = source.GetConclusion()
   269  	o.Reason = source.GetReason()
   270  }
   271  
   272  func (o *PlanAssignmentRequest_Status) MergeRaw(source gotenobject.GotenObjectExt) {
   273  	o.Merge(source.(*PlanAssignmentRequest_Status))
   274  }
   275  
   276  func (o *PlanAssignmentRequest_RequestType) GotenObjectExt() {}
   277  
   278  func (o *PlanAssignmentRequest_RequestType) MakeFullFieldMask() *PlanAssignmentRequest_RequestType_FieldMask {
   279  	return FullPlanAssignmentRequest_RequestType_FieldMask()
   280  }
   281  
   282  func (o *PlanAssignmentRequest_RequestType) MakeRawFullFieldMask() gotenobject.FieldMask {
   283  	return FullPlanAssignmentRequest_RequestType_FieldMask()
   284  }
   285  
   286  func (o *PlanAssignmentRequest_RequestType) MakeDiffFieldMask(other *PlanAssignmentRequest_RequestType) *PlanAssignmentRequest_RequestType_FieldMask {
   287  	if o == nil && other == nil {
   288  		return &PlanAssignmentRequest_RequestType_FieldMask{}
   289  	}
   290  	if o == nil || other == nil {
   291  		return FullPlanAssignmentRequest_RequestType_FieldMask()
   292  	}
   293  
   294  	res := &PlanAssignmentRequest_RequestType_FieldMask{}
   295  	{
   296  		_, leftSelected := o.Request.(*PlanAssignmentRequest_RequestType_Assign_)
   297  		_, rightSelected := other.Request.(*PlanAssignmentRequest_RequestType_Assign_)
   298  		if leftSelected == rightSelected {
   299  			subMask := o.GetAssign().MakeDiffFieldMask(other.GetAssign())
   300  			if subMask.IsFull() {
   301  				res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldTerminalPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorAssign})
   302  			} else {
   303  				for _, subpath := range subMask.Paths {
   304  					res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldSubPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorAssign, subPath: subpath})
   305  				}
   306  			}
   307  		} else {
   308  			res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldTerminalPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorAssign})
   309  		}
   310  	}
   311  	{
   312  		_, leftSelected := o.Request.(*PlanAssignmentRequest_RequestType_Extend_)
   313  		_, rightSelected := other.Request.(*PlanAssignmentRequest_RequestType_Extend_)
   314  		if leftSelected == rightSelected {
   315  			subMask := o.GetExtend().MakeDiffFieldMask(other.GetExtend())
   316  			if subMask.IsFull() {
   317  				res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldTerminalPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorExtend})
   318  			} else {
   319  				for _, subpath := range subMask.Paths {
   320  					res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldSubPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorExtend, subPath: subpath})
   321  				}
   322  			}
   323  		} else {
   324  			res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldTerminalPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorExtend})
   325  		}
   326  	}
   327  	{
   328  		_, leftSelected := o.Request.(*PlanAssignmentRequest_RequestType_Redistribute_)
   329  		_, rightSelected := other.Request.(*PlanAssignmentRequest_RequestType_Redistribute_)
   330  		if leftSelected == rightSelected {
   331  			subMask := o.GetRedistribute().MakeDiffFieldMask(other.GetRedistribute())
   332  			if subMask.IsFull() {
   333  				res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldTerminalPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorRedistribute})
   334  			} else {
   335  				for _, subpath := range subMask.Paths {
   336  					res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldSubPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorRedistribute, subPath: subpath})
   337  				}
   338  			}
   339  		} else {
   340  			res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldTerminalPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorRedistribute})
   341  		}
   342  	}
   343  	{
   344  		_, leftSelected := o.Request.(*PlanAssignmentRequest_RequestType_Unassign_)
   345  		_, rightSelected := other.Request.(*PlanAssignmentRequest_RequestType_Unassign_)
   346  		if leftSelected == rightSelected {
   347  			subMask := o.GetUnassign().MakeDiffFieldMask(other.GetUnassign())
   348  			if subMask.IsFull() {
   349  				res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldTerminalPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorUnassign})
   350  			} else {
   351  				for _, subpath := range subMask.Paths {
   352  					res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldSubPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorUnassign, subPath: subpath})
   353  				}
   354  			}
   355  		} else {
   356  			res.Paths = append(res.Paths, &PlanAssignmentRequestRequestType_FieldTerminalPath{selector: PlanAssignmentRequestRequestType_FieldPathSelectorUnassign})
   357  		}
   358  	}
   359  	return res
   360  }
   361  
   362  func (o *PlanAssignmentRequest_RequestType) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   363  	return o.MakeDiffFieldMask(other.(*PlanAssignmentRequest_RequestType))
   364  }
   365  
   366  func (o *PlanAssignmentRequest_RequestType) Clone() *PlanAssignmentRequest_RequestType {
   367  	if o == nil {
   368  		return nil
   369  	}
   370  	result := &PlanAssignmentRequest_RequestType{}
   371  	if o, ok := o.Request.(*PlanAssignmentRequest_RequestType_Assign_); ok {
   372  		result.Request = (*PlanAssignmentRequest_RequestType_Assign_)(nil)
   373  		if o != nil {
   374  			result.Request = &PlanAssignmentRequest_RequestType_Assign_{}
   375  			result := result.Request.(*PlanAssignmentRequest_RequestType_Assign_)
   376  			result.Assign = o.Assign.Clone()
   377  		}
   378  	}
   379  	if o, ok := o.Request.(*PlanAssignmentRequest_RequestType_Extend_); ok {
   380  		result.Request = (*PlanAssignmentRequest_RequestType_Extend_)(nil)
   381  		if o != nil {
   382  			result.Request = &PlanAssignmentRequest_RequestType_Extend_{}
   383  			result := result.Request.(*PlanAssignmentRequest_RequestType_Extend_)
   384  			result.Extend = o.Extend.Clone()
   385  		}
   386  	}
   387  	if o, ok := o.Request.(*PlanAssignmentRequest_RequestType_Redistribute_); ok {
   388  		result.Request = (*PlanAssignmentRequest_RequestType_Redistribute_)(nil)
   389  		if o != nil {
   390  			result.Request = &PlanAssignmentRequest_RequestType_Redistribute_{}
   391  			result := result.Request.(*PlanAssignmentRequest_RequestType_Redistribute_)
   392  			result.Redistribute = o.Redistribute.Clone()
   393  		}
   394  	}
   395  	if o, ok := o.Request.(*PlanAssignmentRequest_RequestType_Unassign_); ok {
   396  		result.Request = (*PlanAssignmentRequest_RequestType_Unassign_)(nil)
   397  		if o != nil {
   398  			result.Request = &PlanAssignmentRequest_RequestType_Unassign_{}
   399  			result := result.Request.(*PlanAssignmentRequest_RequestType_Unassign_)
   400  			result.Unassign = o.Unassign.Clone()
   401  		}
   402  	}
   403  	return result
   404  }
   405  
   406  func (o *PlanAssignmentRequest_RequestType) CloneRaw() gotenobject.GotenObjectExt {
   407  	return o.Clone()
   408  }
   409  
   410  func (o *PlanAssignmentRequest_RequestType) Merge(source *PlanAssignmentRequest_RequestType) {
   411  	if source, ok := source.GetRequest().(*PlanAssignmentRequest_RequestType_Assign_); ok {
   412  		if dstOneOf, ok := o.Request.(*PlanAssignmentRequest_RequestType_Assign_); !ok || dstOneOf == nil {
   413  			o.Request = &PlanAssignmentRequest_RequestType_Assign_{}
   414  		}
   415  		if source != nil {
   416  			o := o.Request.(*PlanAssignmentRequest_RequestType_Assign_)
   417  			if source.Assign != nil {
   418  				if o.Assign == nil {
   419  					o.Assign = new(PlanAssignmentRequest_RequestType_Assign)
   420  				}
   421  				o.Assign.Merge(source.Assign)
   422  			}
   423  		}
   424  	}
   425  	if source, ok := source.GetRequest().(*PlanAssignmentRequest_RequestType_Extend_); ok {
   426  		if dstOneOf, ok := o.Request.(*PlanAssignmentRequest_RequestType_Extend_); !ok || dstOneOf == nil {
   427  			o.Request = &PlanAssignmentRequest_RequestType_Extend_{}
   428  		}
   429  		if source != nil {
   430  			o := o.Request.(*PlanAssignmentRequest_RequestType_Extend_)
   431  			if source.Extend != nil {
   432  				if o.Extend == nil {
   433  					o.Extend = new(PlanAssignmentRequest_RequestType_Extend)
   434  				}
   435  				o.Extend.Merge(source.Extend)
   436  			}
   437  		}
   438  	}
   439  	if source, ok := source.GetRequest().(*PlanAssignmentRequest_RequestType_Redistribute_); ok {
   440  		if dstOneOf, ok := o.Request.(*PlanAssignmentRequest_RequestType_Redistribute_); !ok || dstOneOf == nil {
   441  			o.Request = &PlanAssignmentRequest_RequestType_Redistribute_{}
   442  		}
   443  		if source != nil {
   444  			o := o.Request.(*PlanAssignmentRequest_RequestType_Redistribute_)
   445  			if source.Redistribute != nil {
   446  				if o.Redistribute == nil {
   447  					o.Redistribute = new(PlanAssignmentRequest_RequestType_Redistribute)
   448  				}
   449  				o.Redistribute.Merge(source.Redistribute)
   450  			}
   451  		}
   452  	}
   453  	if source, ok := source.GetRequest().(*PlanAssignmentRequest_RequestType_Unassign_); ok {
   454  		if dstOneOf, ok := o.Request.(*PlanAssignmentRequest_RequestType_Unassign_); !ok || dstOneOf == nil {
   455  			o.Request = &PlanAssignmentRequest_RequestType_Unassign_{}
   456  		}
   457  		if source != nil {
   458  			o := o.Request.(*PlanAssignmentRequest_RequestType_Unassign_)
   459  			if source.Unassign != nil {
   460  				if o.Unassign == nil {
   461  					o.Unassign = new(PlanAssignmentRequest_RequestType_Unassign)
   462  				}
   463  				o.Unassign.Merge(source.Unassign)
   464  			}
   465  		}
   466  	}
   467  }
   468  
   469  func (o *PlanAssignmentRequest_RequestType) MergeRaw(source gotenobject.GotenObjectExt) {
   470  	o.Merge(source.(*PlanAssignmentRequest_RequestType))
   471  }
   472  
   473  func (o *PlanAssignmentRequest_RequestType_Assign) GotenObjectExt() {}
   474  
   475  func (o *PlanAssignmentRequest_RequestType_Assign) MakeFullFieldMask() *PlanAssignmentRequest_RequestType_Assign_FieldMask {
   476  	return FullPlanAssignmentRequest_RequestType_Assign_FieldMask()
   477  }
   478  
   479  func (o *PlanAssignmentRequest_RequestType_Assign) MakeRawFullFieldMask() gotenobject.FieldMask {
   480  	return FullPlanAssignmentRequest_RequestType_Assign_FieldMask()
   481  }
   482  
   483  func (o *PlanAssignmentRequest_RequestType_Assign) MakeDiffFieldMask(other *PlanAssignmentRequest_RequestType_Assign) *PlanAssignmentRequest_RequestType_Assign_FieldMask {
   484  	if o == nil && other == nil {
   485  		return &PlanAssignmentRequest_RequestType_Assign_FieldMask{}
   486  	}
   487  	if o == nil || other == nil {
   488  		return FullPlanAssignmentRequest_RequestType_Assign_FieldMask()
   489  	}
   490  
   491  	res := &PlanAssignmentRequest_RequestType_Assign_FieldMask{}
   492  	if o.GetPlan().String() != other.GetPlan().String() {
   493  		res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeAssign_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeAssign_FieldPathSelectorPlan})
   494  	}
   495  
   496  	if len(o.GetExtensions()) == len(other.GetExtensions()) {
   497  		for i, lValue := range o.GetExtensions() {
   498  			rValue := other.GetExtensions()[i]
   499  			if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 {
   500  				res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeAssign_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeAssign_FieldPathSelectorExtensions})
   501  				break
   502  			}
   503  		}
   504  	} else {
   505  		res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeAssign_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeAssign_FieldPathSelectorExtensions})
   506  	}
   507  
   508  	if len(o.GetRegionalDistributions()) == len(other.GetRegionalDistributions()) {
   509  		for i, lValue := range o.GetRegionalDistributions() {
   510  			rValue := other.GetRegionalDistributions()[i]
   511  			if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 {
   512  				res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeAssign_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeAssign_FieldPathSelectorRegionalDistributions})
   513  				break
   514  			}
   515  		}
   516  	} else {
   517  		res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeAssign_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeAssign_FieldPathSelectorRegionalDistributions})
   518  	}
   519  	return res
   520  }
   521  
   522  func (o *PlanAssignmentRequest_RequestType_Assign) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   523  	return o.MakeDiffFieldMask(other.(*PlanAssignmentRequest_RequestType_Assign))
   524  }
   525  
   526  func (o *PlanAssignmentRequest_RequestType_Assign) Clone() *PlanAssignmentRequest_RequestType_Assign {
   527  	if o == nil {
   528  		return nil
   529  	}
   530  	result := &PlanAssignmentRequest_RequestType_Assign{}
   531  	if o.Plan == nil {
   532  		result.Plan = nil
   533  	} else if data, err := o.Plan.ProtoString(); err != nil {
   534  		panic(err)
   535  	} else {
   536  		result.Plan = &plan.Reference{}
   537  		if err := result.Plan.ParseProtoString(data); err != nil {
   538  			panic(err)
   539  		}
   540  	}
   541  	result.Extensions = make([]*common.Allowance, len(o.Extensions))
   542  	for i, sourceValue := range o.Extensions {
   543  		result.Extensions[i] = sourceValue.Clone()
   544  	}
   545  	result.RegionalDistributions = make([]*common.RegionalDistribution, len(o.RegionalDistributions))
   546  	for i, sourceValue := range o.RegionalDistributions {
   547  		result.RegionalDistributions[i] = sourceValue.Clone()
   548  	}
   549  	return result
   550  }
   551  
   552  func (o *PlanAssignmentRequest_RequestType_Assign) CloneRaw() gotenobject.GotenObjectExt {
   553  	return o.Clone()
   554  }
   555  
   556  func (o *PlanAssignmentRequest_RequestType_Assign) Merge(source *PlanAssignmentRequest_RequestType_Assign) {
   557  	if source.GetPlan() != nil {
   558  		if data, err := source.GetPlan().ProtoString(); err != nil {
   559  			panic(err)
   560  		} else {
   561  			o.Plan = &plan.Reference{}
   562  			if err := o.Plan.ParseProtoString(data); err != nil {
   563  				panic(err)
   564  			}
   565  		}
   566  	} else {
   567  		o.Plan = nil
   568  	}
   569  	for _, sourceValue := range source.GetExtensions() {
   570  		exists := false
   571  		for _, currentValue := range o.Extensions {
   572  			if proto.Equal(sourceValue, currentValue) {
   573  				exists = true
   574  				break
   575  			}
   576  		}
   577  		if !exists {
   578  			var newDstElement *common.Allowance
   579  			if sourceValue != nil {
   580  				newDstElement = new(common.Allowance)
   581  				newDstElement.Merge(sourceValue)
   582  			}
   583  			o.Extensions = append(o.Extensions, newDstElement)
   584  		}
   585  	}
   586  
   587  	for _, sourceValue := range source.GetRegionalDistributions() {
   588  		exists := false
   589  		for _, currentValue := range o.RegionalDistributions {
   590  			if proto.Equal(sourceValue, currentValue) {
   591  				exists = true
   592  				break
   593  			}
   594  		}
   595  		if !exists {
   596  			var newDstElement *common.RegionalDistribution
   597  			if sourceValue != nil {
   598  				newDstElement = new(common.RegionalDistribution)
   599  				newDstElement.Merge(sourceValue)
   600  			}
   601  			o.RegionalDistributions = append(o.RegionalDistributions, newDstElement)
   602  		}
   603  	}
   604  
   605  }
   606  
   607  func (o *PlanAssignmentRequest_RequestType_Assign) MergeRaw(source gotenobject.GotenObjectExt) {
   608  	o.Merge(source.(*PlanAssignmentRequest_RequestType_Assign))
   609  }
   610  
   611  func (o *PlanAssignmentRequest_RequestType_Extend) GotenObjectExt() {}
   612  
   613  func (o *PlanAssignmentRequest_RequestType_Extend) MakeFullFieldMask() *PlanAssignmentRequest_RequestType_Extend_FieldMask {
   614  	return FullPlanAssignmentRequest_RequestType_Extend_FieldMask()
   615  }
   616  
   617  func (o *PlanAssignmentRequest_RequestType_Extend) MakeRawFullFieldMask() gotenobject.FieldMask {
   618  	return FullPlanAssignmentRequest_RequestType_Extend_FieldMask()
   619  }
   620  
   621  func (o *PlanAssignmentRequest_RequestType_Extend) MakeDiffFieldMask(other *PlanAssignmentRequest_RequestType_Extend) *PlanAssignmentRequest_RequestType_Extend_FieldMask {
   622  	if o == nil && other == nil {
   623  		return &PlanAssignmentRequest_RequestType_Extend_FieldMask{}
   624  	}
   625  	if o == nil || other == nil {
   626  		return FullPlanAssignmentRequest_RequestType_Extend_FieldMask()
   627  	}
   628  
   629  	res := &PlanAssignmentRequest_RequestType_Extend_FieldMask{}
   630  	if o.GetAssignment().String() != other.GetAssignment().String() {
   631  		res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeExtend_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeExtend_FieldPathSelectorAssignment})
   632  	}
   633  
   634  	if len(o.GetAdditions()) == len(other.GetAdditions()) {
   635  		for i, lValue := range o.GetAdditions() {
   636  			rValue := other.GetAdditions()[i]
   637  			if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 {
   638  				res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeExtend_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeExtend_FieldPathSelectorAdditions})
   639  				break
   640  			}
   641  		}
   642  	} else {
   643  		res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeExtend_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeExtend_FieldPathSelectorAdditions})
   644  	}
   645  
   646  	if len(o.GetRegionalDistributions()) == len(other.GetRegionalDistributions()) {
   647  		for i, lValue := range o.GetRegionalDistributions() {
   648  			rValue := other.GetRegionalDistributions()[i]
   649  			if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 {
   650  				res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeExtend_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeExtend_FieldPathSelectorRegionalDistributions})
   651  				break
   652  			}
   653  		}
   654  	} else {
   655  		res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeExtend_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeExtend_FieldPathSelectorRegionalDistributions})
   656  	}
   657  	return res
   658  }
   659  
   660  func (o *PlanAssignmentRequest_RequestType_Extend) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   661  	return o.MakeDiffFieldMask(other.(*PlanAssignmentRequest_RequestType_Extend))
   662  }
   663  
   664  func (o *PlanAssignmentRequest_RequestType_Extend) Clone() *PlanAssignmentRequest_RequestType_Extend {
   665  	if o == nil {
   666  		return nil
   667  	}
   668  	result := &PlanAssignmentRequest_RequestType_Extend{}
   669  	if o.Assignment == nil {
   670  		result.Assignment = nil
   671  	} else if data, err := o.Assignment.ProtoString(); err != nil {
   672  		panic(err)
   673  	} else {
   674  		result.Assignment = &plan_assignment.Reference{}
   675  		if err := result.Assignment.ParseProtoString(data); err != nil {
   676  			panic(err)
   677  		}
   678  	}
   679  	result.Additions = make([]*common.Allowance, len(o.Additions))
   680  	for i, sourceValue := range o.Additions {
   681  		result.Additions[i] = sourceValue.Clone()
   682  	}
   683  	result.RegionalDistributions = make([]*common.RegionalDistribution, len(o.RegionalDistributions))
   684  	for i, sourceValue := range o.RegionalDistributions {
   685  		result.RegionalDistributions[i] = sourceValue.Clone()
   686  	}
   687  	return result
   688  }
   689  
   690  func (o *PlanAssignmentRequest_RequestType_Extend) CloneRaw() gotenobject.GotenObjectExt {
   691  	return o.Clone()
   692  }
   693  
   694  func (o *PlanAssignmentRequest_RequestType_Extend) Merge(source *PlanAssignmentRequest_RequestType_Extend) {
   695  	if source.GetAssignment() != nil {
   696  		if data, err := source.GetAssignment().ProtoString(); err != nil {
   697  			panic(err)
   698  		} else {
   699  			o.Assignment = &plan_assignment.Reference{}
   700  			if err := o.Assignment.ParseProtoString(data); err != nil {
   701  				panic(err)
   702  			}
   703  		}
   704  	} else {
   705  		o.Assignment = nil
   706  	}
   707  	for _, sourceValue := range source.GetAdditions() {
   708  		exists := false
   709  		for _, currentValue := range o.Additions {
   710  			if proto.Equal(sourceValue, currentValue) {
   711  				exists = true
   712  				break
   713  			}
   714  		}
   715  		if !exists {
   716  			var newDstElement *common.Allowance
   717  			if sourceValue != nil {
   718  				newDstElement = new(common.Allowance)
   719  				newDstElement.Merge(sourceValue)
   720  			}
   721  			o.Additions = append(o.Additions, newDstElement)
   722  		}
   723  	}
   724  
   725  	for _, sourceValue := range source.GetRegionalDistributions() {
   726  		exists := false
   727  		for _, currentValue := range o.RegionalDistributions {
   728  			if proto.Equal(sourceValue, currentValue) {
   729  				exists = true
   730  				break
   731  			}
   732  		}
   733  		if !exists {
   734  			var newDstElement *common.RegionalDistribution
   735  			if sourceValue != nil {
   736  				newDstElement = new(common.RegionalDistribution)
   737  				newDstElement.Merge(sourceValue)
   738  			}
   739  			o.RegionalDistributions = append(o.RegionalDistributions, newDstElement)
   740  		}
   741  	}
   742  
   743  }
   744  
   745  func (o *PlanAssignmentRequest_RequestType_Extend) MergeRaw(source gotenobject.GotenObjectExt) {
   746  	o.Merge(source.(*PlanAssignmentRequest_RequestType_Extend))
   747  }
   748  
   749  func (o *PlanAssignmentRequest_RequestType_Redistribute) GotenObjectExt() {}
   750  
   751  func (o *PlanAssignmentRequest_RequestType_Redistribute) MakeFullFieldMask() *PlanAssignmentRequest_RequestType_Redistribute_FieldMask {
   752  	return FullPlanAssignmentRequest_RequestType_Redistribute_FieldMask()
   753  }
   754  
   755  func (o *PlanAssignmentRequest_RequestType_Redistribute) MakeRawFullFieldMask() gotenobject.FieldMask {
   756  	return FullPlanAssignmentRequest_RequestType_Redistribute_FieldMask()
   757  }
   758  
   759  func (o *PlanAssignmentRequest_RequestType_Redistribute) MakeDiffFieldMask(other *PlanAssignmentRequest_RequestType_Redistribute) *PlanAssignmentRequest_RequestType_Redistribute_FieldMask {
   760  	if o == nil && other == nil {
   761  		return &PlanAssignmentRequest_RequestType_Redistribute_FieldMask{}
   762  	}
   763  	if o == nil || other == nil {
   764  		return FullPlanAssignmentRequest_RequestType_Redistribute_FieldMask()
   765  	}
   766  
   767  	res := &PlanAssignmentRequest_RequestType_Redistribute_FieldMask{}
   768  	if o.GetAssignment().String() != other.GetAssignment().String() {
   769  		res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeRedistribute_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeRedistribute_FieldPathSelectorAssignment})
   770  	}
   771  
   772  	if len(o.GetRegionalDistributions()) == len(other.GetRegionalDistributions()) {
   773  		for i, lValue := range o.GetRegionalDistributions() {
   774  			rValue := other.GetRegionalDistributions()[i]
   775  			if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 {
   776  				res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeRedistribute_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeRedistribute_FieldPathSelectorRegionalDistributions})
   777  				break
   778  			}
   779  		}
   780  	} else {
   781  		res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeRedistribute_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeRedistribute_FieldPathSelectorRegionalDistributions})
   782  	}
   783  	return res
   784  }
   785  
   786  func (o *PlanAssignmentRequest_RequestType_Redistribute) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   787  	return o.MakeDiffFieldMask(other.(*PlanAssignmentRequest_RequestType_Redistribute))
   788  }
   789  
   790  func (o *PlanAssignmentRequest_RequestType_Redistribute) Clone() *PlanAssignmentRequest_RequestType_Redistribute {
   791  	if o == nil {
   792  		return nil
   793  	}
   794  	result := &PlanAssignmentRequest_RequestType_Redistribute{}
   795  	if o.Assignment == nil {
   796  		result.Assignment = nil
   797  	} else if data, err := o.Assignment.ProtoString(); err != nil {
   798  		panic(err)
   799  	} else {
   800  		result.Assignment = &plan_assignment.Reference{}
   801  		if err := result.Assignment.ParseProtoString(data); err != nil {
   802  			panic(err)
   803  		}
   804  	}
   805  	result.RegionalDistributions = make([]*common.RegionalDistribution, len(o.RegionalDistributions))
   806  	for i, sourceValue := range o.RegionalDistributions {
   807  		result.RegionalDistributions[i] = sourceValue.Clone()
   808  	}
   809  	return result
   810  }
   811  
   812  func (o *PlanAssignmentRequest_RequestType_Redistribute) CloneRaw() gotenobject.GotenObjectExt {
   813  	return o.Clone()
   814  }
   815  
   816  func (o *PlanAssignmentRequest_RequestType_Redistribute) Merge(source *PlanAssignmentRequest_RequestType_Redistribute) {
   817  	if source.GetAssignment() != nil {
   818  		if data, err := source.GetAssignment().ProtoString(); err != nil {
   819  			panic(err)
   820  		} else {
   821  			o.Assignment = &plan_assignment.Reference{}
   822  			if err := o.Assignment.ParseProtoString(data); err != nil {
   823  				panic(err)
   824  			}
   825  		}
   826  	} else {
   827  		o.Assignment = nil
   828  	}
   829  	for _, sourceValue := range source.GetRegionalDistributions() {
   830  		exists := false
   831  		for _, currentValue := range o.RegionalDistributions {
   832  			if proto.Equal(sourceValue, currentValue) {
   833  				exists = true
   834  				break
   835  			}
   836  		}
   837  		if !exists {
   838  			var newDstElement *common.RegionalDistribution
   839  			if sourceValue != nil {
   840  				newDstElement = new(common.RegionalDistribution)
   841  				newDstElement.Merge(sourceValue)
   842  			}
   843  			o.RegionalDistributions = append(o.RegionalDistributions, newDstElement)
   844  		}
   845  	}
   846  
   847  }
   848  
   849  func (o *PlanAssignmentRequest_RequestType_Redistribute) MergeRaw(source gotenobject.GotenObjectExt) {
   850  	o.Merge(source.(*PlanAssignmentRequest_RequestType_Redistribute))
   851  }
   852  
   853  func (o *PlanAssignmentRequest_RequestType_Unassign) GotenObjectExt() {}
   854  
   855  func (o *PlanAssignmentRequest_RequestType_Unassign) MakeFullFieldMask() *PlanAssignmentRequest_RequestType_Unassign_FieldMask {
   856  	return FullPlanAssignmentRequest_RequestType_Unassign_FieldMask()
   857  }
   858  
   859  func (o *PlanAssignmentRequest_RequestType_Unassign) MakeRawFullFieldMask() gotenobject.FieldMask {
   860  	return FullPlanAssignmentRequest_RequestType_Unassign_FieldMask()
   861  }
   862  
   863  func (o *PlanAssignmentRequest_RequestType_Unassign) MakeDiffFieldMask(other *PlanAssignmentRequest_RequestType_Unassign) *PlanAssignmentRequest_RequestType_Unassign_FieldMask {
   864  	if o == nil && other == nil {
   865  		return &PlanAssignmentRequest_RequestType_Unassign_FieldMask{}
   866  	}
   867  	if o == nil || other == nil {
   868  		return FullPlanAssignmentRequest_RequestType_Unassign_FieldMask()
   869  	}
   870  
   871  	res := &PlanAssignmentRequest_RequestType_Unassign_FieldMask{}
   872  	if o.GetAssignment().String() != other.GetAssignment().String() {
   873  		res.Paths = append(res.Paths, &PlanAssignmentRequestRequestTypeUnassign_FieldTerminalPath{selector: PlanAssignmentRequestRequestTypeUnassign_FieldPathSelectorAssignment})
   874  	}
   875  	return res
   876  }
   877  
   878  func (o *PlanAssignmentRequest_RequestType_Unassign) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   879  	return o.MakeDiffFieldMask(other.(*PlanAssignmentRequest_RequestType_Unassign))
   880  }
   881  
   882  func (o *PlanAssignmentRequest_RequestType_Unassign) Clone() *PlanAssignmentRequest_RequestType_Unassign {
   883  	if o == nil {
   884  		return nil
   885  	}
   886  	result := &PlanAssignmentRequest_RequestType_Unassign{}
   887  	if o.Assignment == nil {
   888  		result.Assignment = nil
   889  	} else if data, err := o.Assignment.ProtoString(); err != nil {
   890  		panic(err)
   891  	} else {
   892  		result.Assignment = &plan_assignment.Reference{}
   893  		if err := result.Assignment.ParseProtoString(data); err != nil {
   894  			panic(err)
   895  		}
   896  	}
   897  	return result
   898  }
   899  
   900  func (o *PlanAssignmentRequest_RequestType_Unassign) CloneRaw() gotenobject.GotenObjectExt {
   901  	return o.Clone()
   902  }
   903  
   904  func (o *PlanAssignmentRequest_RequestType_Unassign) Merge(source *PlanAssignmentRequest_RequestType_Unassign) {
   905  	if source.GetAssignment() != nil {
   906  		if data, err := source.GetAssignment().ProtoString(); err != nil {
   907  			panic(err)
   908  		} else {
   909  			o.Assignment = &plan_assignment.Reference{}
   910  			if err := o.Assignment.ParseProtoString(data); err != nil {
   911  				panic(err)
   912  			}
   913  		}
   914  	} else {
   915  		o.Assignment = nil
   916  	}
   917  }
   918  
   919  func (o *PlanAssignmentRequest_RequestType_Unassign) MergeRaw(source gotenobject.GotenObjectExt) {
   920  	o.Merge(source.(*PlanAssignmentRequest_RequestType_Unassign))
   921  }