github.com/cloudwan/edgelq-sdk@v1.15.4/iam/resources/v1alpha2/service_account/service_account.pb.object_ext.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/iam/proto/v1alpha2/service_account.proto 3 // DO NOT EDIT!!! 4 5 package service_account 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 project "github.com/cloudwan/edgelq-sdk/iam/resources/v1alpha2/project" 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 _ = &project.Project{} 37 _ = &meta.Meta{} 38 ) 39 40 func (o *ServiceAccount) GotenObjectExt() {} 41 42 func (o *ServiceAccount) MakeFullFieldMask() *ServiceAccount_FieldMask { 43 return FullServiceAccount_FieldMask() 44 } 45 46 func (o *ServiceAccount) MakeRawFullFieldMask() gotenobject.FieldMask { 47 return FullServiceAccount_FieldMask() 48 } 49 50 func (o *ServiceAccount) MakeDiffFieldMask(other *ServiceAccount) *ServiceAccount_FieldMask { 51 if o == nil && other == nil { 52 return &ServiceAccount_FieldMask{} 53 } 54 if o == nil || other == nil { 55 return FullServiceAccount_FieldMask() 56 } 57 58 res := &ServiceAccount_FieldMask{} 59 if o.GetName().String() != other.GetName().String() { 60 res.Paths = append(res.Paths, &ServiceAccount_FieldTerminalPath{selector: ServiceAccount_FieldPathSelectorName}) 61 } 62 if o.GetDisplayName() != other.GetDisplayName() { 63 res.Paths = append(res.Paths, &ServiceAccount_FieldTerminalPath{selector: ServiceAccount_FieldPathSelectorDisplayName}) 64 } 65 if o.GetEmail() != other.GetEmail() { 66 res.Paths = append(res.Paths, &ServiceAccount_FieldTerminalPath{selector: ServiceAccount_FieldPathSelectorEmail}) 67 } 68 { 69 subMask := o.GetMetadata().MakeDiffFieldMask(other.GetMetadata()) 70 if subMask.IsFull() { 71 res.Paths = append(res.Paths, &ServiceAccount_FieldTerminalPath{selector: ServiceAccount_FieldPathSelectorMetadata}) 72 } else { 73 for _, subpath := range subMask.Paths { 74 res.Paths = append(res.Paths, &ServiceAccount_FieldSubPath{selector: ServiceAccount_FieldPathSelectorMetadata, subPath: subpath}) 75 } 76 } 77 } 78 return res 79 } 80 81 func (o *ServiceAccount) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 82 return o.MakeDiffFieldMask(other.(*ServiceAccount)) 83 } 84 85 func (o *ServiceAccount) Clone() *ServiceAccount { 86 if o == nil { 87 return nil 88 } 89 result := &ServiceAccount{} 90 if o.Name == nil { 91 result.Name = nil 92 } else if data, err := o.Name.ProtoString(); err != nil { 93 panic(err) 94 } else { 95 result.Name = &Name{} 96 if err := result.Name.ParseProtoString(data); err != nil { 97 panic(err) 98 } 99 } 100 result.DisplayName = o.DisplayName 101 result.Email = o.Email 102 result.Metadata = o.Metadata.Clone() 103 return result 104 } 105 106 func (o *ServiceAccount) CloneRaw() gotenobject.GotenObjectExt { 107 return o.Clone() 108 } 109 110 func (o *ServiceAccount) Merge(source *ServiceAccount) { 111 if source.GetName() != nil { 112 if data, err := source.GetName().ProtoString(); err != nil { 113 panic(err) 114 } else { 115 o.Name = &Name{} 116 if err := o.Name.ParseProtoString(data); err != nil { 117 panic(err) 118 } 119 } 120 } else { 121 o.Name = nil 122 } 123 o.DisplayName = source.GetDisplayName() 124 o.Email = source.GetEmail() 125 if source.GetMetadata() != nil { 126 if o.Metadata == nil { 127 o.Metadata = new(meta.Meta) 128 } 129 o.Metadata.Merge(source.GetMetadata()) 130 } 131 } 132 133 func (o *ServiceAccount) MergeRaw(source gotenobject.GotenObjectExt) { 134 o.Merge(source.(*ServiceAccount)) 135 }