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

     1  // Code generated by protoc-gen-goten-object
     2  // File: edgelq/devices/proto/v1/os_version.proto
     3  // DO NOT EDIT!!!
     4  
     5  package os_version
     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  	device_type "github.com/cloudwan/edgelq-sdk/devices/resources/v1/device_type"
    20  	meta "github.com/cloudwan/goten-sdk/types/meta"
    21  )
    22  
    23  // ensure the imports are used
    24  var (
    25  	_ = new(fmt.Stringer)
    26  	_ = new(sort.Interface)
    27  
    28  	_ = new(proto.Message)
    29  	_ = googlefieldmaskpb.FieldMask{}
    30  
    31  	_ = new(gotenobject.FieldPath)
    32  )
    33  
    34  // make sure we're using proto imports
    35  var (
    36  	_ = &device_type.DeviceType{}
    37  	_ = &meta.Meta{}
    38  )
    39  
    40  func (o *OsVersion) GotenObjectExt() {}
    41  
    42  func (o *OsVersion) MakeFullFieldMask() *OsVersion_FieldMask {
    43  	return FullOsVersion_FieldMask()
    44  }
    45  
    46  func (o *OsVersion) MakeRawFullFieldMask() gotenobject.FieldMask {
    47  	return FullOsVersion_FieldMask()
    48  }
    49  
    50  func (o *OsVersion) MakeDiffFieldMask(other *OsVersion) *OsVersion_FieldMask {
    51  	if o == nil && other == nil {
    52  		return &OsVersion_FieldMask{}
    53  	}
    54  	if o == nil || other == nil {
    55  		return FullOsVersion_FieldMask()
    56  	}
    57  
    58  	res := &OsVersion_FieldMask{}
    59  	if o.GetName().String() != other.GetName().String() {
    60  		res.Paths = append(res.Paths, &OsVersion_FieldTerminalPath{selector: OsVersion_FieldPathSelectorName})
    61  	}
    62  	{
    63  		subMask := o.GetMetadata().MakeDiffFieldMask(other.GetMetadata())
    64  		if subMask.IsFull() {
    65  			res.Paths = append(res.Paths, &OsVersion_FieldTerminalPath{selector: OsVersion_FieldPathSelectorMetadata})
    66  		} else {
    67  			for _, subpath := range subMask.Paths {
    68  				res.Paths = append(res.Paths, &OsVersion_FieldSubPath{selector: OsVersion_FieldPathSelectorMetadata, subPath: subpath})
    69  			}
    70  		}
    71  	}
    72  	if o.GetVersion() != other.GetVersion() {
    73  		res.Paths = append(res.Paths, &OsVersion_FieldTerminalPath{selector: OsVersion_FieldPathSelectorVersion})
    74  	}
    75  	if o.GetDeviceType().String() != other.GetDeviceType().String() {
    76  		res.Paths = append(res.Paths, &OsVersion_FieldTerminalPath{selector: OsVersion_FieldPathSelectorDeviceType})
    77  	}
    78  	if o.GetMinimumPreviousVersion() != other.GetMinimumPreviousVersion() {
    79  		res.Paths = append(res.Paths, &OsVersion_FieldTerminalPath{selector: OsVersion_FieldPathSelectorMinimumPreviousVersion})
    80  	}
    81  	if o.GetChannel() != other.GetChannel() {
    82  		res.Paths = append(res.Paths, &OsVersion_FieldTerminalPath{selector: OsVersion_FieldPathSelectorChannel})
    83  	}
    84  	return res
    85  }
    86  
    87  func (o *OsVersion) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask {
    88  	return o.MakeDiffFieldMask(other.(*OsVersion))
    89  }
    90  
    91  func (o *OsVersion) Clone() *OsVersion {
    92  	if o == nil {
    93  		return nil
    94  	}
    95  	result := &OsVersion{}
    96  	if o.Name == nil {
    97  		result.Name = nil
    98  	} else if data, err := o.Name.ProtoString(); err != nil {
    99  		panic(err)
   100  	} else {
   101  		result.Name = &Name{}
   102  		if err := result.Name.ParseProtoString(data); err != nil {
   103  			panic(err)
   104  		}
   105  	}
   106  	result.Metadata = o.Metadata.Clone()
   107  	result.Version = o.Version
   108  	if o.DeviceType == nil {
   109  		result.DeviceType = nil
   110  	} else if data, err := o.DeviceType.ProtoString(); err != nil {
   111  		panic(err)
   112  	} else {
   113  		result.DeviceType = &device_type.Reference{}
   114  		if err := result.DeviceType.ParseProtoString(data); err != nil {
   115  			panic(err)
   116  		}
   117  	}
   118  	result.MinimumPreviousVersion = o.MinimumPreviousVersion
   119  	result.Channel = o.Channel
   120  	return result
   121  }
   122  
   123  func (o *OsVersion) CloneRaw() gotenobject.GotenObjectExt {
   124  	return o.Clone()
   125  }
   126  
   127  func (o *OsVersion) Merge(source *OsVersion) {
   128  	if source.GetName() != nil {
   129  		if data, err := source.GetName().ProtoString(); err != nil {
   130  			panic(err)
   131  		} else {
   132  			o.Name = &Name{}
   133  			if err := o.Name.ParseProtoString(data); err != nil {
   134  				panic(err)
   135  			}
   136  		}
   137  	} else {
   138  		o.Name = nil
   139  	}
   140  	if source.GetMetadata() != nil {
   141  		if o.Metadata == nil {
   142  			o.Metadata = new(meta.Meta)
   143  		}
   144  		o.Metadata.Merge(source.GetMetadata())
   145  	}
   146  	o.Version = source.GetVersion()
   147  	if source.GetDeviceType() != nil {
   148  		if data, err := source.GetDeviceType().ProtoString(); err != nil {
   149  			panic(err)
   150  		} else {
   151  			o.DeviceType = &device_type.Reference{}
   152  			if err := o.DeviceType.ParseProtoString(data); err != nil {
   153  				panic(err)
   154  			}
   155  		}
   156  	} else {
   157  		o.DeviceType = nil
   158  	}
   159  	o.MinimumPreviousVersion = source.GetMinimumPreviousVersion()
   160  	o.Channel = source.GetChannel()
   161  }
   162  
   163  func (o *OsVersion) MergeRaw(source gotenobject.GotenObjectExt) {
   164  	o.Merge(source.(*OsVersion))
   165  }