github.com/cloudwan/edgelq-sdk@v1.15.4/secrets/resources/v1alpha2/secret/secret.pb.namebuilder.go (about) 1 // Code generated by protoc-gen-goten-resource 2 // Resource: Secret 3 // DO NOT EDIT!!! 4 5 package secret 6 7 import ( 8 gotenresource "github.com/cloudwan/goten-sdk/runtime/resource" 9 ) 10 11 // proto imports 12 import ( 13 project "github.com/cloudwan/edgelq-sdk/secrets/resources/v1alpha2/project" 14 meta "github.com/cloudwan/goten-sdk/types/meta" 15 ) 16 17 // make sure we're using proto imports 18 var ( 19 _ = &project.Project{} 20 _ = &meta.Meta{} 21 ) 22 23 const ( 24 NamePattern_Project = "projects/{project}/secrets/{secret}" 25 ) 26 27 type NamePattern struct { 28 Pattern gotenresource.NamePattern `firestore:"pattern"` 29 } 30 31 type NameBuilder struct { 32 nameObj Name 33 } 34 35 func NewNameBuilder() *NameBuilder { 36 return &NameBuilder{ 37 nameObj: Name{ 38 SecretId: gotenresource.WildcardId, 39 ParentName: ParentName{ 40 NamePattern: NamePattern{ 41 // Set default pattern - just first. 42 Pattern: NamePattern_Project, 43 }, 44 }, 45 }, 46 } 47 } 48 49 func (b *NameBuilder) Name() *Name { 50 copied := b.nameObj 51 return &copied 52 } 53 54 func (b *NameBuilder) Reference() *Reference { 55 return b.nameObj.AsReference() 56 } 57 58 func (b *NameBuilder) Parent() *ParentName { 59 copied := b.nameObj.ParentName 60 return &copied 61 } 62 63 func (b *NameBuilder) ParentReference() *ParentReference { 64 return b.nameObj.ParentName.AsReference() 65 } 66 67 func (b *NameBuilder) SetId(id string) *NameBuilder { 68 b.nameObj.SecretId = id 69 return b 70 } 71 72 func (b *NameBuilder) SetProject(parent *project.Name) *NameBuilder { 73 parentName := &b.nameObj.ParentName 74 75 switch parent.Pattern { 76 case project.NamePattern_Nil: 77 parentName.Pattern = NamePattern_Project 78 } 79 parentName.ProjectId = parent.ProjectId 80 return b 81 } 82 83 func (b *NameBuilder) SetProjectId(id string) *NameBuilder { 84 parentName := &b.nameObj.ParentName 85 parentName.ProjectId = id 86 87 // Set pattern if something matches for this set of IDs 88 if parentName.ProjectId != "" { 89 parentName.Pattern = NamePattern_Project 90 } 91 return b 92 }