github.com/cloudwan/edgelq-sdk@v1.15.4/iam/resources/v1/organization/organization.pb.object_ext.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/iam/proto/v1/organization.proto 3 // DO NOT EDIT!!! 4 5 package organization 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_common "github.com/cloudwan/edgelq-sdk/iam/resources/v1/common" 20 meta_service "github.com/cloudwan/goten-sdk/meta-service/resources/v1/service" 21 meta "github.com/cloudwan/goten-sdk/types/meta" 22 multi_region_policy "github.com/cloudwan/goten-sdk/types/multi_region_policy" 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 _ = &iam_common.PCR{} 39 _ = &meta_service.Service{} 40 _ = &meta.Meta{} 41 _ = &multi_region_policy.MultiRegionPolicy{} 42 ) 43 44 func (o *Organization) GotenObjectExt() {} 45 46 func (o *Organization) MakeFullFieldMask() *Organization_FieldMask { 47 return FullOrganization_FieldMask() 48 } 49 50 func (o *Organization) MakeRawFullFieldMask() gotenobject.FieldMask { 51 return FullOrganization_FieldMask() 52 } 53 54 func (o *Organization) MakeDiffFieldMask(other *Organization) *Organization_FieldMask { 55 if o == nil && other == nil { 56 return &Organization_FieldMask{} 57 } 58 if o == nil || other == nil { 59 return FullOrganization_FieldMask() 60 } 61 62 res := &Organization_FieldMask{} 63 if o.GetName().String() != other.GetName().String() { 64 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorName}) 65 } 66 { 67 subMask := o.GetMetadata().MakeDiffFieldMask(other.GetMetadata()) 68 if subMask.IsFull() { 69 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorMetadata}) 70 } else { 71 for _, subpath := range subMask.Paths { 72 res.Paths = append(res.Paths, &Organization_FieldSubPath{selector: Organization_FieldPathSelectorMetadata, subPath: subpath}) 73 } 74 } 75 } 76 if o.GetTitle() != other.GetTitle() { 77 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorTitle}) 78 } 79 if o.GetDescription() != other.GetDescription() { 80 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorDescription}) 81 } 82 if o.GetParentOrganization().String() != other.GetParentOrganization().String() { 83 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorParentOrganization}) 84 } 85 { 86 subMask := o.GetMultiRegionPolicy().MakeDiffFieldMask(other.GetMultiRegionPolicy()) 87 if subMask.IsFull() { 88 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorMultiRegionPolicy}) 89 } else { 90 for _, subpath := range subMask.Paths { 91 res.Paths = append(res.Paths, &Organization_FieldSubPath{selector: Organization_FieldPathSelectorMultiRegionPolicy, subPath: subpath}) 92 } 93 } 94 } 95 96 if len(o.GetAllowedServices()) == len(other.GetAllowedServices()) { 97 for i, lValue := range o.GetAllowedServices() { 98 rValue := other.GetAllowedServices()[i] 99 if lValue.String() != rValue.String() { 100 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorAllowedServices}) 101 break 102 } 103 } 104 } else { 105 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorAllowedServices}) 106 } 107 if o.GetBusinessTier() != other.GetBusinessTier() { 108 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorBusinessTier}) 109 } 110 111 if len(o.GetServiceTiers()) == len(other.GetServiceTiers()) { 112 for i, lValue := range o.GetServiceTiers() { 113 rValue := other.GetServiceTiers()[i] 114 if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 { 115 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorServiceTiers}) 116 break 117 } 118 } 119 } else { 120 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorServiceTiers}) 121 } 122 if o.GetRootOrganization().String() != other.GetRootOrganization().String() { 123 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorRootOrganization}) 124 } 125 126 if len(o.GetAncestryPath()) == len(other.GetAncestryPath()) { 127 for i, lValue := range o.GetAncestryPath() { 128 rValue := other.GetAncestryPath()[i] 129 if lValue.String() != rValue.String() { 130 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorAncestryPath}) 131 break 132 } 133 } 134 } else { 135 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorAncestryPath}) 136 } 137 138 if len(o.GetServiceErrors()) == len(other.GetServiceErrors()) { 139 for i, lValue := range o.GetServiceErrors() { 140 rValue := other.GetServiceErrors()[i] 141 if len(lValue.MakeDiffFieldMask(rValue).Paths) > 0 { 142 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorServiceErrors}) 143 break 144 } 145 } 146 } else { 147 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorServiceErrors}) 148 } 149 if o.GetServicesGeneration() != other.GetServicesGeneration() { 150 res.Paths = append(res.Paths, &Organization_FieldTerminalPath{selector: Organization_FieldPathSelectorServicesGeneration}) 151 } 152 return res 153 } 154 155 func (o *Organization) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 156 return o.MakeDiffFieldMask(other.(*Organization)) 157 } 158 159 func (o *Organization) Clone() *Organization { 160 if o == nil { 161 return nil 162 } 163 result := &Organization{} 164 if o.Name == nil { 165 result.Name = nil 166 } else if data, err := o.Name.ProtoString(); err != nil { 167 panic(err) 168 } else { 169 result.Name = &Name{} 170 if err := result.Name.ParseProtoString(data); err != nil { 171 panic(err) 172 } 173 } 174 result.Metadata = o.Metadata.Clone() 175 result.Title = o.Title 176 result.Description = o.Description 177 if o.ParentOrganization == nil { 178 result.ParentOrganization = nil 179 } else if data, err := o.ParentOrganization.ProtoString(); err != nil { 180 panic(err) 181 } else { 182 result.ParentOrganization = &Reference{} 183 if err := result.ParentOrganization.ParseProtoString(data); err != nil { 184 panic(err) 185 } 186 } 187 result.MultiRegionPolicy = o.MultiRegionPolicy.Clone() 188 result.AllowedServices = make([]*meta_service.Reference, len(o.AllowedServices)) 189 for i, sourceValue := range o.AllowedServices { 190 if sourceValue == nil { 191 result.AllowedServices[i] = nil 192 } else if data, err := sourceValue.ProtoString(); err != nil { 193 panic(err) 194 } else { 195 result.AllowedServices[i] = &meta_service.Reference{} 196 if err := result.AllowedServices[i].ParseProtoString(data); err != nil { 197 panic(err) 198 } 199 } 200 } 201 result.BusinessTier = o.BusinessTier 202 result.ServiceTiers = make([]*iam_common.ServiceBusinessTier, len(o.ServiceTiers)) 203 for i, sourceValue := range o.ServiceTiers { 204 result.ServiceTiers[i] = sourceValue.Clone() 205 } 206 if o.RootOrganization == nil { 207 result.RootOrganization = nil 208 } else if data, err := o.RootOrganization.ProtoString(); err != nil { 209 panic(err) 210 } else { 211 result.RootOrganization = &Name{} 212 if err := result.RootOrganization.ParseProtoString(data); err != nil { 213 panic(err) 214 } 215 } 216 result.AncestryPath = make([]*Name, len(o.AncestryPath)) 217 for i, sourceValue := range o.AncestryPath { 218 if sourceValue == nil { 219 result.AncestryPath[i] = nil 220 } else if data, err := sourceValue.ProtoString(); err != nil { 221 panic(err) 222 } else { 223 result.AncestryPath[i] = &Name{} 224 if err := result.AncestryPath[i].ParseProtoString(data); err != nil { 225 panic(err) 226 } 227 } 228 } 229 result.ServiceErrors = map[string]*iam_common.ServiceErrors{} 230 for key, sourceValue := range o.ServiceErrors { 231 result.ServiceErrors[key] = sourceValue.Clone() 232 } 233 result.ServicesGeneration = o.ServicesGeneration 234 return result 235 } 236 237 func (o *Organization) CloneRaw() gotenobject.GotenObjectExt { 238 return o.Clone() 239 } 240 241 func (o *Organization) Merge(source *Organization) { 242 if source.GetName() != nil { 243 if data, err := source.GetName().ProtoString(); err != nil { 244 panic(err) 245 } else { 246 o.Name = &Name{} 247 if err := o.Name.ParseProtoString(data); err != nil { 248 panic(err) 249 } 250 } 251 } else { 252 o.Name = nil 253 } 254 if source.GetMetadata() != nil { 255 if o.Metadata == nil { 256 o.Metadata = new(meta.Meta) 257 } 258 o.Metadata.Merge(source.GetMetadata()) 259 } 260 o.Title = source.GetTitle() 261 o.Description = source.GetDescription() 262 if source.GetParentOrganization() != nil { 263 if data, err := source.GetParentOrganization().ProtoString(); err != nil { 264 panic(err) 265 } else { 266 o.ParentOrganization = &Reference{} 267 if err := o.ParentOrganization.ParseProtoString(data); err != nil { 268 panic(err) 269 } 270 } 271 } else { 272 o.ParentOrganization = nil 273 } 274 if source.GetMultiRegionPolicy() != nil { 275 if o.MultiRegionPolicy == nil { 276 o.MultiRegionPolicy = new(multi_region_policy.MultiRegionPolicy) 277 } 278 o.MultiRegionPolicy.Merge(source.GetMultiRegionPolicy()) 279 } 280 for _, sourceValue := range source.GetAllowedServices() { 281 exists := false 282 for _, currentValue := range o.AllowedServices { 283 leftProtoStr, _ := currentValue.ProtoString() 284 rightProtoStr, _ := sourceValue.ProtoString() 285 if leftProtoStr == rightProtoStr { 286 exists = true 287 break 288 } 289 } 290 if !exists { 291 var newDstElement *meta_service.Reference 292 if sourceValue != nil { 293 if data, err := sourceValue.ProtoString(); err != nil { 294 panic(err) 295 } else { 296 newDstElement = &meta_service.Reference{} 297 if err := newDstElement.ParseProtoString(data); err != nil { 298 panic(err) 299 } 300 } 301 } 302 o.AllowedServices = append(o.AllowedServices, newDstElement) 303 } 304 } 305 306 o.BusinessTier = source.GetBusinessTier() 307 for _, sourceValue := range source.GetServiceTiers() { 308 exists := false 309 for _, currentValue := range o.ServiceTiers { 310 if proto.Equal(sourceValue, currentValue) { 311 exists = true 312 break 313 } 314 } 315 if !exists { 316 var newDstElement *iam_common.ServiceBusinessTier 317 if sourceValue != nil { 318 newDstElement = new(iam_common.ServiceBusinessTier) 319 newDstElement.Merge(sourceValue) 320 } 321 o.ServiceTiers = append(o.ServiceTiers, newDstElement) 322 } 323 } 324 325 if source.GetRootOrganization() != nil { 326 if data, err := source.GetRootOrganization().ProtoString(); err != nil { 327 panic(err) 328 } else { 329 o.RootOrganization = &Name{} 330 if err := o.RootOrganization.ParseProtoString(data); err != nil { 331 panic(err) 332 } 333 } 334 } else { 335 o.RootOrganization = nil 336 } 337 for _, sourceValue := range source.GetAncestryPath() { 338 exists := false 339 for _, currentValue := range o.AncestryPath { 340 leftProtoStr, _ := currentValue.ProtoString() 341 rightProtoStr, _ := sourceValue.ProtoString() 342 if leftProtoStr == rightProtoStr { 343 exists = true 344 break 345 } 346 } 347 if !exists { 348 var newDstElement *Name 349 if sourceValue != nil { 350 if data, err := sourceValue.ProtoString(); err != nil { 351 panic(err) 352 } else { 353 newDstElement = &Name{} 354 if err := newDstElement.ParseProtoString(data); err != nil { 355 panic(err) 356 } 357 } 358 } 359 o.AncestryPath = append(o.AncestryPath, newDstElement) 360 } 361 } 362 363 if source.GetServiceErrors() != nil { 364 if o.ServiceErrors == nil { 365 o.ServiceErrors = make(map[string]*iam_common.ServiceErrors, len(source.GetServiceErrors())) 366 } 367 for key, sourceValue := range source.GetServiceErrors() { 368 if sourceValue != nil { 369 if o.ServiceErrors[key] == nil { 370 o.ServiceErrors[key] = new(iam_common.ServiceErrors) 371 } 372 o.ServiceErrors[key].Merge(sourceValue) 373 } 374 } 375 } 376 o.ServicesGeneration = source.GetServicesGeneration() 377 } 378 379 func (o *Organization) MergeRaw(source gotenobject.GotenObjectExt) { 380 o.Merge(source.(*Organization)) 381 }