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 }