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

     1  // Code generated by protoc-gen-goten-object
     2  // File: edgelq/limits/proto/v1alpha2/accepted_plan.proto
     3  // DO NOT EDIT!!!
     4  
     5  package accepted_plan
     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  	meta_service "github.com/cloudwan/edgelq-sdk/meta/resources/v1alpha2/service"
    24  	meta "github.com/cloudwan/goten-sdk/types/meta"
    25  )
    26  
    27  // ensure the imports are used
    28  var (
    29  	_ = new(fmt.Stringer)
    30  	_ = new(sort.Interface)
    31  
    32  	_ = new(proto.Message)
    33  	_ = googlefieldmaskpb.FieldMask{}
    34  
    35  	_ = new(gotenobject.FieldPath)
    36  )
    37  
    38  // make sure we're using proto imports
    39  var (
    40  	_ = &iam_organization.Organization{}
    41  	_ = &iam_project.Project{}
    42  	_ = &common.Allowance{}
    43  	_ = &plan.Plan{}
    44  	_ = &meta_service.Service{}
    45  	_ = &meta.Meta{}
    46  )
    47  
    48  func (o *AcceptedPlan) GotenObjectExt() {}
    49  
    50  func (o *AcceptedPlan) MakeFullFieldMask() *AcceptedPlan_FieldMask {
    51  	return FullAcceptedPlan_FieldMask()
    52  }
    53  
    54  func (o *AcceptedPlan) MakeRawFullFieldMask() gotenobject.FieldMask {
    55  	return FullAcceptedPlan_FieldMask()
    56  }
    57  
    58  func (o *AcceptedPlan) MakeDiffFieldMask(other *AcceptedPlan) *AcceptedPlan_FieldMask {
    59  	if o == nil && other == nil {
    60  		return &AcceptedPlan_FieldMask{}
    61  	}
    62  	if o == nil || other == nil {
    63  		return FullAcceptedPlan_FieldMask()
    64  	}
    65  
    66  	res := &AcceptedPlan_FieldMask{}
    67  	if o.GetName().String() != other.GetName().String() {
    68  		res.Paths = append(res.Paths, &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorName})
    69  	}
    70  	if o.GetPlan().String() != other.GetPlan().String() {
    71  		res.Paths = append(res.Paths, &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorPlan})
    72  	}
    73  	if o.GetService().String() != other.GetService().String() {
    74  		res.Paths = append(res.Paths, &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorService})
    75  	}
    76  
    77  	if len(o.GetExtensions()) == len(other.GetExtensions()) {
    78  		for i, lValue := range o.GetExtensions() {
    79  			rValue := other.GetExtensions()[i]
    80  			if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 {
    81  				res.Paths = append(res.Paths, &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorExtensions})
    82  				break
    83  			}
    84  		}
    85  	} else {
    86  		res.Paths = append(res.Paths, &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorExtensions})
    87  	}
    88  
    89  	if len(o.GetRegionalDistributions()) == len(other.GetRegionalDistributions()) {
    90  		for i, lValue := range o.GetRegionalDistributions() {
    91  			rValue := other.GetRegionalDistributions()[i]
    92  			if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 {
    93  				res.Paths = append(res.Paths, &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorRegionalDistributions})
    94  				break
    95  			}
    96  		}
    97  	} else {
    98  		res.Paths = append(res.Paths, &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorRegionalDistributions})
    99  	}
   100  	{
   101  		subMask := o.GetAssignee().MakeDiffFieldMask(other.GetAssignee())
   102  		if subMask.IsFull() {
   103  			res.Paths = append(res.Paths, &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorAssignee})
   104  		} else {
   105  			for _, subpath := range subMask.Paths {
   106  				res.Paths = append(res.Paths, &AcceptedPlan_FieldSubPath{selector: AcceptedPlan_FieldPathSelectorAssignee, subPath: subpath})
   107  			}
   108  		}
   109  	}
   110  	{
   111  		subMask := o.GetMetadata().MakeDiffFieldMask(other.GetMetadata())
   112  		if subMask.IsFull() {
   113  			res.Paths = append(res.Paths, &AcceptedPlan_FieldTerminalPath{selector: AcceptedPlan_FieldPathSelectorMetadata})
   114  		} else {
   115  			for _, subpath := range subMask.Paths {
   116  				res.Paths = append(res.Paths, &AcceptedPlan_FieldSubPath{selector: AcceptedPlan_FieldPathSelectorMetadata, subPath: subpath})
   117  			}
   118  		}
   119  	}
   120  	return res
   121  }
   122  
   123  func (o *AcceptedPlan) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   124  	return o.MakeDiffFieldMask(other.(*AcceptedPlan))
   125  }
   126  
   127  func (o *AcceptedPlan) Clone() *AcceptedPlan {
   128  	if o == nil {
   129  		return nil
   130  	}
   131  	result := &AcceptedPlan{}
   132  	if o.Name == nil {
   133  		result.Name = nil
   134  	} else if data, err := o.Name.ProtoString(); err != nil {
   135  		panic(err)
   136  	} else {
   137  		result.Name = &Name{}
   138  		if err := result.Name.ParseProtoString(data); err != nil {
   139  			panic(err)
   140  		}
   141  	}
   142  	if o.Plan == nil {
   143  		result.Plan = nil
   144  	} else if data, err := o.Plan.ProtoString(); err != nil {
   145  		panic(err)
   146  	} else {
   147  		result.Plan = &plan.Reference{}
   148  		if err := result.Plan.ParseProtoString(data); err != nil {
   149  			panic(err)
   150  		}
   151  	}
   152  	if o.Service == nil {
   153  		result.Service = nil
   154  	} else if data, err := o.Service.ProtoString(); err != nil {
   155  		panic(err)
   156  	} else {
   157  		result.Service = &meta_service.Reference{}
   158  		if err := result.Service.ParseProtoString(data); err != nil {
   159  			panic(err)
   160  		}
   161  	}
   162  	result.Extensions = make([]*common.Allowance, len(o.Extensions))
   163  	for i, sourceValue := range o.Extensions {
   164  		result.Extensions[i] = sourceValue.Clone()
   165  	}
   166  	result.RegionalDistributions = make([]*common.RegionalDistribution, len(o.RegionalDistributions))
   167  	for i, sourceValue := range o.RegionalDistributions {
   168  		result.RegionalDistributions[i] = sourceValue.Clone()
   169  	}
   170  	result.Assignee = o.Assignee.Clone()
   171  	result.Metadata = o.Metadata.Clone()
   172  	return result
   173  }
   174  
   175  func (o *AcceptedPlan) CloneRaw() gotenobject.GotenObjectExt {
   176  	return o.Clone()
   177  }
   178  
   179  func (o *AcceptedPlan) Merge(source *AcceptedPlan) {
   180  	if source.GetName() != nil {
   181  		if data, err := source.GetName().ProtoString(); err != nil {
   182  			panic(err)
   183  		} else {
   184  			o.Name = &Name{}
   185  			if err := o.Name.ParseProtoString(data); err != nil {
   186  				panic(err)
   187  			}
   188  		}
   189  	} else {
   190  		o.Name = nil
   191  	}
   192  	if source.GetPlan() != nil {
   193  		if data, err := source.GetPlan().ProtoString(); err != nil {
   194  			panic(err)
   195  		} else {
   196  			o.Plan = &plan.Reference{}
   197  			if err := o.Plan.ParseProtoString(data); err != nil {
   198  				panic(err)
   199  			}
   200  		}
   201  	} else {
   202  		o.Plan = nil
   203  	}
   204  	if source.GetService() != nil {
   205  		if data, err := source.GetService().ProtoString(); err != nil {
   206  			panic(err)
   207  		} else {
   208  			o.Service = &meta_service.Reference{}
   209  			if err := o.Service.ParseProtoString(data); err != nil {
   210  				panic(err)
   211  			}
   212  		}
   213  	} else {
   214  		o.Service = nil
   215  	}
   216  	for _, sourceValue := range source.GetExtensions() {
   217  		exists := false
   218  		for _, currentValue := range o.Extensions {
   219  			if proto.Equal(sourceValue, currentValue) {
   220  				exists = true
   221  				break
   222  			}
   223  		}
   224  		if !exists {
   225  			var newDstElement *common.Allowance
   226  			if sourceValue != nil {
   227  				newDstElement = new(common.Allowance)
   228  				newDstElement.Merge(sourceValue)
   229  			}
   230  			o.Extensions = append(o.Extensions, newDstElement)
   231  		}
   232  	}
   233  
   234  	for _, sourceValue := range source.GetRegionalDistributions() {
   235  		exists := false
   236  		for _, currentValue := range o.RegionalDistributions {
   237  			if proto.Equal(sourceValue, currentValue) {
   238  				exists = true
   239  				break
   240  			}
   241  		}
   242  		if !exists {
   243  			var newDstElement *common.RegionalDistribution
   244  			if sourceValue != nil {
   245  				newDstElement = new(common.RegionalDistribution)
   246  				newDstElement.Merge(sourceValue)
   247  			}
   248  			o.RegionalDistributions = append(o.RegionalDistributions, newDstElement)
   249  		}
   250  	}
   251  
   252  	if source.GetAssignee() != nil {
   253  		if o.Assignee == nil {
   254  			o.Assignee = new(AcceptedPlan_Assignee)
   255  		}
   256  		o.Assignee.Merge(source.GetAssignee())
   257  	}
   258  	if source.GetMetadata() != nil {
   259  		if o.Metadata == nil {
   260  			o.Metadata = new(meta.Meta)
   261  		}
   262  		o.Metadata.Merge(source.GetMetadata())
   263  	}
   264  }
   265  
   266  func (o *AcceptedPlan) MergeRaw(source gotenobject.GotenObjectExt) {
   267  	o.Merge(source.(*AcceptedPlan))
   268  }
   269  
   270  func (o *AcceptedPlan_Assignee) GotenObjectExt() {}
   271  
   272  func (o *AcceptedPlan_Assignee) MakeFullFieldMask() *AcceptedPlan_Assignee_FieldMask {
   273  	return FullAcceptedPlan_Assignee_FieldMask()
   274  }
   275  
   276  func (o *AcceptedPlan_Assignee) MakeRawFullFieldMask() gotenobject.FieldMask {
   277  	return FullAcceptedPlan_Assignee_FieldMask()
   278  }
   279  
   280  func (o *AcceptedPlan_Assignee) MakeDiffFieldMask(other *AcceptedPlan_Assignee) *AcceptedPlan_Assignee_FieldMask {
   281  	if o == nil && other == nil {
   282  		return &AcceptedPlan_Assignee_FieldMask{}
   283  	}
   284  	if o == nil || other == nil {
   285  		return FullAcceptedPlan_Assignee_FieldMask()
   286  	}
   287  
   288  	res := &AcceptedPlan_Assignee_FieldMask{}
   289  	{
   290  		_, leftSelected := o.Assignee.(*AcceptedPlan_Assignee_ProjectAssignee)
   291  		_, rightSelected := other.Assignee.(*AcceptedPlan_Assignee_ProjectAssignee)
   292  		if leftSelected == rightSelected {
   293  			if o.GetProjectAssignee().String() != other.GetProjectAssignee().String() {
   294  				res.Paths = append(res.Paths, &AcceptedPlanAssignee_FieldTerminalPath{selector: AcceptedPlanAssignee_FieldPathSelectorProjectAssignee})
   295  			}
   296  		} else {
   297  			res.Paths = append(res.Paths, &AcceptedPlanAssignee_FieldTerminalPath{selector: AcceptedPlanAssignee_FieldPathSelectorProjectAssignee})
   298  		}
   299  	}
   300  	{
   301  		_, leftSelected := o.Assignee.(*AcceptedPlan_Assignee_OrganizationAssignee)
   302  		_, rightSelected := other.Assignee.(*AcceptedPlan_Assignee_OrganizationAssignee)
   303  		if leftSelected == rightSelected {
   304  			if o.GetOrganizationAssignee().String() != other.GetOrganizationAssignee().String() {
   305  				res.Paths = append(res.Paths, &AcceptedPlanAssignee_FieldTerminalPath{selector: AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee})
   306  			}
   307  		} else {
   308  			res.Paths = append(res.Paths, &AcceptedPlanAssignee_FieldTerminalPath{selector: AcceptedPlanAssignee_FieldPathSelectorOrganizationAssignee})
   309  		}
   310  	}
   311  	{
   312  		_, leftSelected := o.Assignee.(*AcceptedPlan_Assignee_SystemAssignee)
   313  		_, rightSelected := other.Assignee.(*AcceptedPlan_Assignee_SystemAssignee)
   314  		if leftSelected == rightSelected {
   315  			if o.GetSystemAssignee() != other.GetSystemAssignee() {
   316  				res.Paths = append(res.Paths, &AcceptedPlanAssignee_FieldTerminalPath{selector: AcceptedPlanAssignee_FieldPathSelectorSystemAssignee})
   317  			}
   318  		} else {
   319  			res.Paths = append(res.Paths, &AcceptedPlanAssignee_FieldTerminalPath{selector: AcceptedPlanAssignee_FieldPathSelectorSystemAssignee})
   320  		}
   321  	}
   322  	return res
   323  }
   324  
   325  func (o *AcceptedPlan_Assignee) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   326  	return o.MakeDiffFieldMask(other.(*AcceptedPlan_Assignee))
   327  }
   328  
   329  func (o *AcceptedPlan_Assignee) Clone() *AcceptedPlan_Assignee {
   330  	if o == nil {
   331  		return nil
   332  	}
   333  	result := &AcceptedPlan_Assignee{}
   334  	if o, ok := o.Assignee.(*AcceptedPlan_Assignee_ProjectAssignee); ok {
   335  		result.Assignee = (*AcceptedPlan_Assignee_ProjectAssignee)(nil)
   336  		if o != nil {
   337  			result.Assignee = &AcceptedPlan_Assignee_ProjectAssignee{}
   338  			result := result.Assignee.(*AcceptedPlan_Assignee_ProjectAssignee)
   339  			if o.ProjectAssignee == nil {
   340  				result.ProjectAssignee = nil
   341  			} else if data, err := o.ProjectAssignee.ProtoString(); err != nil {
   342  				panic(err)
   343  			} else {
   344  				result.ProjectAssignee = &iam_project.Reference{}
   345  				if err := result.ProjectAssignee.ParseProtoString(data); err != nil {
   346  					panic(err)
   347  				}
   348  			}
   349  		}
   350  	}
   351  	if o, ok := o.Assignee.(*AcceptedPlan_Assignee_OrganizationAssignee); ok {
   352  		result.Assignee = (*AcceptedPlan_Assignee_OrganizationAssignee)(nil)
   353  		if o != nil {
   354  			result.Assignee = &AcceptedPlan_Assignee_OrganizationAssignee{}
   355  			result := result.Assignee.(*AcceptedPlan_Assignee_OrganizationAssignee)
   356  			if o.OrganizationAssignee == nil {
   357  				result.OrganizationAssignee = nil
   358  			} else if data, err := o.OrganizationAssignee.ProtoString(); err != nil {
   359  				panic(err)
   360  			} else {
   361  				result.OrganizationAssignee = &iam_organization.Reference{}
   362  				if err := result.OrganizationAssignee.ParseProtoString(data); err != nil {
   363  					panic(err)
   364  				}
   365  			}
   366  		}
   367  	}
   368  	if o, ok := o.Assignee.(*AcceptedPlan_Assignee_SystemAssignee); ok {
   369  		result.Assignee = (*AcceptedPlan_Assignee_SystemAssignee)(nil)
   370  		if o != nil {
   371  			result.Assignee = &AcceptedPlan_Assignee_SystemAssignee{}
   372  			result := result.Assignee.(*AcceptedPlan_Assignee_SystemAssignee)
   373  			result.SystemAssignee = o.SystemAssignee
   374  		}
   375  	}
   376  	return result
   377  }
   378  
   379  func (o *AcceptedPlan_Assignee) CloneRaw() gotenobject.GotenObjectExt {
   380  	return o.Clone()
   381  }
   382  
   383  func (o *AcceptedPlan_Assignee) Merge(source *AcceptedPlan_Assignee) {
   384  	if source, ok := source.GetAssignee().(*AcceptedPlan_Assignee_ProjectAssignee); ok {
   385  		if dstOneOf, ok := o.Assignee.(*AcceptedPlan_Assignee_ProjectAssignee); !ok || dstOneOf == nil {
   386  			o.Assignee = &AcceptedPlan_Assignee_ProjectAssignee{}
   387  		}
   388  		if source != nil {
   389  			o := o.Assignee.(*AcceptedPlan_Assignee_ProjectAssignee)
   390  			if source.ProjectAssignee != nil {
   391  				if data, err := source.ProjectAssignee.ProtoString(); err != nil {
   392  					panic(err)
   393  				} else {
   394  					o.ProjectAssignee = &iam_project.Reference{}
   395  					if err := o.ProjectAssignee.ParseProtoString(data); err != nil {
   396  						panic(err)
   397  					}
   398  				}
   399  			} else {
   400  				o.ProjectAssignee = nil
   401  			}
   402  		}
   403  	}
   404  	if source, ok := source.GetAssignee().(*AcceptedPlan_Assignee_OrganizationAssignee); ok {
   405  		if dstOneOf, ok := o.Assignee.(*AcceptedPlan_Assignee_OrganizationAssignee); !ok || dstOneOf == nil {
   406  			o.Assignee = &AcceptedPlan_Assignee_OrganizationAssignee{}
   407  		}
   408  		if source != nil {
   409  			o := o.Assignee.(*AcceptedPlan_Assignee_OrganizationAssignee)
   410  			if source.OrganizationAssignee != nil {
   411  				if data, err := source.OrganizationAssignee.ProtoString(); err != nil {
   412  					panic(err)
   413  				} else {
   414  					o.OrganizationAssignee = &iam_organization.Reference{}
   415  					if err := o.OrganizationAssignee.ParseProtoString(data); err != nil {
   416  						panic(err)
   417  					}
   418  				}
   419  			} else {
   420  				o.OrganizationAssignee = nil
   421  			}
   422  		}
   423  	}
   424  	if source, ok := source.GetAssignee().(*AcceptedPlan_Assignee_SystemAssignee); ok {
   425  		if dstOneOf, ok := o.Assignee.(*AcceptedPlan_Assignee_SystemAssignee); !ok || dstOneOf == nil {
   426  			o.Assignee = &AcceptedPlan_Assignee_SystemAssignee{}
   427  		}
   428  		if source != nil {
   429  			o := o.Assignee.(*AcceptedPlan_Assignee_SystemAssignee)
   430  			o.SystemAssignee = source.SystemAssignee
   431  		}
   432  	}
   433  }
   434  
   435  func (o *AcceptedPlan_Assignee) MergeRaw(source gotenobject.GotenObjectExt) {
   436  	o.Merge(source.(*AcceptedPlan_Assignee))
   437  }