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

     1  // Code generated by protoc-gen-goten-object
     2  // File: edgelq/logging/proto/v1alpha2/log.proto
     3  // DO NOT EDIT!!!
     4  
     5  package log
     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  	log_descriptor "github.com/cloudwan/edgelq-sdk/logging/resources/v1alpha2/log_descriptor"
    22  	structpb "google.golang.org/protobuf/types/known/structpb"
    23  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    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  	_ = &structpb.Struct{}
    43  	_ = &timestamppb.Timestamp{}
    44  )
    45  
    46  func (o *Log) GotenObjectExt() {}
    47  
    48  func (o *Log) MakeFullFieldMask() *Log_FieldMask {
    49  	return FullLog_FieldMask()
    50  }
    51  
    52  func (o *Log) MakeRawFullFieldMask() gotenobject.FieldMask {
    53  	return FullLog_FieldMask()
    54  }
    55  
    56  func (o *Log) MakeDiffFieldMask(other *Log) *Log_FieldMask {
    57  	if o == nil && other == nil {
    58  		return &Log_FieldMask{}
    59  	}
    60  	if o == nil || other == nil {
    61  		return FullLog_FieldMask()
    62  	}
    63  
    64  	res := &Log_FieldMask{}
    65  	if o.GetName().String() != other.GetName().String() {
    66  		res.Paths = append(res.Paths, &Log_FieldTerminalPath{selector: Log_FieldPathSelectorName})
    67  	}
    68  	if o.GetScope() != other.GetScope() {
    69  		res.Paths = append(res.Paths, &Log_FieldTerminalPath{selector: Log_FieldPathSelectorScope})
    70  	}
    71  	if o.GetService() != other.GetService() {
    72  		res.Paths = append(res.Paths, &Log_FieldTerminalPath{selector: Log_FieldPathSelectorService})
    73  	}
    74  	if o.GetRegion() != other.GetRegion() {
    75  		res.Paths = append(res.Paths, &Log_FieldTerminalPath{selector: Log_FieldPathSelectorRegion})
    76  	}
    77  	if o.GetVersion() != other.GetVersion() {
    78  		res.Paths = append(res.Paths, &Log_FieldTerminalPath{selector: Log_FieldPathSelectorVersion})
    79  	}
    80  	if o.GetLogDescriptor().String() != other.GetLogDescriptor().String() {
    81  		res.Paths = append(res.Paths, &Log_FieldTerminalPath{selector: Log_FieldPathSelectorLogDescriptor})
    82  	}
    83  
    84  	if len(o.GetLabels()) == len(other.GetLabels()) {
    85  		for i, lValue := range o.GetLabels() {
    86  			rValue := other.GetLabels()[i]
    87  			if lValue != rValue {
    88  				res.Paths = append(res.Paths, &Log_FieldTerminalPath{selector: Log_FieldPathSelectorLabels})
    89  				break
    90  			}
    91  		}
    92  	} else {
    93  		res.Paths = append(res.Paths, &Log_FieldTerminalPath{selector: Log_FieldPathSelectorLabels})
    94  	}
    95  	if !proto.Equal(o.GetTime(), other.GetTime()) {
    96  		res.Paths = append(res.Paths, &Log_FieldTerminalPath{selector: Log_FieldPathSelectorTime})
    97  	}
    98  	if !proto.Equal(o.GetPayload(), other.GetPayload()) {
    99  		res.Paths = append(res.Paths, &Log_FieldTerminalPath{selector: Log_FieldPathSelectorPayload})
   100  	}
   101  	return res
   102  }
   103  
   104  func (o *Log) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
   105  	return o.MakeDiffFieldMask(other.(*Log))
   106  }
   107  
   108  func (o *Log) Clone() *Log {
   109  	if o == nil {
   110  		return nil
   111  	}
   112  	result := &Log{}
   113  	if o.Name == nil {
   114  		result.Name = nil
   115  	} else if data, err := o.Name.ProtoString(); err != nil {
   116  		panic(err)
   117  	} else {
   118  		result.Name = &Name{}
   119  		if err := result.Name.ParseProtoString(data); err != nil {
   120  			panic(err)
   121  		}
   122  	}
   123  	result.Scope = o.Scope
   124  	result.Service = o.Service
   125  	result.Region = o.Region
   126  	result.Version = o.Version
   127  	if o.LogDescriptor == nil {
   128  		result.LogDescriptor = nil
   129  	} else if data, err := o.LogDescriptor.ProtoString(); err != nil {
   130  		panic(err)
   131  	} else {
   132  		result.LogDescriptor = &log_descriptor.Reference{}
   133  		if err := result.LogDescriptor.ParseProtoString(data); err != nil {
   134  			panic(err)
   135  		}
   136  	}
   137  	result.Labels = map[string]string{}
   138  	for key, sourceValue := range o.Labels {
   139  		result.Labels[key] = sourceValue
   140  	}
   141  	result.Time = proto.Clone(o.Time).(*timestamppb.Timestamp)
   142  	result.Payload = proto.Clone(o.Payload).(*structpb.Struct)
   143  	return result
   144  }
   145  
   146  func (o *Log) CloneRaw() gotenobject.GotenObjectExt {
   147  	return o.Clone()
   148  }
   149  
   150  func (o *Log) Merge(source *Log) {
   151  	if source.GetName() != nil {
   152  		if data, err := source.GetName().ProtoString(); err != nil {
   153  			panic(err)
   154  		} else {
   155  			o.Name = &Name{}
   156  			if err := o.Name.ParseProtoString(data); err != nil {
   157  				panic(err)
   158  			}
   159  		}
   160  	} else {
   161  		o.Name = nil
   162  	}
   163  	o.Scope = source.GetScope()
   164  	o.Service = source.GetService()
   165  	o.Region = source.GetRegion()
   166  	o.Version = source.GetVersion()
   167  	if source.GetLogDescriptor() != nil {
   168  		if data, err := source.GetLogDescriptor().ProtoString(); err != nil {
   169  			panic(err)
   170  		} else {
   171  			o.LogDescriptor = &log_descriptor.Reference{}
   172  			if err := o.LogDescriptor.ParseProtoString(data); err != nil {
   173  				panic(err)
   174  			}
   175  		}
   176  	} else {
   177  		o.LogDescriptor = nil
   178  	}
   179  	if source.GetLabels() != nil {
   180  		if o.Labels == nil {
   181  			o.Labels = make(map[string]string, len(source.GetLabels()))
   182  		}
   183  		for key, sourceValue := range source.GetLabels() {
   184  			o.Labels[key] = sourceValue
   185  		}
   186  	}
   187  	if source.GetTime() != nil {
   188  		if o.Time == nil {
   189  			o.Time = new(timestamppb.Timestamp)
   190  		}
   191  		proto.Merge(o.Time, source.GetTime())
   192  	}
   193  	if source.GetPayload() != nil {
   194  		if o.Payload == nil {
   195  			o.Payload = new(structpb.Struct)
   196  		}
   197  		proto.Merge(o.Payload, source.GetPayload())
   198  	}
   199  }
   200  
   201  func (o *Log) MergeRaw(source gotenobject.GotenObjectExt) {
   202  	o.Merge(source.(*Log))
   203  }