github.com/cloudwan/edgelq-sdk@v1.15.4/monitoring/resources/v4/phantom_time_serie/phantom_time_serie.pb.object_ext.go (about)

     1  // Code generated by protoc-gen-goten-object
     2  // File: edgelq/monitoring/proto/v4/phantom_time_serie.proto
     3  // DO NOT EDIT!!!
     4  
     5  package phantom_time_serie
     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  	common "github.com/cloudwan/edgelq-sdk/monitoring/resources/v4/common"
    20  	metric_descriptor "github.com/cloudwan/edgelq-sdk/monitoring/resources/v4/metric_descriptor"
    21  	project "github.com/cloudwan/edgelq-sdk/monitoring/resources/v4/project"
    22  	meta "github.com/cloudwan/goten-sdk/types/meta"
    23  )
    24  
    25  // ensure the imports are used
    26  var (
    27  	_ = new(fmt.Stringer)
    28  	_ = new(sort.Interface)
    29  
    30  	_ = new(proto.Message)
    31  	_ = googlefieldmaskpb.FieldMask{}
    32  
    33  	_ = new(gotenobject.FieldPath)
    34  )
    35  
    36  // make sure we're using proto imports
    37  var (
    38  	_ = &common.LabelDescriptor{}
    39  	_ = &metric_descriptor.MetricDescriptor{}
    40  	_ = &project.Project{}
    41  	_ = &meta.Meta{}
    42  )
    43  
    44  func (o *PhantomTimeSerie) GotenObjectExt() {}
    45  
    46  func (o *PhantomTimeSerie) MakeFullFieldMask() *PhantomTimeSerie_FieldMask {
    47  	return FullPhantomTimeSerie_FieldMask()
    48  }
    49  
    50  func (o *PhantomTimeSerie) MakeRawFullFieldMask() gotenobject.FieldMask {
    51  	return FullPhantomTimeSerie_FieldMask()
    52  }
    53  
    54  func (o *PhantomTimeSerie) MakeDiffFieldMask(other *PhantomTimeSerie) *PhantomTimeSerie_FieldMask {
    55  	if o == nil && other == nil {
    56  		return &PhantomTimeSerie_FieldMask{}
    57  	}
    58  	if o == nil || other == nil {
    59  		return FullPhantomTimeSerie_FieldMask()
    60  	}
    61  
    62  	res := &PhantomTimeSerie_FieldMask{}
    63  	if o.GetName().String() != other.GetName().String() {
    64  		res.Paths = append(res.Paths, &PhantomTimeSerie_FieldTerminalPath{selector: PhantomTimeSerie_FieldPathSelectorName})
    65  	}
    66  	{
    67  		subMask := o.GetMetadata().MakeDiffFieldMask(other.GetMetadata())
    68  		if subMask.IsFull() {
    69  			res.Paths = append(res.Paths, &PhantomTimeSerie_FieldTerminalPath{selector: PhantomTimeSerie_FieldPathSelectorMetadata})
    70  		} else {
    71  			for _, subpath := range subMask.Paths {
    72  				res.Paths = append(res.Paths, &PhantomTimeSerie_FieldSubPath{selector: PhantomTimeSerie_FieldPathSelectorMetadata, subPath: subpath})
    73  			}
    74  		}
    75  	}
    76  	if string(o.GetKey()) != string(other.GetKey()) {
    77  		res.Paths = append(res.Paths, &PhantomTimeSerie_FieldTerminalPath{selector: PhantomTimeSerie_FieldPathSelectorKey})
    78  	}
    79  	if o.GetProject() != other.GetProject() {
    80  		res.Paths = append(res.Paths, &PhantomTimeSerie_FieldTerminalPath{selector: PhantomTimeSerie_FieldPathSelectorProject})
    81  	}
    82  	{
    83  		subMask := o.GetMetric().MakeDiffFieldMask(other.GetMetric())
    84  		if subMask.IsFull() {
    85  			res.Paths = append(res.Paths, &PhantomTimeSerie_FieldTerminalPath{selector: PhantomTimeSerie_FieldPathSelectorMetric})
    86  		} else {
    87  			for _, subpath := range subMask.Paths {
    88  				res.Paths = append(res.Paths, &PhantomTimeSerie_FieldSubPath{selector: PhantomTimeSerie_FieldPathSelectorMetric, subPath: subpath})
    89  			}
    90  		}
    91  	}
    92  	{
    93  		subMask := o.GetResource().MakeDiffFieldMask(other.GetResource())
    94  		if subMask.IsFull() {
    95  			res.Paths = append(res.Paths, &PhantomTimeSerie_FieldTerminalPath{selector: PhantomTimeSerie_FieldPathSelectorResource})
    96  		} else {
    97  			for _, subpath := range subMask.Paths {
    98  				res.Paths = append(res.Paths, &PhantomTimeSerie_FieldSubPath{selector: PhantomTimeSerie_FieldPathSelectorResource, subPath: subpath})
    99  			}
   100  		}
   101  	}
   102  	if o.GetMetricKind() != other.GetMetricKind() {
   103  		res.Paths = append(res.Paths, &PhantomTimeSerie_FieldTerminalPath{selector: PhantomTimeSerie_FieldPathSelectorMetricKind})
   104  	}
   105  	if o.GetValueType() != other.GetValueType() {
   106  		res.Paths = append(res.Paths, &PhantomTimeSerie_FieldTerminalPath{selector: PhantomTimeSerie_FieldPathSelectorValueType})
   107  	}
   108  	{
   109  		subMask := o.GetValue().MakeDiffFieldMask(other.GetValue())
   110  		if subMask.IsFull() {
   111  			res.Paths = append(res.Paths, &PhantomTimeSerie_FieldTerminalPath{selector: PhantomTimeSerie_FieldPathSelectorValue})
   112  		} else {
   113  			for _, subpath := range subMask.Paths {
   114  				res.Paths = append(res.Paths, &PhantomTimeSerie_FieldSubPath{selector: PhantomTimeSerie_FieldPathSelectorValue, subPath: subpath})
   115  			}
   116  		}
   117  	}
   118  	return res
   119  }
   120  
   121  func (o *PhantomTimeSerie) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   122  	return o.MakeDiffFieldMask(other.(*PhantomTimeSerie))
   123  }
   124  
   125  func (o *PhantomTimeSerie) Clone() *PhantomTimeSerie {
   126  	if o == nil {
   127  		return nil
   128  	}
   129  	result := &PhantomTimeSerie{}
   130  	if o.Name == nil {
   131  		result.Name = nil
   132  	} else if data, err := o.Name.ProtoString(); err != nil {
   133  		panic(err)
   134  	} else {
   135  		result.Name = &Name{}
   136  		if err := result.Name.ParseProtoString(data); err != nil {
   137  			panic(err)
   138  		}
   139  	}
   140  	result.Metadata = o.Metadata.Clone()
   141  	result.Key = make([]byte, len(o.Key))
   142  	for i, bt := range o.Key {
   143  		result.Key[i] = bt
   144  	}
   145  	result.Project = o.Project
   146  	result.Metric = o.Metric.Clone()
   147  	result.Resource = o.Resource.Clone()
   148  	result.MetricKind = o.MetricKind
   149  	result.ValueType = o.ValueType
   150  	result.Value = o.Value.Clone()
   151  	return result
   152  }
   153  
   154  func (o *PhantomTimeSerie) CloneRaw() gotenobject.GotenObjectExt {
   155  	return o.Clone()
   156  }
   157  
   158  func (o *PhantomTimeSerie) Merge(source *PhantomTimeSerie) {
   159  	if source.GetName() != nil {
   160  		if data, err := source.GetName().ProtoString(); err != nil {
   161  			panic(err)
   162  		} else {
   163  			o.Name = &Name{}
   164  			if err := o.Name.ParseProtoString(data); err != nil {
   165  				panic(err)
   166  			}
   167  		}
   168  	} else {
   169  		o.Name = nil
   170  	}
   171  	if source.GetMetadata() != nil {
   172  		if o.Metadata == nil {
   173  			o.Metadata = new(meta.Meta)
   174  		}
   175  		o.Metadata.Merge(source.GetMetadata())
   176  	}
   177  	o.Key = make([]byte, len(source.GetKey()))
   178  	for i, bt := range source.GetKey() {
   179  		o.Key[i] = bt
   180  	}
   181  	o.Project = source.GetProject()
   182  	if source.GetMetric() != nil {
   183  		if o.Metric == nil {
   184  			o.Metric = new(common.Metric)
   185  		}
   186  		o.Metric.Merge(source.GetMetric())
   187  	}
   188  	if source.GetResource() != nil {
   189  		if o.Resource == nil {
   190  			o.Resource = new(common.MonitoredResource)
   191  		}
   192  		o.Resource.Merge(source.GetResource())
   193  	}
   194  	o.MetricKind = source.GetMetricKind()
   195  	o.ValueType = source.GetValueType()
   196  	if source.GetValue() != nil {
   197  		if o.Value == nil {
   198  			o.Value = new(common.TypedValue)
   199  		}
   200  		o.Value.Merge(source.GetValue())
   201  	}
   202  }
   203  
   204  func (o *PhantomTimeSerie) MergeRaw(source gotenobject.GotenObjectExt) {
   205  	o.Merge(source.(*PhantomTimeSerie))
   206  }