github.com/cloudwan/edgelq-sdk@v1.15.4/iam/resources/v1/project/project.pb.namebuilder.go (about) 1 // Code generated by protoc-gen-goten-resource 2 // Resource: Project 3 // DO NOT EDIT!!! 4 5 package project 6 7 import ( 8 gotenresource "github.com/cloudwan/goten-sdk/runtime/resource" 9 ) 10 11 // proto imports 12 import ( 13 iam_common "github.com/cloudwan/edgelq-sdk/iam/resources/v1/common" 14 organization "github.com/cloudwan/edgelq-sdk/iam/resources/v1/organization" 15 meta_service "github.com/cloudwan/goten-sdk/meta-service/resources/v1/service" 16 meta "github.com/cloudwan/goten-sdk/types/meta" 17 multi_region_policy "github.com/cloudwan/goten-sdk/types/multi_region_policy" 18 ) 19 20 // make sure we're using proto imports 21 var ( 22 _ = &iam_common.PCR{} 23 _ = &organization.Organization{} 24 _ = &meta_service.Service{} 25 _ = &meta.Meta{} 26 _ = &multi_region_policy.MultiRegionPolicy{} 27 ) 28 29 const ( 30 NamePattern_Nil = "projects/{project}" 31 ) 32 33 type NamePattern struct { 34 Pattern gotenresource.NamePattern `firestore:"pattern"` 35 } 36 37 type NameBuilder struct { 38 nameObj Name 39 } 40 41 func NewNameBuilder() *NameBuilder { 42 return &NameBuilder{ 43 nameObj: Name{ 44 ProjectId: gotenresource.WildcardId, 45 NamePattern: NamePattern{ 46 // Set default pattern - just first. 47 Pattern: NamePattern_Nil, 48 }, 49 }, 50 } 51 } 52 53 func (b *NameBuilder) Name() *Name { 54 copied := b.nameObj 55 return &copied 56 } 57 58 func (b *NameBuilder) Reference() *Reference { 59 return b.nameObj.AsReference() 60 } 61 62 func (b *NameBuilder) SetId(id string) *NameBuilder { 63 b.nameObj.ProjectId = id 64 return b 65 }