github.com/nextlinux/gosbom@v0.81.1-0.20230627115839-1ff50c281391/gosbom/pkg/cataloger/config.go (about) 1 package cataloger 2 3 import ( 4 "github.com/nextlinux/gosbom/gosbom/pkg/cataloger/golang" 5 "github.com/nextlinux/gosbom/gosbom/pkg/cataloger/java" 6 "github.com/nextlinux/gosbom/gosbom/pkg/cataloger/kernel" 7 ) 8 9 // TODO: these field naming vs helper function naming schemes are inconsistent. 10 11 type Config struct { 12 Search SearchConfig 13 Golang golang.GoCatalogerOpts 14 LinuxKernel kernel.LinuxCatalogerConfig 15 Catalogers []string 16 Parallelism int 17 } 18 19 func DefaultConfig() Config { 20 return Config{ 21 Search: DefaultSearchConfig(), 22 Parallelism: 1, 23 LinuxKernel: kernel.DefaultLinuxCatalogerConfig(), 24 } 25 } 26 27 func (c Config) Java() java.Config { 28 return java.Config{ 29 SearchUnindexedArchives: c.Search.IncludeUnindexedArchives, 30 SearchIndexedArchives: c.Search.IncludeIndexedArchives, 31 } 32 } 33 34 func (c Config) Go() golang.GoCatalogerOpts { 35 return c.Golang 36 } 37 38 func (c Config) Kernel() kernel.LinuxCatalogerConfig { 39 return c.LinuxKernel 40 }