github.com/cobalt77/jfrog-client-go@v0.14.5/config/configbuilder.go (about) 1 package config 2 3 import ( 4 "github.com/cobalt77/jfrog-client-go/auth" 5 ) 6 7 func NewConfigBuilder() *servicesConfigBuilder { 8 configBuilder := &servicesConfigBuilder{} 9 configBuilder.threads = 3 10 return configBuilder 11 } 12 13 type servicesConfigBuilder struct { 14 auth.ServiceDetails 15 certificatesPath string 16 threads int 17 isDryRun bool 18 insecureTls bool 19 } 20 21 func (builder *servicesConfigBuilder) SetServiceDetails(artDetails auth.ServiceDetails) *servicesConfigBuilder { 22 builder.ServiceDetails = artDetails 23 return builder 24 } 25 26 func (builder *servicesConfigBuilder) SetCertificatesPath(certificatesPath string) *servicesConfigBuilder { 27 builder.certificatesPath = certificatesPath 28 return builder 29 } 30 31 func (builder *servicesConfigBuilder) SetThreads(threads int) *servicesConfigBuilder { 32 builder.threads = threads 33 return builder 34 } 35 36 func (builder *servicesConfigBuilder) SetDryRun(dryRun bool) *servicesConfigBuilder { 37 builder.isDryRun = dryRun 38 return builder 39 } 40 41 func (builder *servicesConfigBuilder) SetInsecureTls(insecureTls bool) *servicesConfigBuilder { 42 builder.insecureTls = insecureTls 43 return builder 44 } 45 46 func (builder *servicesConfigBuilder) Build() (Config, error) { 47 c := &servicesConfig{} 48 c.ServiceDetails = builder.ServiceDetails 49 c.threads = builder.threads 50 c.certificatesPath = builder.certificatesPath 51 c.dryRun = builder.isDryRun 52 c.insecureTls = builder.insecureTls 53 return c, nil 54 }