github.com/cloudwan/edgelq-sdk@v1.15.4/iam/resources/v1/service_account/service_account.pb.object_ext.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/iam/proto/v1/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/v1/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 { 63 subMask := o.GetMetadata().MakeDiffFieldMask(other.GetMetadata()) 64 if subMask.IsFull() { 65 res.Paths = append(res.Paths, &ServiceAccount_FieldTerminalPath{selector: ServiceAccount_FieldPathSelectorMetadata}) 66 } else { 67 for _, subpath := range subMask.Paths { 68 res.Paths = append(res.Paths, &ServiceAccount_FieldSubPath{selector: ServiceAccount_FieldPathSelectorMetadata, subPath: subpath}) 69 } 70 } 71 } 72 if o.GetDisplayName() != other.GetDisplayName() { 73 res.Paths = append(res.Paths, &ServiceAccount_FieldTerminalPath{selector: ServiceAccount_FieldPathSelectorDisplayName}) 74 } 75 if o.GetDescription() != other.GetDescription() { 76 res.Paths = append(res.Paths, &ServiceAccount_FieldTerminalPath{selector: ServiceAccount_FieldPathSelectorDescription}) 77 } 78 if o.GetEmail() != other.GetEmail() { 79 res.Paths = append(res.Paths, &ServiceAccount_FieldTerminalPath{selector: ServiceAccount_FieldPathSelectorEmail}) 80 } 81 if o.GetKind() != other.GetKind() { 82 res.Paths = append(res.Paths, &ServiceAccount_FieldTerminalPath{selector: ServiceAccount_FieldPathSelectorKind}) 83 } 84 return res 85 } 86 87 func (o *ServiceAccount) MakeRawDiffFieldMask(other gotenobject.GotenObjectExt) gotenobject.FieldMask { 88 return o.MakeDiffFieldMask(other.(*ServiceAccount)) 89 } 90 91 func (o *ServiceAccount) Clone() *ServiceAccount { 92 if o == nil { 93 return nil 94 } 95 result := &ServiceAccount{} 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.DisplayName = o.DisplayName 108 result.Description = o.Description 109 result.Email = o.Email 110 result.Kind = o.Kind 111 return result 112 } 113 114 func (o *ServiceAccount) CloneRaw() gotenobject.GotenObjectExt { 115 return o.Clone() 116 } 117 118 func (o *ServiceAccount) Merge(source *ServiceAccount) { 119 if source.GetName() != nil { 120 if data, err := source.GetName().ProtoString(); err != nil { 121 panic(err) 122 } else { 123 o.Name = &Name{} 124 if err := o.Name.ParseProtoString(data); err != nil { 125 panic(err) 126 } 127 } 128 } else { 129 o.Name = nil 130 } 131 if source.GetMetadata() != nil { 132 if o.Metadata == nil { 133 o.Metadata = new(meta.Meta) 134 } 135 o.Metadata.Merge(source.GetMetadata()) 136 } 137 o.DisplayName = source.GetDisplayName() 138 o.Description = source.GetDescription() 139 o.Email = source.GetEmail() 140 o.Kind = source.GetKind() 141 } 142 143 func (o *ServiceAccount) MergeRaw(source gotenobject.GotenObjectExt) { 144 o.Merge(source.(*ServiceAccount)) 145 }