github.com/cloudwan/edgelq-sdk@v1.15.4/audit/resources/v1alpha2/method_descriptor/method_descriptor.pb.object_ext.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/audit/proto/v1alpha2/method_descriptor.proto 3 // DO NOT EDIT!!! 4 5 package method_descriptor 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/audit/resources/v1alpha2/common" 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 _ = &common.Authentication{} 37 _ = &meta.Meta{} 38 ) 39 40 func (o *MethodDescriptor) GotenObjectExt() {} 41 42 func (o *MethodDescriptor) MakeFullFieldMask() *MethodDescriptor_FieldMask { 43 return FullMethodDescriptor_FieldMask() 44 } 45 46 func (o *MethodDescriptor) MakeRawFullFieldMask() gotenobject.FieldMask { 47 return FullMethodDescriptor_FieldMask() 48 } 49 50 func (o *MethodDescriptor) MakeDiffFieldMask(other *MethodDescriptor) *MethodDescriptor_FieldMask { 51 if o == nil && other == nil { 52 return &MethodDescriptor_FieldMask{} 53 } 54 if o == nil || other == nil { 55 return FullMethodDescriptor_FieldMask() 56 } 57 58 res := &MethodDescriptor_FieldMask{} 59 if o.GetName().String() != other.GetName().String() { 60 res.Paths = append(res.Paths, &MethodDescriptor_FieldTerminalPath{selector: MethodDescriptor_FieldPathSelectorName}) 61 } 62 if o.GetDisplayName() != other.GetDisplayName() { 63 res.Paths = append(res.Paths, &MethodDescriptor_FieldTerminalPath{selector: MethodDescriptor_FieldPathSelectorDisplayName}) 64 } 65 if o.GetDescription() != other.GetDescription() { 66 res.Paths = append(res.Paths, &MethodDescriptor_FieldTerminalPath{selector: MethodDescriptor_FieldPathSelectorDescription}) 67 } 68 69 if len(o.GetLabels()) == len(other.GetLabels()) { 70 for i, lValue := range o.GetLabels() { 71 rValue := other.GetLabels()[i] 72 if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 { 73 res.Paths = append(res.Paths, &MethodDescriptor_FieldTerminalPath{selector: MethodDescriptor_FieldPathSelectorLabels}) 74 break 75 } 76 } 77 } else { 78 res.Paths = append(res.Paths, &MethodDescriptor_FieldTerminalPath{selector: MethodDescriptor_FieldPathSelectorLabels}) 79 } 80 81 if len(o.GetPromotedLabelKeySets()) == len(other.GetPromotedLabelKeySets()) { 82 for i, lValue := range o.GetPromotedLabelKeySets() { 83 rValue := other.GetPromotedLabelKeySets()[i] 84 if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 { 85 res.Paths = append(res.Paths, &MethodDescriptor_FieldTerminalPath{selector: MethodDescriptor_FieldPathSelectorPromotedLabelKeySets}) 86 break 87 } 88 } 89 } else { 90 res.Paths = append(res.Paths, &MethodDescriptor_FieldTerminalPath{selector: MethodDescriptor_FieldPathSelectorPromotedLabelKeySets}) 91 } 92 93 if len(o.GetVersions()) == len(other.GetVersions()) { 94 for i, lValue := range o.GetVersions() { 95 rValue := other.GetVersions()[i] 96 if lValue != rValue { 97 res.Paths = append(res.Paths, &MethodDescriptor_FieldTerminalPath{selector: MethodDescriptor_FieldPathSelectorVersions}) 98 break 99 } 100 } 101 } else { 102 res.Paths = append(res.Paths, &MethodDescriptor_FieldTerminalPath{selector: MethodDescriptor_FieldPathSelectorVersions}) 103 } 104 { 105 subMask := o.GetMetadata().MakeDiffFieldMask(other.GetMetadata()) 106 if subMask.IsFull() { 107 res.Paths = append(res.Paths, &MethodDescriptor_FieldTerminalPath{selector: MethodDescriptor_FieldPathSelectorMetadata}) 108 } else { 109 for _, subpath := range subMask.Paths { 110 res.Paths = append(res.Paths, &MethodDescriptor_FieldSubPath{selector: MethodDescriptor_FieldPathSelectorMetadata, subPath: subpath}) 111 } 112 } 113 } 114 return res 115 } 116 117 func (o *MethodDescriptor) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 118 return o.MakeDiffFieldMask(other.(*MethodDescriptor)) 119 } 120 121 func (o *MethodDescriptor) Clone() *MethodDescriptor { 122 if o == nil { 123 return nil 124 } 125 result := &MethodDescriptor{} 126 if o.Name == nil { 127 result.Name = nil 128 } else if data, err := o.Name.ProtoString(); err != nil { 129 panic(err) 130 } else { 131 result.Name = &Name{} 132 if err := result.Name.ParseProtoString(data); err != nil { 133 panic(err) 134 } 135 } 136 result.DisplayName = o.DisplayName 137 result.Description = o.Description 138 result.Labels = make([]*common.LabelDescriptor, len(o.Labels)) 139 for i, sourceValue := range o.Labels { 140 result.Labels[i] = sourceValue.Clone() 141 } 142 result.PromotedLabelKeySets = make([]*common.LabelKeySet, len(o.PromotedLabelKeySets)) 143 for i, sourceValue := range o.PromotedLabelKeySets { 144 result.PromotedLabelKeySets[i] = sourceValue.Clone() 145 } 146 result.Versions = make([]string, len(o.Versions)) 147 for i, sourceValue := range o.Versions { 148 result.Versions[i] = sourceValue 149 } 150 result.Metadata = o.Metadata.Clone() 151 return result 152 } 153 154 func (o *MethodDescriptor) CloneRaw() gotenobject.GotenObjectExt { 155 return o.Clone() 156 } 157 158 func (o *MethodDescriptor) Merge(source *MethodDescriptor) { 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 o.DisplayName = source.GetDisplayName() 172 o.Description = source.GetDescription() 173 for _, sourceValue := range source.GetLabels() { 174 exists := false 175 for _, currentValue := range o.Labels { 176 if proto.Equal(sourceValue, currentValue) { 177 exists = true 178 break 179 } 180 } 181 if !exists { 182 var newDstElement *common.LabelDescriptor 183 if sourceValue != nil { 184 newDstElement = new(common.LabelDescriptor) 185 newDstElement.Merge(sourceValue) 186 } 187 o.Labels = append(o.Labels, newDstElement) 188 } 189 } 190 191 for _, sourceValue := range source.GetPromotedLabelKeySets() { 192 exists := false 193 for _, currentValue := range o.PromotedLabelKeySets { 194 if proto.Equal(sourceValue, currentValue) { 195 exists = true 196 break 197 } 198 } 199 if !exists { 200 var newDstElement *common.LabelKeySet 201 if sourceValue != nil { 202 newDstElement = new(common.LabelKeySet) 203 newDstElement.Merge(sourceValue) 204 } 205 o.PromotedLabelKeySets = append(o.PromotedLabelKeySets, newDstElement) 206 } 207 } 208 209 for _, sourceValue := range source.GetVersions() { 210 exists := false 211 for _, currentValue := range o.Versions { 212 if currentValue == sourceValue { 213 exists = true 214 break 215 } 216 } 217 if !exists { 218 var newDstElement string 219 newDstElement = sourceValue 220 o.Versions = append(o.Versions, newDstElement) 221 } 222 } 223 224 if source.GetMetadata() != nil { 225 if o.Metadata == nil { 226 o.Metadata = new(meta.Meta) 227 } 228 o.Metadata.Merge(source.GetMetadata()) 229 } 230 } 231 232 func (o *MethodDescriptor) MergeRaw(source gotenobject.GotenObjectExt) { 233 o.Merge(source.(*MethodDescriptor)) 234 }